Legba is a multiprotocol credentials bruteforcer / password sprayer and enumerator built with Rust and the Tokio asynchronous runtime in order to achieve better performances and stability while consuming less resources than similar tools.
- 100% Rust - Legba is entirely written in Rust, does not have native dependencies and can be easily compiled for all operating systems and architectures. 🦀
- Multi Protocol - Support for HTTP, DNS, SSH, FTP, SMTP, RDP, VNC, SQL databases, NoSQL, LDAP, Kerberos, SAMBA, SNMP, STOMP, MQTT and more.
- High Performance - Async/concurrent architecture with customizable workers for maximum speed.
- Flexible Credentials - Multiple input formats including wordlist files, ranges, permutations, and expression generators.
- Smart Session Management - Save and restore session state to resume interrupted scans.
- Advanced Rate Control - Rate limiting, delays, jittering, and retry mechanisms for stealth and stability.
- Extensible Architecture - REST API, Model Context Protocol (MCP) server, and custom binary plugin support.
- Recipe System - YAML-based configuration for complex authentication scenarios.
- Multiple Output Formats - Export results in various formats for easy integration with other tools.
Download one of the precompiled binaries from the project latest release page, or if you're a Homebrew user, you can install it with a custom tap:
brew tap evilsocket/legba https://github.com/evilsocket/legba
brew install evilsocket/legba/legba
You are now ready to go! 🚀
legba smb --target domain.local --username administrator --password wordlist.txt
For the usage and the complete list of options check the project documentation.
Legba is released under the GPL 3 license. To see the licenses of the project dependencies, install cargo license with cargo install cargo-license
and then run cargo license
.