PCredz
This tool extracts Credit card numbers, NTLM(DCE-RPC, HTTP, SQL, LDAP, etc), Kerberos (AS-REQ Pre-Auth etype 23), HTTP Basic, SNMP, POP, SMTP, FTP, IMAP, etc from a pcap file or from a live interface.
Top Related Projects
Framework for Man-In-The-Middle attacks
Standalone man-in-the-middle attack framework used for phishing login credentials along with session cookies, allowing for the bypass of 2-factor authentication
A tool for exploiting Moxie Marlinspike's SSL "stripping" attack.
The Swiss Army knife for 802.11, BLE, HID, CAN-bus, IPv4 and IPv6 networks reconnaissance and MITM attacks.
The Social-Engineer Toolkit (SET) repository from TrustedSec - All new versions of SET will be deployed here.
Quick Overview
PCredz is a network packet sniffer and credential extraction tool designed to capture and analyze network traffic for sensitive information. It focuses on extracting credentials from various protocols and services, including HTTP, SMTP, POP3, IMAP, Telnet, and more.
Pros
- Supports a wide range of protocols and services for credential extraction
- Can be used with live network traffic or PCAP files
- Lightweight and easy to use
- Actively maintained and updated
Cons
- Potential for misuse in unauthorized network monitoring
- May trigger antivirus or intrusion detection systems
- Requires root/administrator privileges to capture live network traffic
- Limited documentation for advanced usage scenarios
Code Examples
# Example 1: Sniffing live network traffic
sudo python3 Pcredz -i eth0
# Example 2: Analyzing a PCAP file
python3 Pcredz -f /path/to/capture.pcap
# Example 3: Filtering specific protocols
python3 Pcredz -i eth0 -v -t http,ftp
Getting Started
-
Clone the repository:
git clone https://github.com/lgandx/PCredz.git
-
Install dependencies:
cd PCredz pip3 install -r requirements.txt
-
Run PCredz (requires root/administrator privileges):
sudo python3 Pcredz -i <interface_name>
Replace <interface_name>
with the name of your network interface (e.g., eth0, wlan0).
Competitor Comparisons
Framework for Man-In-The-Middle attacks
Pros of MITMf
- More comprehensive feature set, including multiple attack modules
- Active development and community support
- Extensible plugin architecture for custom modules
Cons of MITMf
- More complex setup and configuration
- Potentially overwhelming for beginners
- Larger codebase, which may impact performance on resource-constrained systems
Code Comparison
MITMf:
from core.sslstrip.DnsCache import DnsCache
from core.sslstrip.URLMonitor import URLMonitor
from core.utils import *
class Plugin(Plugin):
name = "SSLstrip+"
optname = "sslstrip"
implements = ["handleRequest", "handleResponse", "handleHeader"]
PCredz:
def start_sniffer():
if args.interface:
sniff(iface=args.interface, prn=pkt_parser, store=0)
else:
sniff(prn=pkt_parser, store=0)
def pkt_parser(pkt):
if pkt.haslayer(TCP) and pkt.haslayer(Raw) and pkt.haslayer(IP):
parse_pkt(pkt)
MITMf offers a more structured plugin-based approach, while PCredz focuses on a simpler packet sniffing implementation. MITMf's code demonstrates its extensibility, whereas PCredz showcases a more straightforward packet parsing method.
Standalone man-in-the-middle attack framework used for phishing login credentials along with session cookies, allowing for the bypass of 2-factor authentication
Pros of evilginx2
- More advanced phishing capabilities with real-time session hijacking
- Supports multiple target websites and custom phishing templates
- Active development and regular updates
Cons of evilginx2
- Steeper learning curve and more complex setup
- Requires more resources to run effectively
- May be considered more invasive and potentially illegal in some jurisdictions
Code Comparison
PCredz (Python):
def parse_pcap(pcap_file):
try:
a = rdpcap(pcap_file)
sessions = a.sessions()
for session in sessions:
for packet in sessions[session]:
try:
if packet.haslayer(TCP) and packet.haslayer(Raw):
packet_data = packet[Raw].load
evilginx2 (Go):
func (p *HttpProxy) handleClient(client net.Conn) {
defer client.Close()
ctx := &Context{
Params: make(map[string]string),
Cookies: make(map[string]*http.Cookie),
UserAgent: "",
}
p.httpredir.HandleClientRequest(client, ctx)
Both tools are used for credential harvesting, but evilginx2 offers more sophisticated phishing capabilities at the cost of increased complexity. PCredz focuses on passive network sniffing, while evilginx2 actively manipulates traffic for real-time session hijacking.
A tool for exploiting Moxie Marlinspike's SSL "stripping" attack.
Pros of sslstrip
- Focuses specifically on SSL/TLS stripping attacks
- Lightweight and easy to use
- Well-established tool with a long history in the security community
Cons of sslstrip
- Less actively maintained compared to PCredz
- More limited in scope, focusing only on SSL/TLS stripping
- May not capture as wide a range of credentials as PCredz
Code Comparison
sslstrip:
def handleRequest(self, request):
logging.debug("Handling request: %s" % request)
client = self.getClientIP(request)
self.stripSSL(request)
PCredz:
def start(self):
self.start_sniffer()
self.parse_pcap()
self.print_credentials()
Key Differences
PCredz is a more comprehensive tool for capturing various types of credentials from network traffic, while sslstrip focuses specifically on SSL/TLS stripping attacks. PCredz is more actively maintained and updated, offering broader functionality for credential harvesting across different protocols. sslstrip, while more specialized, remains a popular choice for its specific use case in SSL/TLS attacks.
Both tools serve different purposes within the realm of network security testing and should be chosen based on the specific requirements of the task at hand. PCredz is better suited for general credential capturing, while sslstrip excels in scenarios where SSL/TLS stripping is the primary objective.
The Swiss Army knife for 802.11, BLE, HID, CAN-bus, IPv4 and IPv6 networks reconnaissance and MITM attacks.
Pros of Bettercap
- More comprehensive network attack and monitoring tool
- Actively maintained with frequent updates
- Supports a wider range of protocols and attack vectors
Cons of Bettercap
- Steeper learning curve due to more complex features
- Requires more system resources to run effectively
- May be overkill for simple credential sniffing tasks
Code Comparison
PCredz (Python):
def parse_pcap(pcap_file):
try:
a = rdpcap(pcap_file)
sessions = a.sessions()
for session in sessions:
for packet in sessions[session]:
# Packet processing logic
Bettercap (Go):
func (mod *HttpProxy) onPacket(pkt gopacket.Packet) {
if mod.isHTTPRequest(pkt) {
req := mod.parseRequest(pkt)
if req != nil {
// Request processing logic
Both tools process network packets, but Bettercap's implementation is more modular and type-safe due to Go's strong typing. PCredz focuses specifically on credential extraction, while Bettercap offers a broader range of network manipulation capabilities.
The Social-Engineer Toolkit (SET) repository from TrustedSec - All new versions of SET will be deployed here.
Pros of Social-Engineer Toolkit
- Comprehensive suite of social engineering tools
- User-friendly interface with menu-driven options
- Regularly updated with new features and attack vectors
Cons of Social-Engineer Toolkit
- Larger footprint and more complex setup
- Requires more system resources
- Steeper learning curve for beginners
Code Comparison
Social-Engineer Toolkit:
# Example of a phishing attack setup
choice = input("Select attack vector: ")
if choice == "1":
site = input("Enter site to clone: ")
clone_site(site)
PCredz:
# Example of credential extraction
for pkt in packets:
if pkt.haslayer(TCP) and pkt.haslayer(Raw):
process_packet(pkt)
Key Differences
- PCredz focuses specifically on credential extraction from network traffic
- Social-Engineer Toolkit offers a broader range of social engineering attacks
- PCredz is more lightweight and easier to integrate into existing workflows
- Social-Engineer Toolkit provides a more guided experience for less experienced users
Both tools serve different purposes within the realm of security testing and should be chosen based on the specific requirements of the task at hand.
Convert designs to code with AI
Introducing Visual Copilot: A new AI model to turn Figma designs to high quality code using your components.
Try Visual CopilotREADME
PCredz
This tool extracts Credit card numbers, NTLM(DCE-RPC, HTTP, SQL, LDAP, etc), Kerberos (AS-REQ Pre-Auth etype 23), HTTP Basic, SNMP, POP, SMTP, FTP, IMAP, etc from a pcap file or from a live interface.
Features
-
Extract from a pcap file or from a live interface IPv4 and IPv6:
- Credit card numbers
- POP
- SMTP
- IMAP
- SNMP community string
- FTP
- HTTP (NTLM/Basic/HTTP Forms)
- NTLMv1/v2 (DCE-RPC,SMBv1/2,LDAP, MSSQL, HTTP, etc)
- Kerberos (AS-REQ Pre-Auth etype 23) hashes.
-
All hashes are displayed in a hashcat format (use -m 7500 for kerberos, -m 5500 for NTLMv1, -m 5600 for NTLMv2).
-
Log all credentials and information to a file (CredentialDump-Session.log).
-
Log credentials in the logs/ folder. MSKerb.txt, NTLMv1.txt and NTLMv2.txt can be directly fed to hashcat.
Install
Docker
Install docker and clone the repo
Build the container
$ docker build . -t pcredz
Then use the command below to map the current working directory inside the Pcredz container. This is useful for moving .pcap files to parse or for retrieving log files from a live capture.
$ docker run --net=host -v $(pwd):/opt/Pcredz -it pcredz
Linux
On a debian based OS bash:
apt install python3-pip && sudo apt-get install libpcap-dev && pip3 install Cython && pip3 install python-libpcap
Usage
# extract credentials from a pcap file
python3 ./Pcredz -f file-to-parse.pcap
# extract credentials from all pcap files in a folder
python3 ./Pcredz -d /tmp/pcap-directory-to-parse/
# extract credentials from a live packet capture on a network interface (need root privileges)
python3 ./Pcredz -i eth0 -v
Options
-h, --help show this help message and exit
-f capture.pcap Pcap file to parse
-d /home/pnt/pcap/ Pcap directory to parse recursivly
-i eth0 interface for live capture
-v More verbose.
-o output_dir Store log files in output_dir instead of the directory containing Pcredz.
Top Related Projects
Framework for Man-In-The-Middle attacks
Standalone man-in-the-middle attack framework used for phishing login credentials along with session cookies, allowing for the bypass of 2-factor authentication
A tool for exploiting Moxie Marlinspike's SSL "stripping" attack.
The Swiss Army knife for 802.11, BLE, HID, CAN-bus, IPv4 and IPv6 networks reconnaissance and MITM attacks.
The Social-Engineer Toolkit (SET) repository from TrustedSec - All new versions of SET will be deployed here.
Convert designs to code with AI
Introducing Visual Copilot: A new AI model to turn Figma designs to high quality code using your components.
Try Visual Copilot