首页 » 学习笔记 » 正文

【密码攻击】Kali Linux之Crunch

目标系统实行了强安全措施

安装了所有补丁,没有任何已知的漏洞

获取目标系统的登录依据

不会触发报警

身份认证

你知道什么:
<账户密码,pin码,passphrase(密码文)>
你有什么:
<令牌,token,key,证书,密保,手机,Google验证器>
你是谁:
<指纹,视网膜,虹膜,掌纹,面部识别>
以上多种结合起来就是多因素验证

密码破解方法:

1.人工猜解
2.基于字典的暴力破解<目前主流的密码破解方式>
3.键盘空间字符破解
字典:来源互联网信息泄露,基于密码规则生成的字符组合

一个好的字典是破解成败的关键

Crunch就是构造密码规则的工具

crunch <min-len> <max-len> [<charset string>] [options]
charset string默认小写

例如:

crunch 6 6 123456789 -o START -d 2 -b 1mb / -c 100

-b 按照大小分割字典文件
-c 按行数分割字典文件
上述两个参数需要和-o START结合使用
-f 指定字符集文件 默认/usr/share/crunch/charset.lst
-d 同一字符的出现数量
-s 起始密码字符
-e 结束密码字符

使用示例:
54320代表生成的大小
11110是代表行数
file
加一个参数-o pass.txt,就会将生成的密码字典保存到pass.txt里面
file

crunch 9 9 0123456789qwertasdgzxcv -b 20m -o START
-b 20m是分割为多文件,一个20m

crunch 5 5 0123456789 -s 10000 -e 20000

字符集文件
/usr/share/crunch/charset.lst
file
使用字符集文件
crunch 5 5 -f /usr/share/crunch/charset.lst numeric-space
file

实际使用场景,比如爆破4位验证码,burp的number不好使,来试试这个
crunch 4 4 -f /usr/share/crunch/charset.lst numeric > 9999.txt
file
file

使用-p参数的时候,
crunch 1 2 -p 12345
前面的1 2 最大和最小的长度失效,与-s参数不兼容

创建一个1.txt
里面是
zzh
sec
com
然后使用参数:crunch 1 1 -q 1.txt
file

字典组合规则 -t参数

crunch 6 6 -t @,%%good^^
@:代表小写字母
,:代表大写字母
%:数字
^:符号

输出文件压缩 -z参数

crunch 4 4 -t @,%^ -o 1.txt -z 7z
其他压缩格式:gzip,bzip,lzma,7z的压缩比率比较大

示例:
crunch 5 5 -t zzh%% -p zzh sec com
file
crunch 5 5 -d 2@ -t @@@%%
file

一边生成字典,一边破解,实时生成实时破解,不会占用存储空间
但是对CPU的要求较高,速度会满一些
crunch 2 4 0123456789 | aircrack-ng 1.cap -e MyWIFI -w
aircrack-ng是破解无线wifi密码的一款工具