Hydra简介

攻击前准备

在前面的小节中,使用Burp Suite截断攻击者发起的一个表单请求

在本节中,使用THC Hydra攻击HTTP基本身份验证

1. 用户名字典

  • 除了前面小节中使用的密码列表以外,为了进行字典攻击,还需要一个用户名列表。

    假设已经进行了信息收集获得了几个有效地用户名。创建一个文本文件user_list.txt,在里面输入以下内容:

    2. 密码字典

    创建文本文档,文档名称top25_passwords,文本内容如下:

    123456

    Password 

    12345678

    qwerty

    12345

    123456789

    letmein

    1234567

    football

    iloveyou

    admin

    welcome

    monkey

    login

    abc123

    starwars

    123123

    dragon

    passw0rd

    master

    hello

    freedom

    whatever

    qazwsx

    trustno1

Hydra攻击HTTP基本身份验证 

 

1. 在Kali linux中打开Hydra

1.1 图形界面打开

1.2 输入命令hydra打开(推荐)

上图中,不输入任何参数时将显示基本帮助信息。

1.3 帮助信息介绍

-l LOGIN or -L FILE  login with LOGIN name, or load several logins from FILE

通过-L选项,可以使用用户名字典文件。

-p PASS  or -P FILE  try password PASS, or load several passwords from FILE

-P允许使用密码字典。还需要在后面跟上://服务器,以及端口号和服务选项。

2. 靶场

老师这里的靶场IP是192.168.22.130,同学们实验时要看清楚自己靶场的IP。

3. 写入命令发动攻击靶机

hydra -L user_list.txt  -P top25_passwords.txt -u -e ns http-get://192.168.22.130/WebGoat/

Hydra找到17个不同的用户名/密码组合,成功登陆到服务器。

命令中相关参数含义:

 -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基本身份验证发起请求。

 之后是://和目标服务器(192.168.56.11) 在下一个/之后,放置服务器的应用名,在本例中是请求身份验证的URL。没有指定端口,Hydra将尝试默认端口TCP80。

 

5. 字典存放路径

6. 总结

与其他身份验证方法(例如基于表单的身份验证方法)不同,基本身份验证在发送到服务器的内容、如何发送以及期望从服务器得到的响应方面是标准的。这允许攻击者和渗透测试人员节省宝贵的分析时间,这些工作涉及的参数包含用户名和密码、如何处理,发送这些参数以及如何区分成功响应和不成功响应。这是基本身份验证不被认为是安全机制的许多原因之一。

不建议在生产服务器上使用大量密码执行暴力破解,因为可能会中断服务、阻塞正常用户或触发保护机制。

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值