PCredz 从网络流量(PCAP 文件或实时捕获)中提取凭据和认证令牌。
从 IPv4 和 IPv6 流量中提取凭据:
-m 5500-m 5600-m 7500logs/ 目录CredentialDump-Session.log-v 标志)# 构建容器
docker build -t pcredz .
# 挂载当前目录运行
docker run --rm -v $(pwd):/data pcredz -f /data/capture.pcap
# 实时捕获(需要 --net=host)
docker run --rm --net=host -v $(pwd):/data pcredz -i eth0 -v
Debian/Ubuntu:
sudo apt-get install python3-pip libpcap-dev
pip3 install pcapy-ng
Fedora/RHEL:
sudo dnf install python3-pip libpcap-devel
pip3 install pcapy-ng
Arch Linux:
sudo pacman -S python-pip libpcap
pip3 install pcapy-ng
# 解析单个 PCAP 文件
./Pcredz -f capture.pcap
# 递归解析目录中的所有 PCAP 文件
./Pcredz -d /path/to/pcap/directory/
# 在接口上实时捕获(需要 root 权限)
sudo ./Pcredz -i eth0
# 详细模式(显示重复凭据)
./Pcredz -f capture.pcap -v
# 自定义输出目录
./Pcredz -f capture.pcap -o /tmp/pcredz-output/
必需(选择其一):
-f FILE 要解析的 PCAP 文件
-d DIR 要递归解析的目录
-i INTERFACE 用于实时捕获的接口
可选:
-v 详细模式(打印重复凭据)
-t 打印时间戳
-o DIR 日志输出目录(默认:./)
-c 禁用信用卡扫描
--disable PROTO 禁用协议(可多次使用)
选项:NTLM, HTTP, FTP, IRC, LDAP, SMTP, Kerberos, SNMP, MSSQL
--exclude-host IP 排除主机 IP(可多次使用)
-h 显示帮助信息
所有凭据保存到 logs/ 目录:
logs/
├── NTLMv1.txt # NTLMv1 哈希(hashcat -m 5500)
├── NTLMv2.txt # NTLMv2 哈希(hashcat -m 5600)
├── MSKerb.txt # Kerberos 哈希(hashcat -m 7500)
├── HTTP-Basic.txt # HTTP 基本认证凭据
├── HTTP-PasswordFields.txt # HTTP 表单字段和 API 密钥
├── FTP-Plaintext.txt # FTP 凭据
├── IRC-Plaintext.txt # IRC 凭据
├── SMTP-Plaintext.txt # SMTP 凭据
├── LDAP-Simple.txt # LDAP 简单绑定凭据
├── MSSQL-Plaintext.txt # MSSQL 凭据
└── SNMPv1.txt # SNMP 团体字符串
加上一个会话日志:
CredentialDump-Session.log # 带时间戳的完整会话
./Pcredz -f capture.pcap
# 输出:
# 192.168.1.10:445 > 192.168.1.20:1024
# NTLMv2 完整哈希为:admin::DOMAIN:1122334455667788:ABC123...
# 配合 hashcat 使用:
hashcat -m 5600 logs/NTLMv2.txt wordlist.txt
sudo ./Pcredz -i eth0 -v
# 实时捕获并显示凭据
# 按 Ctrl+C 停止
# 处理目录树中的所有 PCAP
./Pcredz -d /forensics/network-captures/
# 正在解析 /forensics/network-captures/day1/morning.pcap...
# 正在解析 /forensics/network-captures/day1/afternoon.pcap...
# ...
# 禁用特定协议(减少噪音)
./Pcredz -f capture.pcap --disable HTTP --disable SNMP
# 仅捕获 NTLM 哈希
./Pcredz -f capture.pcap --disable HTTP --disable FTP --disable IRC \
--disable LDAP --disable SMTP --disable Kerberos --disable SNMP --disable MSSQL
# 仅关注明文凭据
./Pcredz -f capture.pcap --disable NTLM --disable Kerberos
# 在实时捕获中排除自身 IP(常见用例)
sudo ./Pcredz -i eth0 --exclude-host 192.168.1.50 -v
# 排除多个主机
./Pcredz -f capture.pcap --exclude-host 192.168.1.100 --exclude-host 10.0.0.5
# 渗透测试:捕获目标凭据,排除自身
sudo ./Pcredz -i eth0 --exclude-host $(hostname -I | awk '{print $1}') -v
现代硬件上的典型性能:
pip3 install pcapy-ng
# 如果失败:
pip3 install --break-system-packages pcapy-ng
实时捕获需要 root 权限:
sudo ./Pcredz -i eth0
-v)查看所有活动发现错误或想添加功能?欢迎贡献!
GNU General Public License v3.0
Laurent Gaffie