ISF2018 Fujian WriteUp

這次本來是帶著划水的心情來參賽的,但最後這個名次還算是給團隊一個驚喜。╰(°▽°)╯

比賽中把分賽賽題做完了,然後感覺腦子要炸了,其他賽題也無暇打理了。

賽題

比賽方在賽前會給每隻隊伍一個含有加密壓縮檔的U盤,壓縮檔大小1.84 GB。比賽開始后公佈解壓密碼后開始答題,解壓后共有9個.pcapng文件,答題界面出現題目。下面是所有題目信息,但在比賽時衹會顯示題目簡介和第一題,需要在答對或五次錯誤或申請跳過(之後兩種情況,每題扣10分)后顯示下一題。

賽題包:Google Drive

黑客發現了公司網站服務器上的漏洞,通過利用漏洞成功獲取了服務器權限,對内網進行了掃描和攻擊。

  1. 網站後臺密碼是?
  2. 攻擊者的 IP 是?
  3. 網站後臺登陸地址是?(http:// + IP + 路徑)
  4. 後臺寫入的 WebShell 内容是?
  5. 網站數據庫密碼是?
  6. 黑客上傳shell2.php后的第一個文件是?
  7. 黑客對内網掃描的IP範圍是?(IP1 + IP2)
  8. 黑客下載的數據庫備份文件名是?
  9. 黑客上床的圖馬密碼是?
  10. 黑客修改了哪個文件來配合木馬文件?(絕對路徑)
  11. FTP服務器的端口是?
  12. 黑客使用 FTP 上傳的文件名?
  13. 黑客登陸 FTP 的密碼是?
  14. 黑客使用 FTP 上傳的文件,其内容是?

解題

網站後臺密碼是?

首先打開data-sence2_00001_20180204175222.pcapng。看到“網站後臺密碼”關鍵詞,下意識先在過濾框中輸入http查看 HTTP 傳輸數據,逛了一圈發現攻擊方先是在掃描目錄,最後嘗試在/ad_admin.php?mod=login進行爆破。

接著打開 data-sence2_00002_20180204175222.pcapng,過濾僅查看 HTTP 數據,在末尾幾處發現對 /ad_admin.php?mod=login 進行登陸處理后,依次 GET ad_admin.php?mod=homepage&loginprompt=ad_admin.php?mod=mainset,説明登陸成功。此時在Cookie中留有 dpadmin_password 字段,將其值放入CMD5中可得此題答案:aabbcc

攻擊者的 IP 是?

分析上題中的兩個數據包,在過濾后僅查看 HTTP 請求后,可以很明顯的發現攻擊方IP:202.1.1.2,智商檢測題。

網站後臺登陸地址是?(http:// + IP + 路徑)

分析第一題后應該能知道,網站的後臺登陸地址是:http://192.168.1.203/ad_admin.php,也是智商檢測題。

後臺寫入的 WebShell 内容是?

打開第三個數據包 data-sence2_00003_20180204175222.pcapng,同樣也是過濾僅查看 HTTP
請求,同時將 Source 列按順序排列后,從該列的 202.1.1.2 開始,第二行裏包含著一段 base64,解碼后可以知道WebShell的内容是:<?php eval($_POST['cmd']);?>(記得去掉反斜杠)。

網站數據庫密碼是?

還是在第三個數據包中,攻擊方在將 WebShell 文件 shell2.php 上傳后,進行了一系列的 POST 操作,在返回的 HTML 文件中就可以找到攻擊方請求獲取數據庫的所有信息,包括數據庫密碼:newnrtpassword

黑客上傳shell2.php后的第一個文件是?

這題問的是文件,就嘗試在第三個和第四個包中直接導出 HTTP 對象后,沒有發現有價值的綫索。期間一直懷疑自己的思路有問題,但打開第五個數據包后,找到了答案:scan.php = =

黑客對内網掃描的IP範圍是?(IP1 + IP2)

依著上一題的思路,在點選導出的 scan.php 中,看到了這一題的答案:192.168.2.1 - 192.168.2.150

黑客下載的數據庫備份文件名是?

這題同樣問的是文件,也使用直接導出 HTTP 對象的方法查找,但第五個包已經沒有符合條件的文件了,遂打開第六個數據包,對 Hostname 進行分類后,找到了相像的文件 bak_2018-01-29-17-47-52.zip,輸入答題框中顯示正確。

黑客上床的圖馬密碼是?

接下來打開第七個數據包,又是過濾僅查看 HTTP 請求。在第一行中就給出了答案。

其實是 shell2.php POST 了一段數據,將其中 z1 字段的值放入HEX編輯器中,顯示了一句話代碼,其中的 picto 就是本題答案。

黑客修改了哪個文件來配合木馬文件?(絕對路徑)

繼續分析第七個數據包,查看了第九題下方的幾個請求和返回值,看到其中有一個貌似是 ls 了一個目錄,隨後往下翻閲並和後續 ls 后的結果進行對比,知道了黑客修改的文件是 obj_edit.php

FTP服務器的端口是?

在第七個數據包后面發現了新的 tunnel.php,猜測可能是用來進行代理並和端口有關的木馬文件,在導出 HTTP 對象的時候找到一個 12Kb 的文件,點擊定位后同樣將 z1 字段的值放入HEX編輯器中,再將轉換后的值貼入 Sublime Text 中。分析代碼,看見了如下語句,大概說的就是把連接成功后的端口放在 Header 的 X-PORT 中。

隨後在第八個數據包中查找有關 tunnel.php 的有關請求,最後發現了第395467行的請求,在 Header 中可見其 X-PORT 為1433,就爲該題答案。

黑客使用 FTP 上傳的文件名?

按上一題的 FTP 端口號,在設置中將 FTP 端口號改爲 1433,隨後再過濾僅查看 FTP 請求就能找到上傳了一個名爲 readmd.rtf 文件,為正確答案。

黑客登陸 FTP 的密碼是?

在上一題的上方,就能找到答案:[email protected]#

黑客使用 FTP 上傳的文件,其内容是?

過濾僅查看 ftp-data 請求,就能查看 readmd.rtf 文件的内容了:CVE-2017-8570

總結

本次比賽的數據賽賽題是連貫的,攻擊者的思路從此可以較爲完整地分析,也讓我學會了不少,這也是這次想寫 WriteUp 的原因之一吧。在做題過程中,有些題目并不是一開始就很順利,這次寫出來也讓我重新整理了下解題思路和解題方式。

畢竟不是專業學習網安的,在分析方面如有欠缺,也請多多指教。

0%