Five86-1靶機滲透實戰

本文首發於“合天網安實驗室” 

靶機地址:http://www.vulnhub.com/entry/five86-1,417/

相關實驗:VulnHub滲透測試實戰靶場Node 1.0(點擊做實驗)

(Node 1.0 是一個難度爲中等的Boot2root/CTF挑戰,靶場環境最初由 HackTheBox 創建,實驗目的是獲取兩個flag)

技術點

  • opennetadmin v18.1.1RCEsearchsploitgithub搜索exp
  • 破解Linux中經過HASH加密的密碼crunch生成字典john和hashcat破解密碼hash-identifier查看HASH類型
  • SSH免密登陸公鑰複製爲authorized_keys
  • Linux查看當前用戶權限可讀文件和可執行命令查看當前用戶權限可讀文件find / -type f -user www-data可執行命令sudo -l

目標發現

nmap -sP 參數使用 ping 掃描局域網主機,目的地址爲 192.168.56.5

nmap -sS -A -v 192.168.56.5 看一下詳細的掃描結果 -sS 是半開放掃描,-A 是進行操作系統指紋和版本檢測,-v 輸出詳細情況

可以看到開放了 22、80、10000 三個端口,並且 80 端口存在 robots.txt 和路徑 /ona

漏洞發現與利用

訪問http://192.168.56.5是個空白頁面,然後去訪問 /ona,可以看到是 opennetadmin 的管理頁面,並且版本是 18.1.1

v18.1.1的opennetadmin是存在RCE漏洞的,在github找個exp打過去就可以,https://github.com/amriunix/ona-rce

 

或者是使用 searchsploit ,不過這裏有個坑點,就是要對這個bash腳本進行轉換格式,否則會報錯,使用dos2unix 47691.sh這個命令,而且這裏的shell不能轉成TTY

下面的問題就是如何進行提權了,經過一番測試,發現這裏無法執行的命令是沒有回顯的,並且不能執行cd命令,但是可以使用ls和cat命令

 

這裏肯定是有權限控制的,可以使用find / -type f -user www-data命令查看這個用戶可以讀取的文件,除了/proc 就是/var/www/html/reports/.htaccess和/var/log/ona.log

讀取var/www/html/reports/.htaccess可以找到AuthUserFile的路徑/var/www/.htpasswd

讀取這個文件如下,可以得到用戶名douglas和HASH的密碼$apr1$9fgG/hiM$BtsL9qpNHUlylaLxk81qY1,給的提示是隻包含aefhrt的十個字符

douglas:$apr1$9fgG/hiM$BtsL9qpNHUlylaLxk81qY1

# To make things slightly less painful (a standard dictionary will likely fail),
# use the following character set for this 10 character password: aefhrt 

先用hash-identifier看一下是哪個HASH,結果 hash -type : [+] MD5(APR)

然後使用crunch生成對應的字典,命令格式crunch <min-len> <max-len> [charset string] [options],這裏生成只包含aefhrt的10個字符,就可以使用如下命令crunch 10 10 aefhrt -o pass.txt,更多的介紹可以看Linux下的字典生成工具Crunch和crunch命令詳解

最後就要用大名鼎鼎的hashcat去破解這個HASH,命令格式hashcat [options]... hash|hashfile|hccapxfile [dictionary|mask|directory]...,這裏使用的命令爲hashcat -m 1600 -a 0 -o res hash.txt pass.txt

-m是HASH類別,-a是攻擊方式,-o是輸出結果,更多的參數可以參考Hashcat密碼破解攻略。這裏在kali裏面運行一直報錯,就轉移到wsl2裏面了,命令hashcat -m 1600 -a 0 -o res hash.txt pass.txt --force

最終密碼爲 fatherrrrr

或者這裏也可以使用john來進行破解john --wordlist=pass.txt hash.txt,但是速度可能有丶問題

使用ssh連接ssh [email protected]

這裏是個TTY,但還是存在權限控制,使用sudo -l看一下可以使用什麼命令,結果是(jen) NOPASSWD: /bin/cp,這裏就有點奇怪了,douglas可以用jen的身份運行cp命令

先去訪問一下home目錄,發現douglas和jen這兩個用戶,但是隻能用jen的cp命令,且沒有jen的密碼

值得注意的是,如果jen用戶下的/home/jen/.ssh/authorized_keys包含douglas的公鑰,那就可以用douglas的id_rsa文件登陸jen的ssh,也即免密登陸jen的ssh。這裏複製到/tmp目錄下是因爲jen沒有權限訪問douglas目錄下的文件

cp .ssh/id_rsa.pub /tmp/authorized_keys
chmod 777 /tmp/authorized_keys 
sudo -u jen /bin/cp /tmp/authorized_keys /home/jen/.ssh/

然後用ssh連接ssh -i id_rsa [email protected]

成功登陸jen,看到提示mail,還是先執行echo $(find / -type f -user jen) > 1.txt 看一下,有一個/var/mail/jen的文件可以讀取

或者這裏直接輸入mail的命令也可以看到

讀取一下,其內容如下

關鍵詞:change Moss's password、his password is now Fire!Fire!

接着ssh連接moss用戶ssh [email protected]

在當前目錄發現了一個隱藏目錄.games,訪問後發現一個root權限的二進制文件upyourgame

運行之後就發現自己神奇的變成root用戶辣

最後,flag在/root中,爲8f3b38dd95eccf600593da4522251746

 

彩蛋時刻,其實在拿到douglas的密碼之後就可以用虛擬機登陸,然後操作,這裏是用的moss的賬號密碼,也是同樣的效果

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章