首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> C語言 >> VC >> VC 教學

PQwak 破解原理分析:攔截 WinSock 通訊還原網芳密碼掃描流程

     編輯:VC 教學

研究背景

PQwak 可秒破 Win95/98/ME 共享密碼。本文利用「替換 wsock32.dll」技術攔截其 WinSock 通訊,還原掃描協定細節。僅供學術研究,嚴禁惡意攻擊。

工具準備

  1. VC 開發環境。
  2. 《攔截 WinSocket》一文與攔截 DLL 原始碼。
  3. 防火牆 (如 Xfilter) 確認攻擊 IP/埠。
  4. UltraEdit 檢視二進位封包。
  5. PQwak.exe 掃描程式。

分析步驟

  1. 開啟防火牆執行 PQwak,確認使用 NetBIOS 通訊 (埠 139)。
  2. 編譯攔截 DLL 替換目標機 wsock32.dll,再次掃描。
  3. 分析 c:\popsocket.txt 記錄的完整通訊內容。

關鍵協定細節

第一次握手 (72 bytes)

發送: 81 00 00 44 ... EKFIDBDCDDCACACACACACACACACACACA 00 (x2)
     ^  ^  ^  ^         ^ 目標機名 (大寫編碼: 0-9→DA-DJ, A-O→EB-EP, P-Z→FA-FK)
     |  |  |  └ 長度
     |  |  └ 命令
     |  └ 旗標
     └ 版本
回覆: 成功 82 00 00 00 / 失敗 83 00 00 01

第二次握手

固定封包格式,回覆變動但不影響連線。

密碼掃描封包

第 3 byte = 後續資料長度
43 = 密碼長度, 45 = 密碼+資源名長度, 47 = 密碼+資源名
範例: "1\\hjm\c\ a:" → 前綴 7 bytes
正確密碼回覆封包尾部含 "A:"

若測得回覆含 "A:",遞增第 3/43/45 byte 繼續測試下一字元。

完整原始碼請下載附件 (12KB)。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved