Skip to content

ivancabrera02/rustPacket

Repository files navigation

rustPacket 🦀

A Rust-based network security toolkit for Active Directory and network enumeration

Rust License: MIT PRs Welcome

Overview

rustPacket is a collection of offensive and defensive network security tools written in Rust, inspired by the popular Python toolkit Impacket and its version in Golang, goPacket (https://github.com/mandiant/gopacket). It provides high-performance, memory-safe implementations of common Active Directory enumeration, Kerberos attacks, LDAP querying, and lateral movement utilities.

rustPacket is designed for penetration testers, red teamers, and security researchers who need reliable, fast tools for Active Directory assessments.

Please note, this is a beta version of the tools. We are aware that not all tools or functionalities are available, too many tokens have been spent :)

Features

Kerberos & Authentication

  • Kerberoasting — Extract service account credentials via SPN enumeration
  • AS-REP Roasting — Exploit users without Kerberos pre-authentication
  • getTGT — Request and export Kerberos Ticket Granting Tickets (TGT)
  • getST — Request and export Kerberos Service Tickets (ST) for specific services
  • getPAC — Extract and analyze Privilege Attribute Certificate (PAC) from Kerberos tickets

Active Directory Enumeration

  • GetADComputers — Enumerate and retrieve computer objects from Active Directory
  • GetADUsers — List AD users and extract detailed attribute information
  • GetNPUsers — Identify users without Kerberos pre-authentication requirements
  • GetUsersSPN — Enumerate Service Principal Names (SPNs) for user accounts
  • findDelegation — Identify and enumerate delegation configurations in Active Directory
  • LDAPCheckStatus — Verify LDAP service availability and connectivity

Network Discovery & Reconnaissance

  • ping — ICMP ping utility for host discovery and connectivity testing
  • ping6 — ICMPv6 ping utility for IPv6 network host discovery
  • sniff — Capture and analyze network traffic packets in real-time
  • sniffer — Advanced packet sniffer for detailed network traffic inspection

Local & Remote Access

  • lookupsid — Perform reverse SID lookups to resolve usernames and group names
  • samrdump — Extract local account information via SAM-R protocol
  • smbclient — SMB client for file sharing enumeration and lateral movement

Privilege Escalation & Exploitation

  • RBCD — Exploit Resource-Based Constrained Delegation misconfigurations
  • mssqclient — SQL Server client for database interaction and privilege escalation

Installation

From source

git clone https://github.com/ivancabrera02/rustPacket.git
cd rustPacket/<project>
cargo build --release

Binaries will be available at target/release/.

Requirements

  • Rust 1.70+
  • Network access to the target environment
  • Valid domain credentials (for most tools)

Tools

Tool Description
GetADComputers Enumerates and retrieves information about computers in Active Directory
GetADUsers Lists Active Directory users and their attributes
GetNPUsers Identifies AD users without Kerberos pre-authentication requirement
GetUsersSPN Searches and enumerates Service Principal Names (SPNs) for AD users
lookupsid Performs reverse SID lookups to obtain usernames and group names
samrdump Extracts local account information using the SAM-R protocol
smbclient SMB client for enumerating network shares and resources
getTGT Obtains Kerberos Ticket Granting Tickets (TGT)
getST Requests and exports Kerberos Service Tickets (ST) for specific services
getPAC Extracts and analyzes Privilege Attribute Certificate (PAC) from Kerberos tickets
findDelegation Identifies and enumerates delegation configurations in Active Directory
ping ICMP ping utility for network host discovery and connectivity testing
ping6 ICMPv6 ping utility for IPv6 network host discovery
sniff Captures and analyzes network traffic packets in real-time
sniffer Advanced packet sniffer for detailed network traffic inspection
rbcd Exploits Resource-Based Constrained Delegation (RBCD) configurations
mssqclient Client for interacting with SQL Server databases
LDAPCheckStatus Verifies the status and availability of LDAP services

Contributing

Contributions are welcome! If you'd like to add a new tool or improve an existing one:

  1. Fork the repository
  2. Create your feature branch
  3. Write your code and tests
  4. Commit your changes (git commit -m 'Add new-tool')
  5. Push to the branch (git push origin feature/new-tool)
  6. Open a Pull Request

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages