G4MEOVER18/hashpwn

GitHub: G4MEOVER18/hashpwn

一款纯 Python 编写的哈希识别与破解工具,支持 35+ 种哈希类型和多种攻击模式,灵感来源于 hashcat 和 hashID。

Stars: 0 | Forks: 0

# hashpwn **面向安全研究人员的哈希识别与破解工具** 纯 Python 标准库工具,灵感来源于: - **[hashcat](https://github.com/hashcat/hashcat)** — 行业标准的哈希破解引擎(感谢 atom 和团队) - **[hashID](https://github.com/psypanda/hashID)** — 自动哈希识别工具(感谢 psypanda) ## 功能特性 - 自动哈希识别(通过正则表达式支持 35+ 种类型) - 字典攻击(MD5、SHA1、SHA256、SHA512、NTLM、LM、BLAKE2 等) - 基于规则的变形(Leet 语、年份追加、后缀、大小写变换) - 掩码攻击(`?l ?u ?d ?s ?a`) - 哈希列表模式(同时破解多个哈希) - Potfile 兼容输出(`hash:plain`) - JSON 导出(`--output`) - 实时进度条,包含 ETA 和 H/s - 基准测试模式 ## 支持的哈希类型(识别) | # | 名称 | 长度 / 前缀 | |---|------|----------------| | 1 | MD5 | 32 位十六进制 | | 2 | SHA-1 | 40 位十六进制 | | 3 | SHA-224 | 56 位十六进制 | | 4 | SHA-256 | 64 位十六进制 | | 5 | SHA-384 | 96 位十六进制 | | 6 | SHA-512 | 128 位十六进制 | | 7 | SHA3-224 | 56 位十六进制 | | 8 | SHA3-256 | 64 位十六进制 | | 9 | SHA3-384 | 96 位十六进制 | | 10 | SHA3-512 | 128 位十六进制 | | 11 | RIPEMD-160 | 40 位十六进制 | | 12 | BLAKE2b-512 | 128 位十六进制 | | 13 | BLAKE2s-256 | 64 位十六进制 | | 14 | NTLM | 32 位十六进制 | | 15 | LM | 32 位十六进制 | | 16 | bcrypt 2a | `$2a$` | | 17 | bcrypt 2b | `$2b$` | | 18 | bcrypt 2y | `$2y$` | | 19 | argon2id | `$argon2id$` | | 20 | argon2i | `$argon2i$` | | 21 | argon2d | `$argon2d$` | | 22 | scrypt | `$scrypt$` | | 23 | md5crypt | `$1$` | | 24 | sha512crypt | `$6$` | | 25 | sha256crypt | `$5$` | | 26 | apr1 (Apache MD5) | `$apr1$` | | 27 | PBKDF2-SHA256 (Django) | `pbkdf2_sha256$` | | 28 | PBKDF2-SHA1 (Django) | `pbkdf2_sha1$` | | 29 | PHPass (WordPress) | `$P$` | | 30 | PHPass (phpBB3) | `$H$` | | 31 | Drupal7 | `$S$` | | 32 | MySQL 3.23 | 16 位十六进制 | | 33 | MySQL 4.1+ | `*` + 40 位十六进制 | | 34 | PostgreSQL MD5 | `md5` + 32 位十六进制 | | 35 | Oracle 11g SHA1 | `S:` + 60 位十六进制 | | 36 | MSSQL 2000/2005 | `0x0100` + 88 位十六进制 | | 37 | MSSQL 2012/2014 | `0x0200` + 136 位十六进制 | | 38 | Cisco Type 7 | `07` + 十六进制 | | 39 | Kerberos 5 TGT | `$krb5tgs$` | | 40 | Kerberos 5 AS-REP | `$krb5asrep$` | | 41 | SAP CODVN G | `{x-issha,` | | 42 | WPA-PSK | 64 位十六进制 | | 43 | CRC32 | 8 位十六进制 | ## 安装 只需 Python 3.7+,**无需外部依赖**。 ``` git clone https://github.com/G4MEOVER18/hashpwn cd hashpwn python hashpwn.py --help ``` ## 使用方法 ### 识别哈希 ``` python hashpwn.py --identify --hash 5f4dcc3b5aa765d61d8327deb882cf99 ``` 输出: ``` [*] Possible hash types for: 5f4dcc3b5aa765d61d8327deb882cf99 - NTLM - MD5 ``` ### 字典攻击 ``` python hashpwn.py --hash 5f4dcc3b5aa765d61d8327deb882cf99 \ --algo md5 \ --wordlist wordlists/top1000.txt ``` 使用 Rockyou(大型字典): ``` python hashpwn.py --hash 5f4dcc3b5aa765d61d8327deb882cf99 \ --algo md5 \ --wordlist /usr/share/wordlists/rockyou.txt ``` ### 基于规则的变形 ``` python hashpwn.py --hash --algo sha256 \ --wordlist wordlists/top1000.txt --rules ``` 应用的规则: - 大小写转换(capitalize、upper、lower) - Leet 替换(`a→4, e→3, i→1, o→0, s→5`) - 年份追加 2020–2026 - 后缀:`!`、`123`、`@`、`#`、`1234` 等 - 反转(reverse) - 重复(word+word) ### 掩码攻击(暴力破解) ``` # 6位小写字母 python hashpwn.py --hash --algo md5 --mask "?l?l?l?l?l?l" # 4个小写字母 + 2个数字 python hashpwn.py --hash --algo sha1 --mask "?l?l?l?l?d?d" # 文字与 Charsets 混合 python hashpwn.py --hash --algo ntlm --mask "Admin?d?d?d?d" ``` 掩码标记: | 标记 | 字符集 | |-------|-------------| | `?l` | a-z (26) | | `?u` | A-Z (26) | | `?d` | 0-9 (10) | | `?s` | 特殊字符 | | `?a` | 所有可打印字符 | ### 多个哈希(哈希列表) ``` # hashes.txt 每行包含一个哈希 python hashpwn.py --hashlist hashes.txt \ --algo md5 \ --wordlist wordlists/top1000.txt ``` 使用规则: ``` python hashpwn.py --hashlist hashes.txt --algo sha1 \ --wordlist wordlists/top1000.txt --rules ``` ### 基准测试 ``` python hashpwn.py --benchmark ``` 示例输出: ``` [*] Benchmarking 11 algorithms for 3s each... md5 1,234,567 H/s ######################################## sha1 987,654 H/s ################################ sha256 654,321 H/s #################### sha512 432,109 H/s ############# ... ``` ### Potfile(恢复 / 缓存) 已破解的哈希会自动保存到 `hashpwn.pot`。 下次调用时会检查缓存 —— 已破解的哈希将立即返回。 ``` # 指定自己的 Potfile python hashpwn.py --hash --algo md5 \ --wordlist wordlists/top1000.txt \ --restore meine.pot ``` ### JSON 导出 ``` python hashpwn.py --hash --algo sha256 \ --wordlist wordlists/top1000.txt \ --output ergebnis.json ``` ## 支持的破解算法 | 算法名称 | 实现方式 | |-----------|----------------| | `md5` | hashlib | | `sha1` | hashlib | | `sha224` | hashlib | | `sha256` | hashlib | | `sha384` | hashlib | | `sha512` | hashlib | | `sha3_256` | hashlib | | `sha3_512` | hashlib | | `blake2b` | hashlib | | `blake2s` | hashlib | | `ripemd160` | hashlib | | `ntlm` | 纯 Python (MD4/UTF-16LE) | | `lm` | 纯 Python (DES 扩展,标记) | ## 法律声明 本工具**仅用于合法的安全研究、已获明确授权的渗透测试、F 比赛以及您自己的系统**。 滥用行为将违反相关法律。 作者不对因滥用造成的任何损失承担责任。 ## 许可证 MIT 许可证 — 版权所有 (c) 2026 G4MEOVER18 参见 [LICENSE](LICENSE)
标签:argon2, bcrypt, Cisco, DOS头擦除, hashcat, hashID, JSON导出, MD5, NTLM, Potfile, Python, SHA, SysWhispers, VEH, 哈希识别, 字典攻击, 密码工具, 密码破解, 掩码攻击, 无后门, 规则攻击, 进度条, 逆向工具