BEEF的使用(简单版)

BeEF

BEEF (The Browser Exploitation Framework):一款浏览器攻击框架,用Ruby语言开发的,Kali中默认安装的一个模块,用于实现对XSS漏洞的攻击和利用。

BeEF主要是往网页中插入一段名为hook.js的JS脚本代码,如果浏览器访问了有hook.js(钩子)的页面,就会被hook(勾住),勾连的浏览器会执行初始代码返回一些信息,接着目标主机会每隔一段时间(默认为1秒)就会向BeEF服务器发送一个请求,询问是否有新的代码需要执行。BeEF服务器本质上就像一个Web应用,被分为前端和后端。前端会轮询后端是否有新的数据需要更新,同时前端也可以向后端发送指示, BeEF持有者可以通过浏览器来登录 BeEF 的后端,来控制前端(用户的浏览器)。BeEF一般和XSS漏洞结合使用。

BEEF的使用

在使用之前我们需要对其配置文件进行修改,进入 /usr/share/beef-xss/config.yaml 配置文件,将ip修改成我们kali的ip地址。后续我们进行其他实验也是需要修改这个配置文件。
在这里插入图片描述
打开beef方式:
直接点击桌面上的图标,过5秒左右,然后它自动会打开命令行和浏览器beef的登录框
任意目录,直接输入命令:beef-xss 打开 ,过5秒左右,然后它自动会打开命令行和浏览器beef的登录框
进入/usr/share/beef-xss/,输入命令:./beef-xss 打开 ,然后手动打开浏览器链接

利用beef来钓鱼

我们先将我们的网站做成百度的样子(跟着步骤来就好了)

进入/usr/share/beef-xss/ 目录下,执行命令:./beef 启动 beef ,记录API Token值
在这里插入图片描述
然后新打开一个命令框,执行以下命令

curl -H "Content-Type: application/json; charset=UTF-8" -d '{"url":"https://www.baidu.com/","mount":"/"}' -X POST http://192.168.99.131:3000/api/seng/clone_page?token=我们图中自己的token值

在这里插入图片描述
我们克隆的网站在目录:/usr/share/beef-xss/extensions/social_engineering/web_cloner/cloned_pages 下
在这里插入图片描述

利用物理机或者其他同网段的终端访问 [http://192.168.99.131:3000](http://192.168.99.131:3000) 可以看到主页和百度一模一样

在这里插入图片描述然后返回beef的网页,我们可以看到这台机器已经被我们控制了
我的物理机是192.168.99.130,所以这里显示受控机是此地址
在这里插入图片描述比如当我通过百度访问其他网站时,我么就可以拿到cookie
在这里插入图片描述当然这只是试验,如果说在真实的内网渗透中要用过这种方法,换需要对目标进行DNS欺骗。
在进行DNS欺骗之前我们需要将端口改为80,配合bettercap进行欺骗。
这样一来目标终端如果访问了真的百度地址也会自动连接到我们这里,cookie照拿不误。

  • 1
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
Apriori 算法是一种常用的关联规则挖掘算法,可以用于发现数据集中项之间的关系。下面是一个简单的实现 Apriori 算法的 Python 代码示例: ```python def load_data(): """加载数据集""" data = [['bread', 'milk', 'vegetable', 'fruit', 'eggs'], ['noodle', 'beef', 'vegetable', 'fruit', 'eggs'], ['bread', 'noodle', 'beef', 'vegetable'], ['bread', 'milk', 'beef', 'vegetable', 'eggs'], ['milk', 'noodle', 'beef', 'vegetable', 'fruit', 'eggs']] return data def create_C1(data): """创建所有候选项集的集合""" C1 = set() for transaction in data: for item in transaction: C1.add(frozenset([item])) return C1 def generate_Fk(Ck, data, min_support): """根据候选项集生成频繁项集""" support_count = {} for transaction in data: for item in Ck: if item.issubset(transaction): support_count[item] = support_count.get(item, 0) + 1 n = len(data) Fk = set() support_data = {} for item, count in support_count.items(): support = count / n if support >= min_support: Fk.add(item) support_data[item] = support return Fk, support_data def generate_Ck(Fk, k): """根据频繁项集生成候选项集""" Ck = set() for item1 in Fk: for item2 in Fk: if len(item1.union(item2)) == k: Ck.add(item1.union(item2)) return Ck def apriori(data, min_support): """Apriori 算法""" C1 = create_C1(data) F1, support_data = generate_Fk(C1, data, min_support) F = [F1] k = 2 while len(F[k-2]) > 0: Ck = generate_Ck(F[k-2], k) Fk, support_k = generate_Fk(Ck, data, min_support) support_data.update(support_k) F.append(Fk) k += 1 return F, support_data if __name__ == '__main__': data = load_data() F, support_data = apriori(data, 0.5) print("频繁项集:", F) print("支持度:", support_data) ``` 在这个示例中,我们使用了一个包含 5 个交易的简单数据集。首先,我们创建了所有候选项集的集合,然后根据候选项集生成频繁项集。接着,我们根据频繁项集生成候选项集,并再次生成频繁项集。这个过程一直进行到没有新的频繁项集产生为止。最后,我们输出了所有的频繁项集和支持度。 这是一个简单的 Apriori 算法实现示例,实际应用中可能需要对算法进行优化,例如使用 FP-Growth 算法等。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值