一个强大实用的黑客暴力破解字典建立工具
地址:https://github.com/LandGrey/pydictor.git
简单示例
生成字典
1
|
python pydictor.py --sedb
|
合并去重
1
|
python pydictor.py -tool uniqbiner /my/all/dict/
|
多字典文件组合工具
1
|
python pydictor.py -tool hybrider heads.txt some_others.txt tails.txt
|
使用pydictor有个窍门: 时刻清楚你想要什么样子的字典.
pydictor可以生成的所有字典的类型及其说明
归属 |
类别 |
标识符 |
描述 |
支持功能代号 |
core |
base |
C1 |
基础字典 |
F1 F2 F3 F4 |
core |
char |
C2 |
自定义字符集字典 |
F1 F2 F3 F4 |
core |
chunk |
C3 |
排列组合字典 |
ALL |
core |
conf |
C4 |
配置语法生成字典 |
ALL |
core |
extend |
C5 |
规则扩展字典 |
ALL |
core |
sedb |
C6 |
社会工程学字典 |
ALL |
tool |
combiner |
T1 |
字典合并工具 |
|
tool |
comparer |
T2 |
字典比较相减工具 |
ALL |
tool |
counter |
T3 |
词频统计工具 |
ALL |
tool |
handler |
T4 |
筛选处理原有字典工具 |
ALL |
tool |
uniqbiner |
T5 |
先合并后去重工具 |
ALL |
tool |
uniqifer |
T6 |
字典去重工具 |
ALL |
tool |
hybrider |
T7 |
多字典文件组合工具 |
F1 F2 F3 F4 |
plugin |
birthday |
P1 |
生日日期字典插件 |
ALL |
plugin |
ftp |
P2 |
关键词生成ftp密码字典插件 |
ALL |
plugin |
pid4 |
P3 |
身份证后四位字典插件 |
ALL |
plugin |
pid6 |
P4 |
身份证后六位字典插件 |
ALL |
plugin |
pid8 |
P5 |
身份证后八位字典插件 |
ALL |
plugin |
scratch |
P6 |
网页原始关键词字典插件 |
ALL |
字典操作功能及说明对照表
功能 |
功能代号 |
说明 |
len |
F1 |
定义长度范围 |
head |
F2 |
添加前缀 |
tail |
F3 |
添加后缀 |
encode |
F4 |
编码或自定义加密方法 |
occur |
F5 |
字母、数字、特殊字符出现次数范围筛选 |
types |
F6 |
字母、数字、特殊字符各种类数范围筛选 |
regex |
F7 |
正则筛选 |
level |
F8 |
字典级别筛选 |
leet |
F9 |
1337 模式 |
repeat |
F10 |
字母、数字、特殊字符连续出现次数范围筛选 |
支持的编码或加密方式
方式 |
描述 |
none |
默认方式, 不进行任何编码 |
b16 |
base16 编码 |
b32 |
base32 编码 |
b64 |
base64 编码 |
des |
des 算法, 需要根据情况修改代码 |
execjs |
执行本地或远程js函数, 需要根据情况修改代码 |
hmac |
hmac 算法, 需要根据情况修改代码 |
md5 |
md5 算法输出32位 |
md516 |
md5 算法输出16位 |
rsa |
rsa 算法 需要根据情况修改代码 |
sha1 |
sha-1 算法 |
sha256 |
sha-256 算法 |
sha512 |
sha-512 算法 |
url |
url 编码 |
test |
一个自定义编码方法的示例 |
occur 功能
1
2
|
用法 : --occur [字母出现次数的范围] [数字出现次数的范围] [特殊字符出现次数的范围]
示例: --occur ">=4" "<6" "==0"
|
types 功能
1
2
|
用法 : --types [字母种类的范围] [数字种类的范围] [特殊字符种类的范围]
示例: --types "<=8" "<=4" "=0"
|
repeat 功能
1
2
|
用法 : --repeat [字母连续出现次数范围] [数字连续出现次数范围] [特殊字符连续出现次数范围]
示例: --repeat "<=3" ">=3" "==0"
|
regex 功能
1
2
|
用法 : --regex [正则表达式]
示例: --regex "^z.*?g$"
|
level 功能
1
2
|
用法 : --level [level]
示例: --level 4 /funcfg/extend.conf配置文件中level大于等于4的项目会被启用
|
leet功能
默认置换表
1
2
3
4
5
6
7
8
|
leet字符 = 替换字符,可以修改/funcfg/leet_mode.conf更改替换表
a = 4
b = 6
e = 3
l = 1
i = 1
o = 0
s = 5
|
模式代码
1
2
3
4
5
|
0 默认模式,全部替换
1 从左至右, 将第一个遇到的leet字符全部替换
2 从右至左, 将第一个遇到的leet字符全部替换
11-19 从左至右, 将第一个遇到的leet字符最多替换 code-10 个
21-29 从右至左, 将第一个遇到的leet字符最多替换 code-20 个
|
代码作用表
代码 |
原字符串 |
被替换后的新字符串 |
0 |
as a airs trees |
45 4 41r5 tr335 |
1 |
as a airs trees |
4s 4 4irs trees |
2 |
as a airs trees |
a5 a air5 tree5 |
11 |
as a airs trees |
4s a airs trees |
12 |
as a airs trees |
4s 4 airs trees |
13 |
as a airs trees |
4s 4 4irs trees |
14 |
as a airs trees |
4s 4 4irs trees |
… |
as a airs trees |
4s 4 4irs trees |
21 |
as a airs trees |
as a airs tree5 |
22 |
as a airs trees |
as a air5 tree5 |
23 |
as a airs trees |
a5 a air5 tree5 |
24 |
as a airs trees |
a5 a air5 tree5 |
… |
as a airs trees |
a5 a air5 tree5 |
参考:https://cloud.tencent.com/developer/article/1180351