Legba:一款功能强大的多协议凭证爆破与密码喷射枚举工具

本文主要是介绍Legba:一款功能强大的多协议凭证爆破与密码喷射枚举工具,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

关于Legba

Legba是一款功能强大的多协议凭证爆破与密码喷射枚举工具。该工具的目的就是在消耗更少资源的同时实现更好的性能和稳定性,可以帮助广大研究人员执行多种协议场景下的凭证爆破,以及密码喷射和枚举任务。

支持的协议和功能

AMQP(ActiveMQ、RabbitMQ、Qpid、JORAM和Solace)、Cassandra/ScillaDB、DNS子域枚举、FTP、HTTP(基本身份验证、NTLMv1、NTLMv2、多字段表单、支持CSRF的自定义请求、文件/文件夹枚举、虚拟主机枚举)、IMAP、Kerberos预身份验证和用户枚举、LDAP、MongoDB、MQTT、Microsoft SQL、MySQL、Oracle、PostgreSQL、POP3、RDP、Redis、Samba,SSH/SFTP、SMTP、Socks5、STOMP(ActiveMQ、RabbitMQ、HornetQ和OpenMQ)、TCP端口扫描、Telnet和VNC。

工具安装

Docker Hub安装

我们可以在Docker Hub上找到Legba的Docker镜像:

docker run -it evilsocket/legba -h

在使用字典文件时,请通过一个Docker卷来共享字典文件。如果你想使用网络主机来搜索目标,可以使用下列命令:

docker run \-v $(pwd):/data \--network host \-it evilsocket/legba:latest \ssh --username root --password /data/your-wordlist.txt --target 192.168.1.1

Crates.io安装

Legba也托管在了crates.io上,安装好Cargo之后,可以直接使用下列命令安装Legba:

cargo install legba

安装好的工具源码路径为“$HOME/.cargo/bin/legba”。

源码安装

由于该工具基于Rust开发,因此我们首先需要在本地设备上安装并配置好Rust环境。接下来,广大研究人员可以直接使用下列密令将该项目源码克隆至本地:

git clone https://github.com/evilsocket/legba.git

然后在主机上安装libcrypto-dev和libsmbclient-dev,并运行下列命令构建项目代码:

cd legbacargo build --release

编译构建好的代码可以在./target/release目录中找到。

Docker镜像构建

我们还可以构建一个Docker容器:

docker build -t legba .

然后通过下列命令运行容器:

docker run legba --help

工具命令选项

*参数选项**默认值**命令描述*
-L, --list-plugins枚举所有可用的协议插件
-T, --target 设置单个目标主机、URL或IP地址、IP范围、CIDR、@filename或逗号分隔的目标
-U, --payloads, --username #4-8常量、文件名、表达式,例如@/some/path/*.txt、#min-max:charset / #min-max或[min-max] / [n, n, n]
-P, --key, --password #4-8常量、文件名、表达式,例如@/some/path/*.txt、#min-max:charset / #min-max或[min-max] / [n, n, n]
-C, --combinations 从该文件加载username:password组合
–separator :使用–combinations/-C参数时的分隔符
-I, --iterate-by <ITERATE_BY>user根据用户或密码执行迭代,可选值为user或password
-S, --session 从文件存储或恢复会话
-O, --output 结果存储文件路径
–output-format text输出文件格式,可选text或json
–timeout 10000连接超时时间(毫秒)
–retries 5请求失败后的尝试次数
–retry-time 1000重试间隔时间(毫秒)
–single-match第一次匹配到假阳性时退出
–ulimit 10000ulimit值(打开文件描述符的最大值)
–concurrency 10并行线程数量
–rate-limit 0每秒请求发送数量限制
-W, --wait 0每次登录尝试的等待间隔时间(毫秒)
–jitter-min 0随机请求的发送最小时间间隔(毫秒)
–jitter-max 0随机请求的发送最大时间间隔(毫秒)
-Q, --quiet不报告统计数据
-h, --help帮助信息
-V, --version版本信息

工具使用

选择一个或多个目标

--target/-T参数支持设置一个或多个目标:--target 127.0.0.1, --target www.google.com--target 127.0.0.1:22--target 127.0.0.1, 192.168.1.1:80--target @targets.txt--target 192.168.1.1-10, --target 192.168.1.1-10:22--target 192.168.1.0/24, --target 192.168.1.0/24:22 CIDR--target 10.0.0.1, 172.0.0.1:2222, @other-targets.txt, 192.168.1.1-10

提供凭证

所有的命令逻辑都支持–username/–payloads和–password/–key参数:

legba <plugin name> --username admin --password data/passwords.txtlegba <plugin name> --username data/users.txt --password data/passwords.txtlegba <plugin name> --username adminlegba <plugin name> --username data/users.txt --password '@/some/path/*.key'legba <plugin name> --username data/users.txt --password '#4-5:abcdef'legba <plugin name> --username data/users.txt --password '[10-999]'legba <plugin name> --username data/users.txt --password '[1, 2, 3, 4]'

许可证协议

本项目的开发与发布遵循GNU General Public开源许可证协议。

项目地址

Legba:【GitHub传送门】

参考资料

https://rustup.rs/

https://hub.docker.com/r/evilsocket/legba

https://crates.io/crates/legba

这篇关于Legba:一款功能强大的多协议凭证爆破与密码喷射枚举工具的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/714941

相关文章

基于Python实现简易视频剪辑工具

《基于Python实现简易视频剪辑工具》这篇文章主要为大家详细介绍了如何用Python打造一个功能完备的简易视频剪辑工具,包括视频文件导入与格式转换,基础剪辑操作,音频处理等功能,感兴趣的小伙伴可以了... 目录一、技术选型与环境搭建二、核心功能模块实现1. 视频基础操作2. 音频处理3. 特效与转场三、高

基于Python开发一个图像水印批量添加工具

《基于Python开发一个图像水印批量添加工具》在当今数字化内容爆炸式增长的时代,图像版权保护已成为创作者和企业的核心需求,本方案将详细介绍一个基于PythonPIL库的工业级图像水印解决方案,有需要... 目录一、系统架构设计1.1 整体处理流程1.2 类结构设计(扩展版本)二、核心算法深入解析2.1 自

Python办公自动化实战之打造智能邮件发送工具

《Python办公自动化实战之打造智能邮件发送工具》在数字化办公场景中,邮件自动化是提升工作效率的关键技能,本文将演示如何使用Python的smtplib和email库构建一个支持图文混排,多附件,多... 目录前言一、基础配置:搭建邮件发送框架1.1 邮箱服务准备1.2 核心库导入1.3 基础发送函数二、

基于Python实现一个图片拆分工具

《基于Python实现一个图片拆分工具》这篇文章主要为大家详细介绍了如何基于Python实现一个图片拆分工具,可以根据需要的行数和列数进行拆分,感兴趣的小伙伴可以跟随小编一起学习一下... 简单介绍先自己选择输入的图片,默认是输出到项目文件夹中,可以自己选择其他的文件夹,选择需要拆分的行数和列数,可以通过

Python使用pip工具实现包自动更新的多种方法

《Python使用pip工具实现包自动更新的多种方法》本文深入探讨了使用Python的pip工具实现包自动更新的各种方法和技术,我们将从基础概念开始,逐步介绍手动更新方法、自动化脚本编写、结合CI/C... 目录1. 背景介绍1.1 目的和范围1.2 预期读者1.3 文档结构概述1.4 术语表1.4.1 核

Python使用OpenCV实现获取视频时长的小工具

《Python使用OpenCV实现获取视频时长的小工具》在处理视频数据时,获取视频的时长是一项常见且基础的需求,本文将详细介绍如何使用Python和OpenCV获取视频时长,并对每一行代码进行深入解析... 目录一、代码实现二、代码解析1. 导入 OpenCV 库2. 定义获取视频时长的函数3. 打开视频文

Linux中压缩、网络传输与系统监控工具的使用完整指南

《Linux中压缩、网络传输与系统监控工具的使用完整指南》在Linux系统管理中,压缩与传输工具是数据备份和远程协作的桥梁,而系统监控工具则是保障服务器稳定运行的眼睛,下面小编就来和大家详细介绍一下它... 目录引言一、压缩与解压:数据存储与传输的优化核心1. zip/unzip:通用压缩格式的便捷操作2.

Spring Security中用户名和密码的验证完整流程

《SpringSecurity中用户名和密码的验证完整流程》本文给大家介绍SpringSecurity中用户名和密码的验证完整流程,本文结合实例代码给大家介绍的非常详细,对大家的学习或工作具有一定... 首先创建了一个UsernamePasswordAuthenticationTChina编程oken对象,这是S

sqlite3 命令行工具使用指南

《sqlite3命令行工具使用指南》本文系统介绍sqlite3CLI的启动、数据库操作、元数据查询、数据导入导出及输出格式化命令,涵盖文件管理、备份恢复、性能统计等实用功能,并说明命令分类、SQL语... 目录一、启动与退出二、数据库与文件操作三、元数据查询四、数据操作与导入导出五、查询输出格式化六、实用功

如何在Spring Boot项目中集成MQTT协议

《如何在SpringBoot项目中集成MQTT协议》本文介绍在SpringBoot中集成MQTT的步骤,包括安装Broker、添加EclipsePaho依赖、配置连接参数、实现消息发布订阅、测试接口... 目录1. 准备工作2. 引入依赖3. 配置MQTT连接4. 创建MQTT配置类5. 实现消息发布与订阅