iT邦幫忙

0

Hack The Box - SwagShop writeups.

Hack The Box - SwagShop writeups.


資安新手,
把自己的解題過程記錄下來避免失憶症發作 lol
有錯誤的地方請大佬用力的噴我,想學到更多。


本次的SwagShop難度分為簡單
很適合新手入門

正文開始!

先來到題目的頁面:

https://ithelp.ithome.com.tw/upload/images/20190926/20121620x1GsXl1cZw.png

好的,Ip 是 10.10.10.140。


基本的nmap先掃:

nmap -sC -sV -o swagshop1.txt 10.10.10.140
https://ithelp.ithome.com.tw/upload/images/20190926/20121620rPEtD9bnol.png

可以發現目前伺服器已知開放的服務有SSH(port 22) 跟 一般的網頁服務(port 80)

1. SSH(port 22) :

簡單的Google一下發現似乎可以列舉用戶跟一些CVE漏洞可以利用
但本人新手想先朝網頁服務部份去嘗試所以先放一邊...
有興趣的也可以從這邊試試看

Google結果:
https://ithelp.ithome.com.tw/upload/images/20190926/20121620mTMagQSqpI.png
CVE列表:
https://ithelp.ithome.com.tw/upload/images/20190926/20121620LDy8HaYuIN.png

2. 網頁服務(port 80):

OK我們進到主頁看一下吧
https://ithelp.ithome.com.tw/upload/images/20190926/20121620xSHZUMCCWu.png

Um...我左看右看
嘗試簡單的SQL注入也沒什麼效果 (本人Web沒打很多,SQL inject 技術也很菜XD)

那還是老樣子吧,先對網站進行把目錄爆破,看有甚麼有趣的資料可以看
先測試看看是不是使用php

直接加個/index.php
https://ithelp.ithome.com.tw/upload/images/20190926/20121620aFwoltOY7A.png

嗯?可以欸,這就是新手運吧xD
那在這裡我用的是gobuster,其他還有很多目錄爆破工具大家也可以自行試試看
字典檔用的是Kali內建的directory-list-2.3-medium.txt
我們可以在*/usr/share/wordlists/dirbuster*下找到他。

gobuster dir -u http://10.10.10.140 -w /usr/share/wordlists/dirbuster/directory-list-2.3-medium.txt -x php
https://ithelp.ithome.com.tw/upload/images/20190926/20121620gr7wmzNZ65.png

有發現mysql的管理員帳號密碼,
也許之後有用:

http://10.10.10.140/app/etc/local.xml
https://ithelp.ithome.com.tw/upload/images/20190926/20121620rnXBkSFEqR.png

結果我在一個意外插曲發現了後台的管理員介面....
為甚麼說是意外呢?因為我到之後發現那其實是別人在玩機器的時候留下的log,
我剛好狂翻目錄翻到的,因此我現在回來寫的時候也忘記在哪找到的了.....
但我能提供log裡的內容,在滲透過程中養成隨手紀錄的好習慣!

http://10.10.10.140/index.php/admin/cms_wysiwyg_images/thumbnail/file/cGhwLnBuZw--/key/b355a9e0cd018d3f7f03607141518419

發現了嗎?
http://10.10.10.140/index.php/admin !!
https://ithelp.ithome.com.tw/upload/images/20190926/20121620qXzKXE8JNU.png
此時此刻我模擬如果我沒有意外發現此log的話,我會
Google Magento Admin Page:
https://docs.magento.com/m1/ce/user_guide/store-operations/admin-login.html
痾..其實這裡也寫得很清楚嘛/images/emoticon/emoticon02.gif

Anyway,到目前為止沒有發現具體的Magento版本(在嘗試多種check magento的version方法後)
鑒於Magento的版本並沒有很多的樣子,因此直接上網找有沒有可用的exploit code
我自己找到的是這個:
https://www.exploit-db.com/exploits/37977
簡單的把Url跟port修改後就可以了
之後想研究這個exploit code怎麼執行的,研究好看會不會發篇文吧!

exploit 執行:python exploit_magento.py
(下面那行url是我自己加的)
https://ithelp.ithome.com.tw/upload/images/20190926/20121620E97bPlim3W.png

成功之後我們利用Creds-forme:forme來登入稍早的admin panel吧!
https://ithelp.ithome.com.tw/upload/images/20190926/201216202o1PhQERjg.png
我們可以在底下看到此Magento版本是Magento ver. 1.9.0.0
https://ithelp.ithome.com.tw/upload/images/20190926/20121620mpobxNja3f.png

好的,我們進到管理後台要幹嘛呢?

當然是拿到user shell!!

在經過一番折騰後,
發現個有趣的方法,
叫做FrogHopper !
是Foregenix公司發現的一些攻擊者使用的手段
雖然整體步驟稍微多了一點,
但是很好玩。

FrogHopper原文:
建議整篇好好地看過,很有趣!
https://www.foregenix.com/blog/anatomy-of-a-magento-attack-froghopper

簡單的來說,Magento為了防範惡意檔案上傳
因此限制只有JPG、PNG檔案可以上傳
但是他們不會去過濾檔案內容
也就是說.......

你可以藏馬在圖片裡

也就是經典的圖片木馬

在這裡奉上製作方法:
因為之前有玩過一點Pwn跟Reversing,所以喜歡用第二種方法
想要實驗WinHex做編輯檔案的動作(就是俗稱的裝逼)
個人覺得Windows cmd直接製作比較方便

圖片木馬的製作:https://blog.csdn.net/whatday/article/details/54731043


由於執行FrogHopper過程很多網友失敗的樣子
因此在此詳細的把我的過程寫下來

  • FrogHopper Step 1 :
    上方列表的System -> Configuration -> 下面有個Developer ->
    Template Settings -> Allow Symlinks -> Yes -> Save Config
    https://ithelp.ithome.com.tw/upload/images/20190926/20121620tF8M99NXRP.png

  • FrogHopper Step 2 :
    上方列表的Catalog -> Manage Categories -> Add Root Category ->
    Name隨便填, Is Actice用Yes,上傳你的圖片木馬 (別忘拉這個最重要xD)
    https://ithelp.ithome.com.tw/upload/images/20190926/20121620iH8DzOf05v.png

  • FrogHopper Step 3 :
    上方列表的NewsLetter -> NewsLetter Template -> Add New Template ->
    上面欄位隨便填,重點是下面的內容搞上這句

{{block type="core/template" template="../../../../../../media/catalog/category/shelltest.jpg"}}

沒錯,這人給我把目錄跳到category裡,加上圖片藏的php檔案來拿到
我們的User Shell。

  • FrogHopper Step 4 :
    開啟我們的Listening port ,在這裡我設成9001。

nc -lvnp 9001

  • FrogHopper Step 5 :
    到我們新增的Template ,直接Preview他!
    https://ithelp.ithome.com.tw/upload/images/20190926/201216201DQjgQHl4l.png

.

Show me the MAGIC :) !

https://ithelp.ithome.com.tw/upload/images/20190926/20121620dKX3xvirVs.png


上面就是我拿User Shell的步驟,很繁瑣但很好玩。

拿到User Shell 後要幹嘛?

當然是拿Root Shell阿!

那一樣老樣子,先把此主機的一些資訊都列舉出來
我直接用LinEnum的code

https://github.com/rebootuser/LinEnum/blob/master/LinEnum.sh

有多直接?我直接複製貼上
不用再建一個.sh檔案,傻人有傻福/images/emoticon/emoticon01.gif
發現了很有用的資訊:
https://ithelp.ithome.com.tw/upload/images/20190926/20121620uypBY0HCKt.png
我們再用sudo -l來確認一下,結果一樣
https://ithelp.ithome.com.tw/upload/images/20190926/20121620WeoWMjpmFd.png
在這裡我這菜雞卡了一下,後來經外國網友點醒後發現我會錯sudo -l的意思了
總之

User www-data may run the following commands on swagshop:
(root) NOPASSWD: /usr/bin/vi /var/www/html/*

這條意思所列出來的是:

在一般使用者下,我可以經由sudo,

透過程式/usr/bin/vi,在/var/www/html/ 目錄下,執行特權(root)

還不需要密碼!

這個概念很重要,務必釐清。
那麼在知道這個概念後,要拿到root就是輕而易舉的事啦!

sudo vi /var/www/html/ -c '!sh'

Show me the MAGIC :) !

https://ithelp.ithome.com.tw/upload/images/20190926/20121620Rp3UX4Dc8k.png

接下來,去SwagShop拿貨囉!(紅色部分為Flag)
https://ithelp.ithome.com.tw/upload/images/20190926/201216207R5ojunr8N.png


心得:
此題整體下來其實非常簡單,但還是花了我兩天的時間
這是我在Hack The Box第一台玩的機器
之前也沒有滲透測試的經驗
所以還是有學到東西
如果有什麼問題也可以在下面留言~~
謝謝大家耐心地觀看!
下次見,881。


更多文章:https://ithelp.ithome.com.tw/users/20121620/articles


尚未有邦友留言

立即登入留言