目的:
- 学习 hashcat 的基本使用方法
- 快速生成准确率较高的(基于情报)字典
- 用户名: yuxin(Administrator)
- 邮箱:yuxin@xxxx.com
- 现在时间:2020-08-30
部分开源情报:
- `YUXIN` 单亲家庭 有一女(`Liu Qian`)
管理员在 8月 25号 给女儿过的 16岁 生日
经测试系统要求密码不能低于 16 位,且包含字母与字符
某博短视频某内容某段对话:
- 女儿:妈妈也戴上(花环)
- 妈妈:哎哟,我都近 40 的人了,快放下快放下
管理员修改过一次密码:
- 881B78F846B2AE840EAB564290F666C2 => yuxin@admin19840918,
猜测密码组成习惯:
名称 + @admin + 生日(阴/阳历) + 特殊符号
分析:
# PASS
生成字典:
# 基本 raw
@admin
# 名称 + @admin + 生日年份 => yuxin@admin1980
for i in {1980..2004};do echo yuxin$(cat raw)$i;echo liuqian$(cat raw)$i; done > year.pass
$ wc -l year.pass
50 year.pass
# 生日后 4 位 + 特殊符号
hashcat --force --stdout -a 6 year.pass ?d?d?d?d?s > result.pass
$ wc -l result.pass
16500000 result.pass
$ head -4 uniq.pass
liuqian@admin19800000
liuqian@admin19800000!
liuqian@admin19800000"
liuqian@admin19800000#
清洗数据:
# 清洗数据(生成的时候已经确定不会出现重复项了,所以不需要清洗)
# cat result.pass | sort | uniq > uniq.pass
# wc -l uniq.pass
# 16500000 uniq.pass
破解:
$ hashcat --force -m 1000 hash result.pass
4b205e1cc77b6b1895719d54d644b3a7:yuxin@admin20040707,
管理员出于方便记忆只是将生日改动了一下,老毛病了
网友评论