首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >Brutus:一款模块化的高度可扩展漏洞利用框架

Brutus:一款模块化的高度可扩展漏洞利用框架

作者头像
FB客服
发布2021-10-21 15:22:23
发布2021-10-21 15:22:23
9050
举报
文章被收录于专栏:FreeBufFreeBuf

关于Brutus

Brutus是一款功能强大的漏洞利用框架,该框架基于模块化开发,并且具备高度可扩展特性。除此之外,Brutus还采用多任务和多进程架构,因此具备高性能特性。

Brutus基于Python开发,可以自动化基于网络的漏洞利用测试和基于Web的网络侦察活动。作为一个轻量级框架,Brutus旨在最大限度地减少对第三方依赖的依赖。Brutus针对Kali Linux进行了优化,它还与macOS和大多数Linux发行版兼容,具有完全交互式的命令行界面和多功能插件系统。

Brutus具有高度可扩展的模块化体系结构,这些模块在“任务层”上运行,而任务层由线程池和线程安全异步队列组成。主线程在一个多进程池上运行,该池管理应用程序上下文并分派新进程,以便任务可以在后台或单独的Shell中运行。

Brutus的UI层也是可扩展的,默认情况下,Brutus附带有一个基于菜单的命令行界面UI,但广大研究人员可以自行添加GUI、参数解析器以及HTTP API等等。

除此之外,Brutus有一个实用程序层,它具有文件系统操作、Shell管理、持久化方法和系统元数据的通用功能。

功能介绍

Brutus包括几个模块,这些模块可以概括为三大类:基于网络的、基于Web的和Payload。最后一类是一个编译器库,附带有Payload,而Brutus的交互式命令行菜单可以编译这些Payload,随后将其加载至Brutus的其他基于网络的模块中。

Brutus的底层利用POSIX线程进行并发多任务处理,有些模块还使用Python的异步I/O库。

包含的实用工具/脚本:

IP表管理 HTTPS降级至HTTP 启用监控模式 启用端口转发 键盘记录

工具安装

首先,我们需要安装并配置好下列依赖组件:

sslstrip pipenv

Brutus专门针对Kali Linux系统进行过优化,网上也有很多关于如何在虚拟机中运行Kali Linux的资料了,因此我们在这里不再进行赘述。

安装好依赖组件之后,我们可以运行下列命令将该项目源码克隆至本地,并进行工具安装:

代码语言:javascript
复制
git clone https://github.com/MatthewZito/brutus.git
pipenv install

工具使用

工具运行:

代码语言:javascript
复制
pipenv run brutus

执行测试:

代码语言:javascript
复制
pipenv run test

Lint:

代码语言:javascript
复制
pipenv run lint

配置Git Hook开发环境:

代码语言:javascript
复制
pipenv run setup

工具使用演示

GIF:

https://github.com/MatthewZito/Brutus/blob/dev/assets/brutus_demo1.gif

工具演示视频

视频地址:https://streamable.com/scybvn

项目地址

Brutus:https://github.com/MatthewZito/brutus

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

本文分享自 FreeBuf 微信公众号,前往查看

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

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

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 关于Brutus
  • 功能介绍
  • 工具安装
  • 工具使用
  • 工具使用演示
  • 工具演示视频
  • 项目地址
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档