导语:本文主要讲解Linux字典生成工具cewl,并学习更多的高级参数用法。
大家好,今天我们主要讲解Linux字典生成工具cewl,并学习更多的高级参数用法。
cewl介绍
cewl是一个ruby应用,爬行指定url的指定深度。也可以跟一个外部链接,结果会返回一个单词列表,这个列表可以扔到John the ripper工具里进行密码破解。cewl还有一个相关的命令行工具应用FAB,它使用相同的元数据提取技术从已下载的列表中创建作者/创建者列表。
链接:https://tools.kali.org/password-attacks/cewl
在终端中输入“cewl -h”,会显示所有的命令参数还有对应的描述。
语法:cewl <url> [options]
常规参数选项:
-h, –help:显示帮助。
-k, –keep:保存下载文件。
-d <x>, –depth <x>:爬行深度,默认2。
-m, –min_world_length:最小长度,默认最小长度为3。
-o, –offsite:允许爬虫访问其他站点。
-w, –write:将输出结果写入到文件。
-u, –ua <agent>:设置user agent。
-n, –no-words:不输出字典。
–with-numbers:允许单词中存在数字,跟字母一样。
-a, –meta:包括元数据。
–meta_file file:输出元数据文件。
-e, –email:包括email地址。
–email_file <file>:输入邮件地址文件。
–meta-temp-dir <dir>:exiftool解析文件时使用的临时目录,默认是/temp。
-c, –count:显示发现的每个单词的数量。
-v, –verbose:verbose。
–debug:提取调试信息。
认证
–auth_type:Digest或者basic认证。
–auth_user:用户名认证。
–auth_pass:密码认证。
代理
–proxy_host:代理主机。
–proxy_port:代理端口,默认8080。
–proxy_username:用户名代理。
–proxy_password:密码代理。
默认方法
输入下面的命令来爬行给定的url,指定爬行深度,并且输出单词列表,这个列表可以用作破解密码的字典。
cewl http://www.ignitetechnologies.in/
在文件中存储字典
为了进行记录维持,可读性更好和作为未来参考,我们通常将输出的单词列表保存到txt文件中,我们可以使用-w参数来保存输出结果到txt文件中,命令如下:
cewl http://www.ignitetechnologies.in/ -w dict.txt
命令执行完成之后,我们切换到dict.txt所在的目录,在本文中是/root,来查看下文件,看看输出结果是否已经保存
cat dict.txt
生成指定长度的字典
如果你想生成指定单词长度的字典,你可以使用-m参数,这个参数的意思是指定最小的单词长度:
cewl http://www.ignitetechnologies.in/ -m 9
上面这条命令长度最小为9的单词,如下图所示,它会爬行给定网站,然后输出最少是9个字符的单词列表:
从网站获取email地址
你可以使用-e参数来启用邮件参数,配合-n参数使用,-n参数是在爬行给定网站时隐藏生成的单词列表:
cewl http://www.ignitetechnologies.in/ -n -e
如图所示:成功找到网站中的一个邮件地址:
计算网站中单词重复的次数
如果你想统计网站中重复出现好几次的单词的数量,你可以使用-c参数来计数:
cewl http://www.ignitetechnologies.in/ -c
如下图所示,你可以看到给定网站中重复出现的单词的次数统计
增加爬行深度
如果你想增加爬行等级,来遍历网站中更多的单词来生成更大的字典,你可以使用-d参数,并指定一个爬行深度等级来进行更加深入的爬行,默认等级是2。
cewl http://www.ignitetechnologies.in/ -d 3
提取调试信息
你可以使用-d参数来启用调试模式,显示爬行网站时的错误和原始详细信息:
cewl http://www.ignitetechnologies.in/ --debug
Verbose模式
为了扩大网站的爬行结果来获取网站更加完整详细的信息,你可以加-v参数,也就是verbose模式。它不会生成字典,而是会dump网站上的信息。
cewl http://www.ignitetechnologies.in/ -v
生成alpha-numeric
如果你想生成字母数字字典,你可以使用—with-numbers参数
cewl http://testphp.vulnweb.com/ --with-numbers
从下图中你可以看到,这次我们生成了一个字母数字字典,如图:
cewl摘要/基础认证
如果存在一个认证页面来登录网站,那么上面的配置就行不通了,为了生成字典,我们需要使用下面的参数来绕过认证页面:
–auth_type: Digest/basic
–auth_user: Authentication username
–auth_pass: Authentication password
cewl http://192.168.1.105/dvwa/login.php --auth_type Digest --auth_user admin --auth_pass password -v
或者
cewl http://192.168.1.105/dvwa/login.php --auth_type basic --auth_user admin --auth_pass password -v
如下图所示,你可以看到http响应码是200,并且生成了字典
代理URL
如果网站使用了代理服务器,那么cewl的默认命令就无法生成字典了,比如下面这条命令:
cewl -w dict.txt http://192.168.1.103/wordpress/
不过你可以使用—proxy参数来开启代理URL,这样就可以生成字典了,比如下列命令:
cewl --proxy_host 192.168.1.103 --proxy_port 3128 -w dict.txt http://192.168.1.103/wordpress/
如下图所示,执行第二条命令之后,成功的输出了单词列表: