浏览器攻击框架BeEF Part 6:攻击用户与攻击浏览器

浏览器攻击框架BeEF Part 6:攻击用户与攻击浏览器

黑客平台hacker2020-11-02 8:00:002112A+A-

  这一章介绍如何使用BeEF来攻击用户和浏览器,攻击用户和浏览器的效果相对于上一章来说比较简单,效果也直接有效。

  查看之前的五篇文章:

  浏览器攻击框架BeEF Part 1

  浏览器攻击框架BeEF Part 2:初始化控制

  浏览器攻击框架BeEF Part 3:持续控制

  浏览器攻击框架BeEF Part 4:绕过同源策略与浏览器代理

  浏览器攻击框架BeEF Part 5:攻击Web应用与攻击网络

  攻击用户可分为三部分:内容劫持、捕获用户输入、社会工程学。

  内容劫持是指替换被勾连的浏览器中当前页面内容,比如替换被勾连的浏览器中当前页面中所有的元素的href。

  BeEF自带了很多内容劫持相关的攻击模块:

  上图中Get xxx系列的攻击模块就是简单获取xxx,比如Get Cookie 就是获取勾连浏览器当前页面的Cookie,Get Form Values 就是获取From表单中值。Replace HREFs系列就是替换所有元素中的HREF属性,比如常用的Replace HREFs是循环替换所有元素的HREF属性,Replace HREFs(Click Events)和Replace HREFs类似,唯一的区别是只有onClick 事件发生时才触发修改HREF属性。Replace HREFs(HTTPs)是把所有指向https站点的链接改写为http协议。Redirect Browser模块是把被勾连的浏览器重定向到指定的页面。Replace Content(Deface)是直接修改页面的内容。这些功能可以窃取一些内容,也可以配合钓鱼网站来攻击用户。

  捕获用户的输入也就是我们常说的键盘记录器,BeEF通过使用焦点事件,键盘事件,鼠标和指针事件这四个事件来实时监控着用户的操作。其中焦点事件是指用户的焦点是否还在被勾连的页面,下面笔者在一个被勾连的浏览器中分别触发四个事件:

  

  然后来看看BeEF中实时的返回:

  BeEF有一个目录,里面是专门用于社会工程学的攻击模块:

  这里笔者挑Pretty Theft(完美盗窃)来演示, 演示环境是上一章演示攻击Web应用时用到的metasploitable2 dvwa + BeEF + kali。

  名称

  角色

  ip

  Ubuntu

  BeEF服务器 / metasploit

  外网

  kali

  攻击者

  外网

  Windows7 / 浏览器A

  受害者

  内网 10.0.2.4

  metasploitable2

  内网有漏洞的主机

  内网 10.0.2.5

  Pretty Theft 攻击模块会在被勾连浏览器上弹出一个弹框,然后通过欺骗性的语句来使用户输入帐号和密码。当网站有http-only这个响应首部,无法窃取cookie时,可以使用完美盗窃这个模块来窃取用户的帐号和密码。

  使用Pretty Theft前,需要做一些参数的设置:

  点击Execute运行, 被勾连的浏览器会有一个提示性的弹框弹出:

  如果用户输入帐号和密码:

  那么在BeEF的管理UI上就能看到了帐号和密码:

  

  读者可能注意到了,Pretty Theft默认下弹出的诱惑性弹框中所使用的语言是英文。在国内效果肯定要打折扣了。所以要修改一下,在beef/modules/social_engineering/pretty_theft/command.js中修改:

  修改后的效果如下:

  样貌有点不太好看,主要是因为logo太大了,如果读者懂得js和html,那么你也可以在beef/modules/social_engineering/pretty_theft/command.js中自己定制一个好看一些的。这样可信度就会提高很多了。

  除了pretty_theft外还有一些社会工程学的攻击模块,这些就留给读者自行测试了。

  攻击浏览器的技术,笔者只介绍一个:联合metasploit来攻击浏览器。演示的环境与上面演示pretty_theft是一样的。

  要使用Metasploit + BeEF之前,需要做一下设置。

  首先要在BeEF中修改beef/extensions/metasploit/config.yaml配置文件:

  

  上图中的port, user, pass 需要与下面在msf中启动MSGRPC接口中的port, user, pass一样。而图中最下面的”{os: ‘custom’, path:’/opt/metasploit-framework/’}”要根据实际情况来改,这里写的是msf的路径,这里笔者是在Ubuntu中安装了msf,所以路径是/opt/metasploit-framework/, 如果读者是使用kali来测试,那么默认已经有写路径了。

  接着修改beef/config.yaml, 设置开启metasploit模块:

  设置好BeEF后,现在来开启Metasploit的MSGRPC接口, 先在一个空白文件msf_beef.txt中写入:

  ServerPort, User, Pass 需要与BeEF中设置的一样。 接着启动msf服务器, 因为笔者是在远程的服务器上启动msf的,而且msf必需保持运行状态,所以笔者使用screen命令来启动msf。这样即使我关闭了ssh连接,也可以保证msf保持运行状态:

  启动成功后,会有如下图的输出:

  接着按住Ctrl键 + a + d, 暂时离开”msf” session窗口, 回到原本的窗口。 这样即使退出了ssh连接, “msf”session还是会在继续运行。

  启动了msfconsole之后, 就可以启动BeEF了。这个顺序不能反了,需要先启动msfconsole,才能启动BeEF。

  现在环境设置好了。 说一下BeEF + msf攻击原理, 原本如果只是使用metasploit 来攻击浏览器(这里是IE8),那么metasploit会生成一个URL,如果IE访问了这个URL,那么就会中招。

  现在有BeEF, BeEF可以把metasploit生成的URL嵌入到被勾连浏览器的一个iframe中。通过msgrpc接口,可以直接在BeEF的管理UI中设置metasploit的参数并直接使用msf的exploit模块。

  这里笔者挑了ms11_003_ie_css_import来做测试 , 在BeEF的metaspliot 目录下可以找到。 设置好参数之后点击Execute就可以运行了。

  回到Ubuntu服务器, 查看msfconsole控制台:

  可以看到回连了meterpreter。在测试的时候,要确保网络的速度, 笔者因为网速问题,测了好几次才成功。

  这一章就到这里了,这个系列也完结了。

  *本文原创作者:NT00

(责任编辑:网络)

点击这里复制本文地址 以上内容由黑资讯整理呈现,请务必在转载分享时注明本文地址!如对内容有疑问,请联系我们,谢谢!

黑资讯 © All Rights Reserved.  
Copyright Copyright 2015-2020 黑资讯
滇ICP备19002590号-1
Powered by 黑客资讯 Themes by 如有不合适之处联系我们
网站地图| 发展历程| 留言建议| 网站管理