TryHackMe Writeup：Blog

# 最初に

今日はTryHackMeの**Blog**をやっていきます！

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2152468/d8d6c752-6a41-f384-ec55-ef757abcdb59.png)


# Task1 Blog

なんとなく設問の順番が気になるので、並び替えます。。。
設問の前に記載している番号がもともとの順番になります！

## 4. What CMS was Billy using?

まずnmapを実施します
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2152468/7be89729-78c5-d9d8-34b9-52be2b993235.png)


タイトルがBlogなだけあって、ポート80番は開いていますね。
さっそくアクセスします

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2152468/585a43cc-b1f0-1ba6-d5fd-5d0624ce29bd.png)

ITをテーマにしたBlogですね
一番下にCMSが記載されています！
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2152468/374767b5-fce7-0402-ec3c-ab12c5bb6e3b.png)



## 5. What version of the above CMS was being used?

ページのソースを見てみると、バージョンの記載がありました！
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2152468/34f8e5dd-5466-82f2-6c6b-d614482ce2f5.png)

「Wordpress 5.0 exploit」で検索してみると画像アップロードに関する脆弱性があるみたいですね～

https://blog.trendmicro.co.jp/archives/20487


## 3. Where was user.txt found?

ポート139と445も開いていたので、SMBも利用されているみたいです
`smbclient -L`で共有されているアカウントを探します
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2152468/34954bfb-458b-2977-3905-9a902382c391.png)
（パスワードは何も入力していないです）

`BillySMB`が使えそうと思ってアクセスしてみると、パスワードなしで入れてしまいました！
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2152468/02db85fc-09c5-9395-86bd-862695516cff.png)


3つの画像・動画がありましたので、すべてダウンロードしておきます

JPEGがあったので、stegseekしてみたところ、テキストが埋め込まれていました
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2152468/849368c2-b171-ac31-7140-e423440d949c.png)

内容は以下です（意味深（意味不明）ですね。。。）
```
You've found yourself in a rabbit hole, friend.
```

JPEGとPNGをBINWALKしてみたところ、PNGの方は何かありそうです
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2152468/45bf6e9f-fc31-477d-4562-705afec6df07.png)

`zlib-flate`でZlibファイルを解凍してみましたが、何も記載されていませんでした。。。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2152468/64202fb6-047d-0efd-2d47-aec3426813e9.png)

PNGは見た目がQRコードだったので、以下サイトでURLにもどしてました

https://tool-taro.com/qr_code_decode/

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2152468/9c307709-f7cd-614f-ee26-5f3031465661.png)

URLの先は「Billy Joel - We Didn't Start the Fire (Official HD Video)」のYoutubeでした（作者が好きなのか？！）


ーーーーーーーーーー
ここで完全に行き詰ってしまったので、Writeupを見てみる

https://yawaraka-sec.com/blog-thm/

**wpscan**だと、、、、（初心者）


さっそく使ってみるーー

まずはユーザーの列挙から！

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2152468/d94cd4e8-dcc9-5578-a051-d8f02b5d524b.png)

`bjoel`, `kwheel`のアカウントがあるみたいです
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2152468/517f3c9d-a300-4f49-373f-668a0547e26a.png)


この二つのアカウントについて、パスワードクラック（ブルートフォース）したところ、kwheelは取得できました
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2152468/05d57184-d059-4cd6-1266-2f50eff07de5.png)


![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2152468/ffede342-c654-a173-f0f7-d6c519ee823a.png)

```bash
[SUCCESS] - kwheel / cutiepie1 
```

この情報で、CVE-2019-8943の脆弱性を利用して、エクスプロイトしていきます

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2152468/a1acb3f3-cb88-832b-1834-e6d6b920eb49.png)


https://blog.trendmicro.co.jp/archives/20487



![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2152468/441b6ff1-226c-4e3b-3cc5-152b0d321271.png)


shellを起動します
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2152468/2290f777-67f8-a467-7b75-e762e85ec37f.png)


user.txtを検索したらヒットしたので、開いてみるとあからさまに「違うよ」という文言が、、、、
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2152468/1b8f1c56-c35d-c2f2-7094-9e9720ff4a2b.png)


仕方がないので、地道に探していくと、いい感じの文字数のフォルダがありました！
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2152468/20e4d77c-6481-c1da-9525-f8d51c254c15.png)




## 2. user.txt

/media/usbが所有者しか開くことができないので、`sudo -l`とSUIDビットを調べてみます
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2152468/4db7838e-4ae0-0d4e-2fb8-cf160d6b2a4c.png)

`/usr/sbin/checker`が見かけないですね～


適当に実行してみたところ、`Not an Admin`とでるだけ。。。。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2152468/a5e813c3-b4a8-a0ff-b6f4-3c523dbc71b9.png)


catで中身を調べてみますが、そのままで読めない。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2152468/7095d6bf-e591-cbeb-efef-e443acd92816.png)


ローカルにcheckerをダウンロードして、Ghidraでデコンパイルしてみます
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2152468/543ce8b7-a2f9-d0b0-5daf-9a76b497fa4b.png)


```bash
undefined8 main(void)

{
  char *pcVar1;
  
  pcVar1 = getenv("admin");
  if (pcVar1 == (char *)0x0) {
    puts("Not an Admin");
  }
  else {
    setuid(0);
    system("/bin/bash");
  }
  return 0;
}
```

このコードは環境変数`admin`の値がNULLなら、`Not a Admin`と出力して、NULLでなければ、Rootでシェルを開くみたいです

では、さっそく環境変数`admin`に適当な値をセットしてみます
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2152468/247d0902-9da8-23f7-3eb9-0efafc0dd05e.png)

その後に、`/usr/sbin/checker`を実行したら、Rootでシェルが起動しました！
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2152468/0dbe8c19-a5f8-bcea-cbb5-e7c5230786b9.png)


あとは、`/media/usb/user.txt`を開くだけです

## 1. root.txt


一つ前で、Root権限でシェルを実行できたので、そのまま`/root/root/txt`をひらけばフラグが取れます！


# 最後に


今回学んだことは以下2つです
- Wordpressにはwpscan
- 実行ファイルはGhidraでデコンパイル


# メモ



## `wpscan --url http://10.10.84.92  --enumerate u`の出力

```bash
[i] Updating the Database ...
[i] Update completed.

[+] URL: http://10.10.84.92/ [10.10.84.92]
[+] Started: Wed Oct 16 22:06:27 2024

Interesting Finding(s):

[+] Headers
 | Interesting Entry: Server: Apache/2.4.29 (Ubuntu)
 | Found By: Headers (Passive Detection)
 | Confidence: 100%

[+] robots.txt found: http://10.10.84.92/robots.txt
 | Interesting Entries:
 |  - /wp-admin/
 |  - /wp-admin/admin-ajax.php
 | Found By: Robots Txt (Aggressive Detection)
 | Confidence: 100%

[+] XML-RPC seems to be enabled: http://10.10.84.92/xmlrpc.php
 | Found By: Direct Access (Aggressive Detection)
 | Confidence: 100%
 | References:
 |  - http://codex.wordpress.org/XML-RPC_Pingback_API
 |  - https://www.rapid7.com/db/modules/auxiliary/scanner/http/wordpress_ghost_scanner/
 |  - https://www.rapid7.com/db/modules/auxiliary/dos/http/wordpress_xmlrpc_dos/
 |  - https://www.rapid7.com/db/modules/auxiliary/scanner/http/wordpress_xmlrpc_login/
 |  - https://www.rapid7.com/db/modules/auxiliary/scanner/http/wordpress_pingback_access/

[+] WordPress readme found: http://10.10.84.92/readme.html
 | Found By: Direct Access (Aggressive Detection)
 | Confidence: 100%

[+] Upload directory has listing enabled: http://10.10.84.92/wp-content/uploads/
 | Found By: Direct Access (Aggressive Detection)
 | Confidence: 100%

[+] The external WP-Cron seems to be enabled: http://10.10.84.92/wp-cron.php
 | Found By: Direct Access (Aggressive Detection)
 | Confidence: 60%
 | References:
 |  - https://www.iplocation.net/defend-wordpress-from-ddos
 |  - https://github.com/wpscanteam/wpscan/issues/1299

[+] WordPress version 5.0 identified (Insecure, released on 2018-12-06).
 | Found By: Emoji Settings (Passive Detection)
 |  - http://10.10.84.92/, Match: 'wp-includes\/js\/wp-emoji-release.min.js?ver=5.0'
 | Confirmed By: Meta Generator (Passive Detection)
 |  - http://10.10.84.92/, Match: 'WordPress 5.0'

[i] The main theme could not be detected.

[+] Enumerating Users (via Passive and Aggressive Methods)
 Brute Forcing Author IDs - Time: 00:00:02 <=====================================> (10 / 10) 100.00% Time: 00:00:02

[i] User(s) Identified:

[+] bjoel
 | Found By: Wp Json Api (Aggressive Detection)
 |  - http://10.10.84.92/wp-json/wp/v2/users/?per_page=100&page=1
 | Confirmed By:
 |  Author Id Brute Forcing - Author Pattern (Aggressive Detection)
 |  Login Error Messages (Aggressive Detection)

[+] kwheel
 | Found By: Wp Json Api (Aggressive Detection)
 |  - http://10.10.84.92/wp-json/wp/v2/users/?per_page=100&page=1
 | Confirmed By:
 |  Author Id Brute Forcing - Author Pattern (Aggressive Detection)
 |  Login Error Messages (Aggressive Detection)

[+] Karen Wheeler
 | Found By: Rss Generator (Aggressive Detection)

[+] Billy Joel
 | Found By: Rss Generator (Aggressive Detection)

[!] No WPScan API Token given, as a result vulnerability data has not been output.
[!] You can get a free API token with 25 daily requests by registering at https://wpscan.com/register

[+] Finished: Wed Oct 16 22:06:49 2024
[+] Requests Done: 75
[+] Cached Requests: 5
[+] Data Sent: 14.343 KB
[+] Data Received: 21.861 MB
[+] Memory used: 163.02 MB
[+] Elapsed time: 00:00:21


```