Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Address Space Layout Randomization(ASLR)
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Satoru Takeuchi
PRO
January 08, 2022
Technology
1
310
Address Space Layout Randomization(ASLR)
以下動画のテキストです
https://youtu.be/iCCNEoCKdHE
Satoru Takeuchi
PRO
January 08, 2022
Tweet
Share
More Decks by Satoru Takeuchi
See All by Satoru Takeuchi
ファイルシステムの不整合
sat
PRO
2
97
書籍執筆での生成AIの活用
sat
PRO
1
300
ChatGPTに従って体調管理2026
sat
PRO
0
150
eBPF
sat
PRO
1
120
waruiBPF
sat
PRO
0
110
eBPFとwaruiBPF
sat
PRO
5
3.9k
Pythonのコードの気になる行でスタックトレースを出す
sat
PRO
1
100
ソースコードを読むときの思考プロセスの例 ~markdownのレンダリング方法を知りたかった2 markdownパッケージ~
sat
PRO
0
200
様々なファイルシステム
sat
PRO
0
350
Other Decks in Technology
See All in Technology
Azure Copilot Migration Agent / #jazug
koudaiii
1
160
衛星画像即時マッピングサービスの実現に向けて
lehupa
1
250
データの整合性を保ちたいだけなんだ
shoheimitani
8
3.2k
ECS障害を例に学ぶ、インシデント対応に備えたAIエージェントの育て方 / How to develop AI agents for incident response with ECS outage
iselegant
5
760
量子クラウドサービスの裏側 〜Deep Dive into OQTOPUS〜
oqtopus
0
330
生成AIを活用した音声文字起こしシステムの2つの構築パターンについて
miu_crescent
PRO
3
250
生成AIと余白 〜開発スピードが向上した今、何に向き合う?〜
kakehashi
PRO
1
240
なぜ令和の今ゲームボーイを触るのか
kimkim0106
0
110
モダンUIでフルサーバーレスなAIエージェントをAmplifyとCDKでサクッとデプロイしよう
minorun365
5
270
登壇駆動学習のすすめ — CfPのネタの見つけ方と書くときに意識していること
bicstone
3
190
SchooでVue.js/Nuxtを技術選定している理由
yamanoku
3
2k
「データの価値を、みんなの武器に。」Data Enablementの価値とツラみ
ryoskdara_
1
110
Featured
See All Featured
Mozcon NYC 2025: Stop Losing SEO Traffic
samtorres
0
150
Paper Plane
katiecoart
PRO
0
47k
How to build an LLM SEO readiness audit: a practical framework
nmsamuel
1
650
The Power of CSS Pseudo Elements
geoffreycrofte
80
6.2k
How STYLIGHT went responsive
nonsquared
100
6k
Unsuck your backbone
ammeep
671
58k
Public Speaking Without Barfing On Your Shoes - THAT 2023
reverentgeek
1
320
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
55
3.3k
Building a A Zero-Code AI SEO Workflow
portentint
PRO
0
330
Claude Code どこまでも/ Claude Code Everywhere
nwiizo
61
53k
sira's awesome portfolio website redesign presentation
elsirapls
0
160
YesSQL, Process and Tooling at Scale
rocio
174
15k
Transcript
Address Space Location Randomization (ASLR) Jan. 8th, 2022 Satoru Takeuchi
twitter: satoru_takeuchi, EnSatoru 1
前回までのあらすじ • Executable and Linking Format(ELF)というフォーマット • 実行ファイルのコードやデータはメモリ上にマップされる • どこのオフセットのデータをどこにマップするるか実行ファイルに書いてる
2 test(実行ファイル) メモリ コード データ コード データ マップ
そうでないこともある • 例: Ubuntu20.04の/bin/sleepコマンド • 演習 ◦ sleepコマンドのreadelf -Sを見てみる ◦
“sleep infinity”実行中のメモリマップを /proc/<pid>/mapsで見てみる 3
そうでないこともある • 例: Ubuntu20.04の/bin/sleepコマンド • 演習 ◦ sleepコマンドのreadelf -Sを見てみる ◦
“sleep infinity”実行中のメモリマップを /proc/<pid>/mapsで見てみる • 違い ◦ 実行ファイルのセクションに書いてあるマップ先アドレスと実際の値が違う 4
演習 • “sleep infinity”をもう一度実行した後にメモリマップを確認 5
演習 • “sleep infinity”をもう一度実行した後にメモリマップを確認 • 結果 ◦ さっきとアドレスが違う! 6
理由 • sleepコマンドは実行するたびにセクションのマップ先アドレスがランダムに変わる ◦ これがAddress Space Location Randomization(ASLR) ◦ ASLRが機能するように実行ファイルが
Position Independent Executable(PIE)になっている • 目的 ◦ 特定アドレスのコードを実行するようなセキュリティ攻撃を避ける • どんなプログラムがPIE? ◦ Ubuntuだと昔はsshなどの一部重要プログラムだけだった ◦ 17.04以降はすべて(例外があるかも?よく知らない) 7