工具
Metasploit Framework
Nmap
SQLMap
Dirb
Gobuster
Netcat
反弹shell
Hydra
wfuzz
wpscan
searchsploit
字典
arp-scan
hashcat
Netdiscover
Cobalt Strike
Goby
Nessus
Xray
Nuclei
-
+
首页
hashcat
Hashcat 是一个开源的、基于规则的、高性能的密码破解工具,主要用于通过计算哈希值(Hash)反向推导出原始明文密码。 ## 定位 Hashcat 的核心功能是**对已知的哈希值(密码的哈希加密结果)进行 “反向破解”**,通过比对计算结果与目标哈希值,找到对应的明文密码。其本质是利用计算机的计算能力,通过各种攻击策略(如字典匹配、暴力尝试等),还原哈希值对应的原始密码。 > 支持的hash类型 Hashcat 支持**几乎所有主流的哈希算法**,覆盖操作系统、数据库、应用程序等多种场景,常见包括: - 基础哈希:MD5、SHA-1、SHA-256、SHA-512 等; - 操作系统哈希:Windows NTLM、LM,Linux 的 DES、SHA-512(基于 /etc/shadow),macOS 的 PBKDF2 等; - 数据库哈希:MySQL 哈希、PostgreSQL 哈希、Oracle 哈希等; - 应用 / 协议哈希:HTTP 摘要认证(如 MD5-Crypt)、WiFi 密码哈希(WPA/WPA2 握手包)、SSH 私钥密码哈希等; - 强哈希算法(带盐值或迭代计算):bcrypt、scrypt、Argon2、PBKDF2 等(这类算法破解难度高,需更强计算能力)。 完整支持列表可通过 `hashcat --help` 或官方文档查询,且版本持续更新扩展。 ## 攻击模式 基础语法: ```bash hashcat [options]... hash|hashfile|hccapxfile [dictionary|mask|directory]... 常用语法格式: hashcat -m <hash_type> -a <attack_mode> <hash_file> <mask_or_wordlist> [options] ``` | 攻击模式 | 命令选项 | 描述 | 应用场景 | | ------------ | ----------- | ------------------------------------------------------------ | ------------------------------------------------------------ | | **字典攻击** | -a 0 | 使用一个或多个字典文件中的单词进行尝试。 | 最常见、最高效的初始攻击方式。 | | **组合攻击** | -a 1 | 将两个字典中的单词进行组合(如 pass + 123 = pass123)。 | 破解用户将简单密码组合在一起的情况。 | | **掩码攻击** | -a 3 | 基于用户密码的已知模式(如 大写+小写+数字)进行攻击。 | 当你知道密码结构(如 Sa@2024)时极其高效。 | | **混合攻击** | -a 6 / -a 7 | **字典 + 掩码** 或 **掩码 + 字典**。 | 在字典单词前后添加固定格式的后缀/前缀(如 password123, 123password)。 | | **规则攻击** | -r | 对字典中的单词应用一系列变形规则(如大小写变换、字符替换、前后追加等)。 | **密码审计的黄金标准**。能极大地扩展字典的覆盖面,模拟人类创建密码的复杂习惯。 | | **暴力攻击** | -a 3 | 尝试指定字符集内的所有可能组合。 | | > 标准的工作流程 **获取哈希**:通过渗透测试手段(如提取 SAM 文件、抓取网络数据包、获取 /etc/shadow 文件等)获得目标密码哈希。 **识别哈希类型**:使用 `hashid` 或 `hash-identifier` 等工具,或依靠经验识别哈希的类型,以确定 Hashcat 的 `-m` 参数。 **选择攻击模式**:根据你对目标用户密码习惯的了解,选择合适的攻击模式(`-a`)。 **准备资源**: - **字典文件**:如 `rockyou.txt`、`SecLists` 等。 - **规则文件**:如 `best64.rule`、`d3ad0ne.rule` 等(通常内置在 Kali Linux 的 `/usr/share/hashcat/rules/` 目录下)。 - **掩码**:定义密码模式。 **执行破解**:运行 Hashcat 命令。 **分析结果**:破解成功后,Hashcat 会将结果保存在输出文件(`--outfile`)或在终端显示。结果文件通常位于 `~/.hashcat/hashcat.potfile`。 ## 示例 > 用字典破解 MD5 哈希(哈希类型编号 0) ```bash hashcat -m 0 -a 0 hashes.txt rockyou.txt # -m 0:指定哈希类型为 MD5(-m 后接算法编号,可通过 hashcat --help 查) # -a 0:指定攻击模式为字典攻击 # hashes.txt:存放目标哈希值的文件(每行一个哈希) # rockyou.txt:字典文件 ``` > 用掩码攻击破解 8 位数字密码的 NTLM 哈希(NTLM 编号 100) ```bash hashcat -m 100 -a 3 hashes.txt ?d?d?d?d?d?d?d?d # -m 100:NTLM 哈希类型 # -a 3:掩码攻击模式 # ?d?d?d?d?d?d?d?d:8位数字掩码(00000000 到 99999999) ```
毛林
2025年10月9日 17:11
转发文档
收藏文档
上一篇
下一篇
手机扫码
复制链接
手机扫一扫转发分享
复制链接
Markdown文件
PDF文档(打印)
分享
链接
类型
密码
更新密码