hydra的最新版本为hydra 7.6,它支持afp、cisco aaa、cisco auth、cisco enable、cvs、firebird、ftp、uhttp-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和v2)、subversion、teamspeak(ts2)、telnet、vmware-auth、vnc、xmpp等类型密码的破解。
hydra可以在debian和ubuntu等环境下安装和使用。
如果是debian和ubuntu发行版,会自带hydra,可直接使用apt-get命令在线安装,命令如下。
如果要使用redhat/fedora发行版的源码包编译安装,需要先安装相关依赖包,命令如下。
centos的安装命令如下。
bt5和kali都默认安装了hydra。在kali中,依次单击“kali linux”→“password attacks”→“online attacks”→“hydra”选项即可打开hydra。在centos终端中,输入命令“/usr/local/bin/hydra”即可打开该暴力破解工具。除此之外,还可以通过“hydra-wizard.sh”命令进行向导式设置来密码破解。
如果不安装libssh,运行hydra破解账号时会出现错误。下图所示,显示错误提示信息“[error] compiled without libssh v0.4.x support, module is not available!”。在centos下运行如下命令即可解决此问题。
hydra命令示例如下。
l login:指定破解的用户名称,对特定用户破解。
l file:从文件中加载用户名进行破解。
p pass:小写字母“p”,指定密码破解,少用,一般采用密码字典。
p file:大写字母“p”,指定密码字典。
c file:使用冒号分割格式,如“登录名:密码”代替“-l”和“-p”参数。
e nsr:可选选项,“n”表示空密码试探,“s”表示使用指定用户和密码试探。
t tasks:同时运行的连接的线程数,每一台主机默认为16。
m file:指定服务器目标列表文件为每行1条。
w time:设置最大超时时间,单位为秒,默认为30秒。
o file:指定结果输出文件。
f:在使用“-m”参数以后,在找到第1对登录名或者密码时中止破解。
v / -v:显示详细过程。
r:继续上一次破解。
s:采用ssl链接。
s port:可通过这个参数指定非默认端口。
u:服务模块使用细节。
h:更多的命令行选项(完整的帮助文档)。
server:目标服务器名称或者ip地址(使用此选项或“-m”选项)。
service:指定服务名,支持的服务和协议包括telnet、ftp、pop3[-ntlm]、imap[-ntlm]、smb、smb nt、http[s]-{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、ssh2、smtp-auth[-ntlm]、pcanywhere、teamspeak、sip、vmauthd、firebird、ncp、afp等。
opt:一些服务模块支持额外的输入(“-u”选项用于获取模块的帮助信息)。
本节给出hydra的用法实例。
破解ssh账号有两种方式,一种是指定账号破解,另一种是指定用户列表破解,命令如下。
例如,输入命令“hydra -l root -p pwd2.dic -t 1 -vv -e ns 192.168.44.139 ssh”,对ip地址为192.168.44.139的root账号密码进行破解,破解成功后显示其详细信息如下。
输入命令“hydra -l root -p pwd2.dic -t 1 -vv -e ns -o save.log 192.168.44.139 ssh”,将扫描结果保存在save.log文件中,使用“cat save.log”命令查看扫描结果,如下。
对ftp服务器(192.168.56.101)进行密码破解。
(1)hydra -l 用户名 -p 密码字典 -s 80 ip http-post-form "/admin/login.php: username= ^user^ &password=^pass^&submit=login:sorry password"
以上示例表示对192.168.0.115进行破解,需要定义登录的url,以及设置登录验证和错误登录标记,效果如图。
(2)对admin密码进行破解
“-t”表示同时线程数为3;“-l”表示用户名是“admin”,字典为pass.txt,保存为out.txt;“-f”表示破解1个密码就停止;“192.168.0.115”表示目标ip地址;“http-post-form”表示采用http的post方式提交表单密码破解;“
”中的内容是错误猜解的返回信息提示。
破解效果如图。
本文选自《黑客攻防:实战加密与解密》。
想及时获得更多精彩文章,可在微信中搜索“博文视点”或者扫描下方二维码并关注。