一个强大实用的黑客暴力破解字典建立工具
地址: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