目录
简介
THC Hydra(简称Hydra)是一个可以进行在线登录验证的工具,kali下是默认安装的,几乎支持所有协议的在线破解;这意味着它可以通过暴力的方式来尝试登录密码。
1.打开方式:
- 在Kali linux中打开Hydra
1.1 图形界面打开(两种打开方式)
1.2 输入命令hydra打开(推荐)
上图中,不输入任何参数时将显示基本帮助信息。
1.3 帮助信息介绍
**在kali中输入hydra -h可以查看hydra中的所有参数。
入hydra -h可以查看hydra中的所有参数。
**
1.4.具体的参数含义见下表:
参数名 | 介绍 |
---|---|
-R | 继续从上一次进度接着破解 |
-L | 指定破解的用户,对特定用户破解 |
–p小写) | 指定用户名字典 |
-P(大写) | 指定密码破解,少用,一般是采用密码字典 |
-e | 可选选项, |
-n | 空密码试探, |
-s | 可通过这个参数指定非默认端口 |
-S | 采用SSL链接 |
Hydra案例
2.靶场:
需要靶场的IP
我这里是192.168.22.130
3. 写入命令发动攻击靶机
这里我是用我指定的账号密码文件进行破解,如果像我一样自己创建账号密码进行破解,那么你在那个目录下创建的就需要在那个目录下操作,否则就需要加上绝对路径,并且我这里设置的线程很少,如果你感觉慢,那么可以使用多一点的线程来跑字典。
3.1命令中相关参数含义:
-L userlist.txt | 告诉Hydra从userlist.txt寻找username。 |
---|---|
-P | top25_password.txt,告诉Hydra从top25_password.txt中获得预期密码。 |
-u | Hydra将首先迭代用户名,而不是密码。这意味着Hydra将首先使用单个密码尝试所有的用户名,然后继续使用下一个密码。这将有助于防止账户锁定。 |
-e ns | Hydra尝试将一个空密码(n)和用户名作为密码添加到密码列表 |
http-get | 表示Hydra将使用GET方式对HTTP基本身份验证发起请求 |
4 字典推荐
4.1Kali自带密码字典
暴力破解能成功最重要的条件还是要有一个强大的密码字典!Kali默认自带了一些字典,在 /usr/share/wordlists 目录下
4.2.Dirb文件夹里的字典
4.3.该目录的字典文件含义如下
big.txt #大的字典 | |
---|---|
small.txt #小的字典 | |
catala.txt #项目配置字典 | |
common.txt #公共字典 | |
euskera.txt #数据目录字典 | |
extensions_common.txt #常用文件扩展名字典 | |
indexes.txt #首页字典 | |
mutations_common.txt #备份扩展名 | |
spanish.txt #方法名或库目录 | |
others #扩展目录,默认用户名等 | |
stress #压力测试 | |
vulns #漏洞测试 |
4.4Hydra密码生成器
参数 | 介绍 |
---|---|
-x MIN:MAX:CHARSET 密码暴力破解生成器 | MIN表示生成密码的最短长度;MAX表示生成密码的最长长度;CHARSET表示使用指定的字符生成密码,'a’表示所有的小写字母,'A’表示所有的大写字母,'1’表示所有的数字,对于其他字符,只需要添加在后面即可 |
-y | 使用方式见-x,它表示charset的字符是实际的字符,而不是正则表达式 |
-x 3:5:a | 生成的密码字典长度为3到5位,由所有的小写字母组成 |
-x 5:8:A1 | 生成的密码字典长度为3到5位,由所有的小写字母组成 |
-x 5:5/%,.- | 生成的密码字典长度为5位,只由’/ % , . -'这5种字符构成 |
-x 3:5:aA1 -y | 生成的密码字典长度为3到5位,且只由’a A 1’这三种字符组成 |
-x 3:5:aA1.-+# | 生成的密码字典长度为3到8位,由大小写字母+数字+.-+#进行组合。 |
5.总结
与其他身份验证方法(例如基于表单的身份验证方法)不同,基本身份验证在发送到服务器的内容、如何发送以及期望从服务器得到的响应方面是标准的。这允许攻击者和渗透测试人员节省宝贵的分析时间,这些工作涉及的参数包含用户名和密码、如何处理,发送这些参数以及如何区分成功响应和不成功响应。这是基本身份验证不被认为是安全机制的许多原因之一。不建议在生产服务器上使用大量密码执行暴力破解,因为可能会中断服务、阻塞正常用户或触发保护机制。