前言
hydra是著名黑客组织thc的一款开源的暴力破解密码工具,功能非常强大,kali下是默认安装的,几乎支持所有协议的在线破解。密码能否破解,在于字典是否强大。本文仅从安全角度去讲解工具的使用,请勿用于非法用途。
hydra参数讲解
hydra是区分大小写的
-R #继续从上一次进度接着破解。
-S #采用SSL链接。
-s #PORT 可通过这个参数指定非默认端口。
-l #LOGIN 指定破解的用户,对特定用户破解。
-L #FILE 指定用户名字典。
-p #PASS 小写,指定密码破解,少用,一般是采用密码字典。
-P #FILE 大写,指定密码字典。
-e #ns 可选选项,n:空密码试探,s:使用指定用户和密码试探。
-C #FILE 使用冒号分割格式,例如“登录名:密码”来代替-L/-P参数。
-M #FILE 指定目标列表文件一行一条。
-o #FILE 指定结果输出文件。
-f #在使用-M参数以后,找到第一对登录名或者密码的时候中止破解。
-t #TASKS 同时运行的线程数,默认为16。
-w #TIME 设置最大超时的时间,单位秒,默认是30s。
-v/-V #显示详细过程。
server #目标ip
service #指定服务名
OPT #可选项
使用方法:hydra <参数> <IP地址> <服务名>
操作演示
这里我为了演示写了两个弱口令文本,在真实环境中需要用到强大得字典。
破解ssh
hydra -L user.txt -P pass.txt -t 2 -vV -e ns 192.168.124.10 ssh
破解ftp
hydra ip ftp -l 用户名 -P 密码字典 -e ns -vV
破解teamspeak
hydra -l 用户名 -P 密码字典 -s 端口号 -vV ip teamspeak
破解pop3 hydra -l muts -P pass.txt my.pop3.mail pop3
这里就不依次说明了。
上文说到,破解的关键在于密码字典得强大与否。所以我们在破解过程中就需要思考,如何获取强大的字典呢。在Kali中内置了很多字典,路径如下:
cd /usr/share/wordlists/
输入ls
查看所有字典,这里详细举例两个目录的
dirb
big.txt #大的字典
small.txt #小的字典
catala.txt #项目配置字典
common.txt #公共字典
euskera.txt #数据目录字典
extensions_common.txt #常用文件扩展名字典
indexes.txt #首页字典
mutations_common.txt #备份扩展名
spanish.txt #方法名或库目录
others #扩展目录,默认用户名、默认密码等
stress #压力测试
vulns #漏洞测试
dirbuster
apache-user-enum-** #apache用户枚举
directories.jbrofuzz #目录枚举
directory-list-1.0.txt #目录列表
需要破解什么就使用什么字典。
光有这些还不够,有时候我们需要特定的字典,比如发现可以暴力破解四位数验证码,这就需要我们生成特定的字典。这样我们就要需要kali下的另一款工具了。
字典生成工具crunch
基本指令
crunch 最小位数 最大位数 指定生成范围
例如,我要生成由三位数和四位数生成的字典,且都有6789组成,如下图
我们还可以将生成的字典输出到特定文件中,格式如下
crunch 3 4 6789 >>/home/kali/Desktop/pass.txt
就分享到这里了。大家有什么小技巧可以留言。