こさろぐ

岡山のエンジニア雑記

TryHackMe Overpass writeup

Overpassのwriteupです。

tryhackme.com

 


Hack the machine and get the flag in user.txt

まずはnmap

22番ポートと80番ポートが空いているよと教えてくれた

 

ブラウザでアクセス

よく分からないのでgobusterでサーチするとadminといういかにも怪しいディレクトリ発見。

 

adminにアクセスするとログインページが出現

 

ただ、UsernameもPasswordも分からん。ということでソースを見ていると、いかにも作りこまれたJS達を発見

 

login.jsでログインフォームをポスト後に、ログイン成功した場合はCookieをセットするとある。ここが使えそう。

 

JSの通りにCookieを設定

 

/adminをリロードすると画面に変化が。秘密鍵とユーザJamesさんということが分かった。



 

鍵をコピーしてid_rsaを作成→SSHログイン。。。はできず。

秘密鍵のパスワードが必要な様子。

 

johnの力を借りてクラックしたところ、秘密鍵のパスワードを特定。


もう一回入ってみると、無事ログインでき、user.txtのフラグゲット

 


Escalate your privileges and get the flag in root.txt

sudo -lが使えなかったのでlinpeasで調べる

https://github.com/carlospolop/PEASS-ng/releases/latest/download/linpeas.sh 

ローカルにファイルを置いて、pythonでhttpサーバーを立ち上げてリモートからwgetでlinpeas.shを取得して実行。

 

妙なscriptを実行しているcron設定を発見

overpass.thmのbuildscript.shを実行している。

 

これは要するに、特権昇格のスクリプトを仕込んでローカルで待ち受ければいいということか。。

 

ローカルで叩かせたい偽物シェルを準備して80番ポートでhttpサーバーを起動

 

/etc/hostの設定も書き換える

 

と同時に1234ポートで待ち受ける

 

そうすると、1分周期でscriptを取りに来て実行してくれる。

その結果、リバースシェルが実行され、rootフラグ奪取成功!