如何用THC-Hydra & Burp套件破解网上表格密码
BY OCCUPYTHEWEB 05/13/2016 8:29 AM PASSWORD CRACKING 在之前的教程中,我介绍了破解在线密码的两个基本工具——篡改数据和THC-Hydra。在该指南中,我将继续提供另一个教程,介绍如何在web表单中使用THC-Hydra,现在开始。尽管您可以为此目的使用篡改数据,但我想向您介绍Kali中内置的另一个工具Burp套件。 步骤1:打开THC-Hydra 启动Kali和打开THC-Hydra从应用程序-> Kali Linux ->密码攻击->在线攻击-> hydra。
步骤2:获取Web表单参数
为了能够破解web表单用户名和密码,需要确定web表单登录页面的参数以及表单如何响应错误/失败的登录反馈。必须确定的关键参数是:
网站的IP地址 URL type 形式 包含用户名的字段 包含密码的字段 错误消息反馈 可以使用代理(如篡改数据或Burp套件)来识别其中的每一个反馈。
步骤3:使用Burp套件
尽管可以使用任何挂件来完成这项工作,包括篡改数据,但在本文中,我们将使用Burp套件。可以通过进入应用程序-> Kali Linux -> Web应用程序-> Web应用程序代理-> burpsuite来打开Burp套件。看到如下所示界面。
接下来,将尝试在Web应用程序(DVWA)上破解密码。就像我在这里所做的那样,可以从metasploavailable操作系统(在Rapid7上)运行它,然后连接到登录页面。
启用代理并拦截Burp套件,如下所示。确保单击顶部的Proxy选项卡,然后截取选项卡的第二行。确保“截距已打开”。
最后,需要将IceWeasel web浏览器配置为使用代理。点击编辑->首选项->高级->网络->设置打开连接设置,如下图所示。这里,将IceWeasel配置为使用127.0.0.1端口8080作为挂件,方法是在HTTP代理字段中键入127.0.0.1,在端口字段中键入8080,并删除底部的No代理字段中的信息。另外,选择“为所有协议使用此挂件服务器”按钮。
步骤4:获得错误的登录响应
现在,尝试用户名OTW和密码OTW登录。这样做时,BurpSuite会截获请求,并显示THC-Hydra web表单崩溃所需的关键字段。
收集到这些信息后,按下最左边的“转发”按钮,从Burp Suite转发请求。DVWA返回“登录失败”的消息。现在,有了所有的信息,需要配置THC-Hydra破解这个web应用程序!
获取失败消息是让THC-Hydra在web表单上工作的关键。在这种情况下,它是基于文本的消息,但并不总是如此。有时它可能是cookie,但关键的部分是找出应用程序如何与失败的登录进行通信。这样,我们可以告诉THC-Hydra继续尝试不同的密码;只有当这个消息没有出现时,我们才成功。
步骤5:将参数放入THC Hydra命令中
有了参数,我们可以将它们放入THC-Hydra命令中。排列是这样的:
kali > hydra -L <username list> -p <password list> <IP Address> <form parameters><failed login message> 根据从Burp套件收集到的信息,指令如下:
kali >hydra -L <wordlist> -P<password list> 192.168.1.101 http-post-form "/dvwa/login.php:username=^USER^&password=^PASS^&Login=Login:Login failed" 注意事项。如果您使用的是用户名列表,则使用大写的“L”;如果您试图破解其中提供的一个用户名,则使用小写的“L”。在这种情况下,我将使用小写的“l”,因为我将只尝试破解“admin”密码。
在登录表单的地址(/dvwa/login.php)之后,下一个字段是接受用户名的字段的名称。在我们的例子中,它是“用户名”,但是在某些表单中,它可能是不同的,例如“login”。
现在,让我们组合一个命令来破解这个web表单登录。
步骤6:选择一个单词表
选择wordlist。对于任何 wordlist攻击,wordlist都非常关键。可以使用一个定制的由Crunch of CeWL制作的单词表,但是Kali有很多内置的单词表。如需全部查看,输入:
kali > locate wordlist 此外,有许多网站的文字列表,可以高达100 GB! 。在本例中,我将明智的选择使用一个内置的单词列表,其中的单词少于1,000个,位于:
/usr/share/dirb/wordlists/short.txt 步骤7:构建命令
现在,使用这些元素构建指令,如下所示。
kali > hydra -l admin -P /usr/share/dirb/wordlists/small.txt 192.168.1.101 http-post-form "/dvwa/login.php:username=^USER^&password=^PASS^&Login=Login:Login failed" -V
- l显示一个用户名(使用- l用户名列表) - p表示使用以下密码列表 http-post-form表示形式的类型 / dvwa / login-php登录页面的URL 用户名用户名输入的表单字段 用户^ ^告诉许使用用户名或列表 密码是密码输入的表单字段(可能是密码,通过等) ^ ^告诉许传递给使用提供的密码列表 登录显示Hydra登录失败的消息 登录失败就是表单返回登录失败消息 - v是详细输出显示每一个尝试 步骤8:开始运行!
现在,因为我们使用了-V开关,THC-Hydra会向我们展示每一次尝试的过程和结果。
几分钟后,Hydra返回我们的web应用程序的密码。成功!
最终的想法
虽然THC-Hydra是在线破解密码的有效且最好的工具,但在web表单中使用它需要一些实践。在web表单中成功使用它的关键是确定表单如何对失败的登录和成功的登录作出不同的响应。在上面的示例中,标识了失败的登录消息,但是我们可以标识成功的消息并使用它。若要使用成功消息,需将失败的登录消息替换为“S=成功消息”,如下所示:
kali > hydra -l admin -P /usr/share/dirb/wordlists/small.txt 192.168.1.101 http-post-form "/dvwa/login.php:username=^USER^&password=^PASS^&S=success message" -V 另外,一些web服务器会注意到许多登录失败的快速尝试,并将您锁定在门外。在这种情况下,您需要使用THC-Hydra中的等待指令。将在两次尝试之间添加一个等待,以避免触发锁定。可以用-w开关来使用这个功能,所以我们修改了命令,10秒后写出如下:
kali > hydra -l admin -P /usr/share/dirb/wordlists/small.txt 192.168.1.101 http-post-form "/dvwa/login.php:username=^USER^&password=^PASS^&Login=Login:Login failed" -w 10 -V 我建议您在表单上练习使用THC-Hydra,在“未知”使用之前,应该知道表单的用户名和密码。
[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课
最后于 2019-2-15 10:16
被CCkicker编辑
,原因: 图片
上传的附件: