linux下的信息收集(hashcat工具的使用)

工具:hashcat
要准备好字典
字典合并及排序
$第一个和第二个之间是加密形式 第二个和第三个直接是编码值
1 MD5
2 blowfish
5 SHA-256
6 SHA-512

cat*.dic>file.txt

Linux下使用

sort -u file.txt>password.lst

1.使用的参数

即:hashcat [选项] 破解的哈希值或hash文件、hccapx文件 [字典|掩码|目录] …
Hccapxfile对应无线包,其对应破解哈希类型为“-m 2500 = WPA/WPA2”。
–help查看帮助
2.选项
(1)基础选项

-m, —hash-type=NUM           哈希类别,其NUM值参考其帮助信息下面的哈希类别值,其值为数字。如果不指定m值则默认指md5,例如-m 1800是sha512 Linux加密。
-a, --attack-mode=NUM         攻击模式,其值参考后面对参数。“-a 0”字典攻击,“-a 1” 组合攻击;“-a 3”掩码攻击。
-V, —version                            版本信息
-h, --help                                   帮助信息。
--quiet                                       安静的模式, 抑制输出

(2)基准测试

-b, --benchmark                       测试计算机破解速度和显示硬件相关信息

(3)杂项

--hex-salt                         salt值是用十六进制给出的
--hex-charset                  设定字符集是十六进制给出
--runtime=NUM              运行数秒(NUM值)后的中止会话
--status                            启用状态屏幕的自动更新
--status-timer=NUM       状态屏幕更新秒值
--status-automat             以机器可读的格式显示状态视图
--session                         后跟会话名称,主要用于中止任务后的恢复破解。

(4)文件

-o,  --outfile=FILE                   定义哈希文件恢复输出文件
--outfile-format=NUM            定义哈希文件输出格式,见下面的参考资料
--outfile-autohex-disable       禁止使用十六进制输出明文
-p,  --separator=CHAR         为哈希列表/输出文件定义分隔符字符
--show                                     仅仅显示已经破解的密码
--left                                         仅仅显示未破解的密码
--username                            忽略hash表中的用户名,对linux文件直接进行破解,不需要进行整理。
--remove                                移除破解成功的hash,当hash是从文本中读取时有用,避免自己手工移除已经破解的hash
--stdout                                  控制台模式
--potfile-disable                    不写入pot文件
--debug-mode=NUM           定义调试模式(仅通过使用规则进行混合),参见下面的参考资料
--debug-file=FILE                调试规则的输出文件(请参阅调试模式)
-e, --salt-file=FILE                定义加盐文件列表
--logfile-disable                    禁止logfile

(4) 资源

-c, --segment-size=NUM       字典文件缓存大小(M)
-n, --threads=NUM                 线程数
-s,  --words-skip=NUM          跳过单词数
-l, --words-limit=NUM            限制单词数(分布式)

(5)规则

-r, --rules-file=FILE             使用规则文件: -r 1.rule,
-g,  --generate-rules=NUM       随机生成规则
--generate-rules-func-min= 每个随机规则最小值
--generate-rules-func-max=每个随机规则最大值
--generate-rules-seed=NUM  强制RNG种子数

(6)自定义字符集

-1,  --custom-charset1=CS  用户定义的字符集
-2, --custom-charset2=CS  例如:
-3, --custom-charset3=CS --custom-charset1=?dabcdef : 设置?1 为0123456789abcdef
-4, --custom-charset4=CS   -2mycharset.hcchr : 设置 ?2 包含在mycharset.hcchr
文件

(7)攻击模式
*大小写转换攻击:

--toggle-min=NUM              在字典中字母的最小值
--toggle-max=NUM              在字典中字母的最大值

*** 使用掩码攻击模式:**

--increment                   使用增强模式
--increment-min=NUM          增强模式开始值
--increment-max=NUM          增强模式结束值

*** 排列攻击模式**

--perm-min=NUM                过滤比NUM数小的单词
--perm-max=NUM               过滤比NUM数大的单词

*** 查找表攻击模式:**

-t, --table-file=FILE             表文件
       --table-min=NUM               在字典中的最小字符值
       --table-max=NUM               在字典中的最大字符值

*** 打印攻击模式:**

--pw-min=NUM                  如果长度大于NUM,则打印候选字符
--pw-max=NUM                 如果长度小于NUM,则打印候选字符
--elem-cnt-min=NUM            每个链的最小元素数
--elem-cnt-max=NUM            每个链的最大元素数
--wl-dist-len                从字典表中计算输出长度分布
--wl-max=NUM             从字典文件中加载NUM个单词,设置0禁止加载。
--case-permute             在字典中对每一个单词进行反转

(8)参考
输出文件格式:

1 = hash[:salt]
2 = plain 明文
3 = hash[:salt]:plain
4 = hex_plain
5 = hash[:salt]:hex_plain
6 = plain:hex_plain
7 = hash[:salt]:plain:hex_plain
8 = crackpos
9 = hash[:salt]:crackpos
10 = plain:crackpos
11 = hash[:salt]:plain:crackpos
12 = hex_plain:crackpos
13 = hash[:salt]:hex_plain:crackpos
14 = plain:hex_plain:crackpos
15 = hash[:salt]:plain:hex_plain:crackpos
* 调试模式输出文件 (for hybrid mode only, by using rules):

1 = save finding rule
2 = save original word
3 = save original word and finding rule
4 = save original word, finding rule andmodified plain

*** 内置的字符集:**

?l = abcdefghijklmnopqrstuvwxyz 代表小写字母
?u = ABCDEFGHIJKLMNOPQRSTUVWXYZ 代表大写字母
?d = 0123456789 代表数字
?s = !"#$%&'()*+,-./:;<=>?@[\]^_`{|}~  代表特殊字符
?a = ?l?u?d?s 大小写数字及特殊字符的组合
?b = 0x00 - 0xff

*攻击模式

0 = Straight (字典破解)
1 = Combination (组合破解)
2 = Toggle-Case (大小写转换)
3 = Brute-force(掩码暴力破解)
4 = Permutation(序列破解)
5 = Table-Lookup(查表破解)
6 = Hybrid dict + mask 字典加掩码破解
7 = Hybrid mask + dict 掩码+字典破解
8 = Prince(王子破解)

3.破解原则:先易后难
(1)利用收集的公开字典进行破解
(2)使用1-8位数字进行破解。
(3)使用1-8位小写字母进行破解
(4)使用1-8位大写字母进行破解
(5)使用1-8位混合大小写+数字+特殊字符进行破解
3.1破解规则
(1)字典攻击

-a 0 password.lst

(2)1到8为数字掩码攻击

-a 3 --increment --increment-min 1--increment-max 8 ?d?d?d?d?d?d?d?d –O

?d代表数字,可以换成小写字母?l,大写字母?u,特殊字符?s,大小写字母+特殊字符?a,–O表示最优化破解模式,可以加该参数,也可以不加该参数。
(3)8为数字攻击

-a 3 ?d?d?d?d?d?d?d?d

同理可以根据位数设置为字母大写、小写、特殊字符等模式。
(4)自定义字符
现在纯数字或者纯字母的密码是比较少见的,根据密码专家对泄漏密码的分析,90%的个人密码是字母和数字的组合,可以是自定义字符了来进行暴力破解,Hashcat支持4个自定义字符集,分别是 -1 -2 -3 -4。定义时只需要这样-2 ?l?d ,然后就可以在后面指定?2,?2表示小写字母和数字。这时候要破解一个8位混合的小写字母加数字:

Hashcat.exe -a 3 --force -2 ?l?d  hassh值或者hash文件  ?2?2?2?2?2?2?2?2

例如破解dz小写字母+数字混合8位密码破解:

Hashcat -m 2611  -a 3 -2 ?l?d  dz.hash    ?2?2?2?2?2?2?2?2

(5)字典+掩码暴力破解
Hashcat还支持一种字典加暴力的破解方法,就是在字典前后再加上暴力的字符序列,比如在字典后面加上3为数字,这种密码是很常见的。使用第六种攻击模式:

   a-6 (Hybrid dict + mask)

如果是在字典前面加则使用第7中攻击模式也即( a-7 = Hybridmask + dict),下面对字典文件加数字123进行破解:

H.exe -a 6 ffe1cb31eb084cd7a8dd1228c23617c8  password.lst ?d?d?d

假如ffe1cb31eb084cd7a8dd1228c23617c8的密码为password123,则只要password.lst包含123即可。
(6)掩码+字典暴力破解

H.exe -a 7  ffe1cb31eb084cd7a8dd1228c23617c8  password.lst ?d?d?d

假如ffe1cb31eb084cd7a8dd1228c23617c8的密码为123password,则只要password.lst包含password即可。
(7)大小写转换攻击,对password.lst中的单词进行大小写转换攻击

H.exe-a 2  ffe1cb31eb084cd7a8dd1228c23617c8  password.lst

4.获取并整理密码hashes值
4.2linux哈希值整理

cat /etc/shadow>myshadow.txt

对myshadow.txt进行整理仅仅保留加密部分
也可保留用户名部分 如果带用户名,则在破解是需要加–username参数。
4.3其它哈希值整理
一般来说一类密码哈希值单独保存为一个文件,有的密码带salt,因此需要完整的哈希值,例如discuz!论坛的密码值为:

ffe1cb31eb084cd7a8dd1228c23617c8:f56463

前段值类似md5加密,后段值为salt,如果没有salt值,其破解结果就相差甚远了。

5.破解hash值
5.1针对不同加密类型进行破解
(1)**linux sha512crypt 6 6 6, SHA512 (Unix)**加密方式:

hashcat  -m 1800 sha512linux.txt p.txt

(2)**linux sha256crypt 5 5 5, SHA256 (Unix)**加密方式:

hashcat  -m 7400 sha256linux.txt p.txt

(3)**linux下md5crypt, MD5 (Unix), Cisco-IOS 1 1 1 (MD5)**加密方式:

hashcat   -m 500  linuxmd5.txt p.txt

(4)linux下bcrypt 2 ∗ 2* 2, Blowfish加密方式:

hashcat   -m 3200  linuxmd5.txt p.txt

注意:在破解过程中成功则会直接输出,s可看破解状态,p暂停,s继续破解,q退出破解。
5.破解总结及技巧
5.1 GPU破解模式使用自动优化
在使用GPU模式进行破解时,可以使用-O参数自动进行优化
5.2 暴力破解一条md5值
(1)9位数字破解

Hashcat64.exe-a 3 --force d98d28ca88f9966cb3aaefebbfc8196f ?d?d?d?d?d?d?d?d?d

单独破解一条md5值需要加force参数
(2)9位字母破解

Hashcat64.exe-a 3 --force d98d28ca88f9966cb3aaefebbfc8196f ?l?l?l?l?l?l?l?l?l

5.3 破解带盐discuz密码
(1)数字破解
7位数字,7秒时间破解完成任务。

Hashcat64.exe-a 3 --force -m 2611 ffe1cb31eb084cd7a8dd1228c23617c8:f56463 ?d?d?d?d?d?d?d

8位数字破解,9秒时间破解完成任务。:

Hashcat64.exe-a 3 --force -m 2611 ffe1cb31eb084cd7a8dd1228c23617c8:f56463 ?d?d?d?d?d?d?d?d

9位数字破解,9秒时间破解完成任务。

Hashcat64.exe-a 3 --force -m 2611 ffe1cb31eb084cd7a8dd1228c23617c8:f56463 ?d?d?d?d?d?d?d?d?d

5.4 字母破解
(1)6位小写字母

Hashcat64.exe-a 3 --force -m 2611 ffe1cb31eb084cd7a8dd1228c23617c8:f56463 ?l?l?l?l?l?l

(2)7位小写字母

Hashcat64.exe-a 3 --force -m 2611 ffe1cb31eb084cd7a8dd1228c23617c8:f56463 ?l?l?l?l?l?l?l

(3)8位小写字母

Hashcat64.exe-a 3 --force -m 2611 ffe1cb31eb084cd7a8dd1228c23617c8:f56463 ?l?l?l?l?l?l?l?l

9分钟左右完成破解任务
(4)9位小写字母

Hashcat64.exe-a 3 --force -m 2611 ffe1cb31eb084cd7a8dd1228c23617c8:f56463 ?l?l?l?l?l?l?l?l?l-O

5.5 字母加数字

Hashcat64.exe-a 3 --force -m 2611 -2 ?d?l ffe1cb31eb084cd7a8dd1228c23617c8:f56463?2?2?2?2?2?2?2

(3)7位大写字母

Hashcat64.exe-a 3 –force –m 2611 ffe1cb31eb084cd7a8dd1228c23617c8:f56463 ?u?u?u?u?u?u?u

(4)6到8位数字破解

Hashcat64.exe-a 3 –force –m 2611 ffe1cb31eb084cd7a8dd1228c23617c8:f56463--increment --increment-min 6 --increment-max 8 ?l?l?l?l?l?ll?l

5.6 使用自定义破解
(1)使用数字加字母混合6位进行破解

Hashcat64.exe-a 3 --force -m 2611 -2 ?d?l ffe1cb31eb084cd7a8dd1228c23617c8:f56463?2?2?2?2?2?2 -O

(2)使用数字加字母混合7位进行破解,破解时间4分16秒

Hashcat64.exe-a 3 --force -m 2611 -2 ?d?l ffe1cb31eb084cd7a8dd1228c23617c8:f56463?2?2?2?2?2?2?2 –O

(3)使用数字加字母混合8位进行破解

Hashcat64.exe-a 3 --force -m 2611 -2 ?d?l ffe1cb31eb084cd7a8dd1228c23617c8:f56463?2?2?2?2?2?2?2?2 -O

5.7 字典破解模式

Hashcat64.exe-a 0 --force -m 2611 ffe1cb31eb084cd7a8dd1228c23617c8:f56463 password.lst

使用字典文件夹下的字典进行破解:

Hashcat32.exe-m 300 mysqlhashes.txt –remove -o mysql-cracked.txt ..\dictionaries\*

5.8 会话保存及恢复破解
(1)使用mask文件规则来破解密码

hashcat-m 2611 -a 3 --session mydz dz.hash masks/rockyou-7-2592000.hcmask

(2)恢复会话

hashcat--session mydz --restore

5.9 掩码破解

mask规则文件位于masks下,例如D:\PentestBox\hashcat-4.1.0\masks,执行破解设置为:
masks/8char-1l-1u-1d-1s-compliant.hcmask
masks/8char-1l-1u-1d-1s-noncompliant.hcmask
masks/rockyou-1-60.hcmask
masks/rockyou-2-1800.hcmask
masks/rockyou-3-3600.hcmask
masks/rockyou-4-43200.hcmask
masks/rockyou-5-86400.hcmask
masks/rockyou-6-864000.hcmask
masks/rockyou-7-2592000.hcmask

5.10 运用规则文件进行破解

Hashcat -m 300 mysqlhashes.txt–remove -o mysql-cracked.txt ..\dictionaries\* -r rules\best64.rule
hashcat -m 2611 -a 0 dz.hashpassword.lst  -r rules\best64.rule  -O
  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

FODKING

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值