暴力破解密码工具Hydra
1、介绍
注:本文只从学习角度讨论工具,禁止用做非法用途,若产生后果与本人无关
弱口令应该是渗透过程中最常见也是最容易突破的入口,尽管现在弱口令越来越被重视,但仍有一些地方存在弱口令,特别是在内网。所以暴力破解密码的工具尤为重要。此外,定制化的字典同样需要利用暴力破解密码工具使用,有关定制化字典的内容,可以看我之前的这篇文章。
https://www.onctf.com/posts/7f4903a6.html
通常爆破web页面的密码都是用burp,但burp不能爆ssh之类的密码,所以有局限性,而hydra几乎支持所有协议的密码破解,通用性更高,一个工具解决所有的爆破需求,熟练之后会非常方便。
2、安装方法
安装这个没什么难度,不在这里赘述了,mac端也可以直接安装
3、参数说明
一张思维导图说明常用参数
4、使用方法
1)破解ssh
这是hydra最常用的用法
1 |
|
详细分析一下各参数(参考前面的参数说明)
-L就是指定一个用户字典,如果小写l就是指定某一个用户名
-P就是指定一个密码字典,如果小写p就是指定某一个密码
-V是显示枚举过程
-e nsr需要详细讲一下,见如下所述
在参数说明里介绍了-e <ns>但是大部分人看了肯定是模凌两可,借此机会详细讲解一下
其实这个参数的本质就是多加了几个密码,n代表密码为空,s代表密码=用户名,r代表密码=用户名的反转
我利用一个例子演示一下
1 |
|
这个112.txt字典里只有”12345”,”33333”,”orange”这三个密码,但爆破的时候还有三个密码在前面,可以看到第一行密码=账号,第二行密码为空,第三行密码=用户名的反转
2)破解ftp
1 |
|
3)破解get型web登录
1 |
|
4)破解post型web登录
注:目前大部分的登录都是post型,但我们通常用burp爆破会更方便一点,这里还是详细也讲解一下。
以下是DC4靶场一个web页面登录爆破
1 |
|
解释一下各参数
前面几个参数不用解释了,看到http-post-form这里,就是指定爆破类型是post,接着双引号里面的内容是被两个冒号分割开来的,我们一个个看
/login.php
username=^USER^&password=^PASS^
S=logout
第一个指定登陆页面的路径
第二个指定页面上用户名和密码这两个输入框的name属性,^USER^和^PASS^是固定写法,意思是把字典里面的账号密码填在这个位置
第三个中的S代表是登录成功页面显示的内容,如果不加S就是登录失败页面显示的内容
第二和第三个不太好理解,我截两张图就方便理解了
这是登录页面的源码,可以看到input输入框的name属性为username和password
这是成功登录后显示的页面,可以看到页面上有logout字样。
其实正常来说我们只能看到登录失败的页面内容,如果登录成功了,那还爆破密码干什么,除非就是有普通用户的账户,可以看到登录成功页面的样子。所以大多数情况下,我们这个参数写的还是登录失败页面的内容,如下:
1 |
|
可以看到这里的最后一个冒号后面没有S=,而是直接跟着登录失败页面的内容,而且再注意一点,前面多了一个submit=login,这个其实就是看post请求里怎么写的,因为请求里有这个参数,所以我们就得加上。
5)破解mysql
1 |
|
6)破解https
1 |
|
7)破解teamspeak(语音通讯工具)
1 |
|
8)破解cisco
1 |
|
9)破解smb
1 |
|
10)破解http-proxy协议
1 |
|
11)破解rdp(windows远程登录)
1 |
|
12)破解pop3邮箱
1 |
|
本博客所有文章除特别声明外,均采用 CC BY-SA 4.0 协议 ,转载请注明出处!