707
社区成员




简介:
THC Hydra(简称Hydra)是一个可以进行在线登录验证的工具,kali下是默认安装的,几乎支持所有协议的在线破解;这意味着它可以通过暴力的方式来尝试登 录密码。
打开方式:
1. 在Kali linux中打开Hydra
1.1 图形界面打开
1.2 输入命令hydra打开(推荐)
上图中,不输入任何参数时将显示基本帮助信息。
1.3 帮助信息介绍
在kali中输入hydra -h可以查看hydra中的所有参数。
具体的参数含义见下表:
参数名 参数含义
-R 继续从上一次进度接着破解
-l 指定破解的用户,对特定用户破解
-L 指定用户名字典
-p 小写,指定密码破解,少用,一般是采用密码字典
-P 大写,指定密码字典
-S 大写,采用SSL链接
-s 小写,可通过这个参数指定非默认端口
-e 可选选项,n:空密码试探,s:使用指定用户和密码试探
-t 同时运行的线程数,默认为16
-C 使用冒号分割格式,例如“登录名:密码”来代替 -L/-P 参数
-M 指定目标列表文件一行一条
-o 指定结果输出文件
-f 在使用-M参数以后,找到第一对登录名或者密码的时候中止破解
-w 设置最大超时的时间,单位秒,默认是30s
-v / -V 显示详细过程
server 目标ip
service 指定服务名,支持的服务和协议
靶场:
需要靶场的IP 我这里是192.168.22.130
3. 写入命令发动攻击靶机
hydra -L user_list.txt -P top25_passwords.txt -u -e ns http-get://192.168.22.130/WebGoat/
命令中相关参数含义:
-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基本身份验证发起请求。
暴力破解能成功最重要的条件还是要有一个强大的密码字典!Kali默认自带了一些字典,在 /usr/share/wordlists 目录下
Dirb文件夹里的
该目录的字典文件含义如下
big.txt #大的字典
small.txt #小的字典
catala.txt #项目配置字典
common.txt #公共字典
euskera.txt #数据目录字典
extensions_common.txt #常用文件扩展名字典
indexes.txt #首页字典
mutations_common.txt #备份扩展名
spanish.txt #方法名或库目录
others #扩展目录,默认用户名等
stress #压力测试
vulns #漏洞测试
总结
与其他身份验证方法(例如基于表单的身份验证方法)不同,基本身份验证在发送到服务器的内容、如何发送以及期望从服务器得到的响应方面是标准的。这允许攻击者和渗透测试人员节省宝贵的分析时间,这些工作涉及的参数包含用户名和密码、如何处理,发送这些参数以及如何区分成功响应和不成功响应。这是基本身份验证不被认为是安全机制的许多原因之一。
不建议在生产服务器上使用大量密码执行暴力破解,因为可能会中断服务、阻塞正常用户或触发保护机制