lsekfe 发表于 2021-4-2 10:21:20

Web渗透测试——密码暴力破解工具的使用

大家好!今天我们讲暴力破解,有人可能会有疑惑,密码到底设置得多复杂才算是安全,其实这就像是问,是先有的鸡还是先有的蛋,都是没有确切的答案的,理论上说无论你密码设置的多么复杂,都有可能被破解,这主要看的就是密码字典的大小,我曾经见到过一个28G的密码字典,如果再配合上暴力破解工具,我想密码破解只是时间的问题吧。
  因此今天我们不讲如何设置密码,我们就讲讲这些暴力破解工具的使用,以便我们理解暴力破解的原理,进而制定更加安全合理的防暴力破解的策略,下面我们言归正传。
  Hydra
  hydra(海德拉),是世界顶级的密码破解工具,支持几乎所有协议的在线密码破解,功能十分强大,我前边也说过了,暴力破解的成功与否,主要取决于字典的大小,拥有一个全面而强大的字典,对于暴力破解的成功有非常大的影响。
  首先hydra是集成在kali里边的,我们打开虚拟机,运行kali,打开终端,在终端中输入“hydra -h”回车,就可以查看hydra的帮助信息,如下图所示:
http://www.51testing.com/attachments/2021/03/15326880_2021032914294215x0u.jpg
hydra帮助
  下面我们介绍几个常用的参数:
  “-l”表示login,后边跟指定的用户名,“-L”也是login,不过后边跟的是文件,也就是用户名的字典;
  “-p”表示password,后边跟指定的密码,“-P”也是password,后边跟文件,同上边一样,也就是密码字典;
  “-M”后边跟目标文件,也就是保存了所有拟破解地址的文件;
  “-o”表示将我们破解成功的用户名和密码等信息保存到指定文件里边。
  我们再看看hydra给我们举的几个例子,如下图所示:
http://www.51testing.com/attachments/2021/03/15326880_20210329142950157H4.png
  hydra -l user -P password.txt ftp://192.168.0.1
  表示破解指定用户user的密码,使用的服务为ftp,地址为:ftp://192.168.0.1。
  hydra -L userlist.txt -p defaultpw imap://192.168.0.1/PLAIN
  表示破解使用密码defaultpw的用户,使用的邮箱服务,登录地址为:imap://192.168.0.1/PLAIN。
  hydra -l admin -p password ftp:///
  表示在192.168.0.0/24这个地址段内,破解使用用户名为admin,密码为password的ftp登录地址。
  hydra -L logins.txt -P password.txt -M targets.txt ssh
  表示破解目标字典targets.txt文件里边的登录密码,其中用户字典为logins.txt文件,密码字典为password.txt文件,使用的服务为ssh。
  medusa
  Medusa(美杜莎),是一款速度快,支持大规模并行,模块化的爆破登录工具,可以同时对多个主机的用户名密码进行暴力破解,相比于hydra稳定性比较好,但是支持的模块少一些。
  我们也可以在kali终端输入“medusa -h”来查看帮助信息,如下图所示:
http://www.51testing.com/attachments/2021/03/15326880_202103291429591encN.png
medusa帮助信息
  “-h”后边跟主机地址或者IP地址,“-H”跟主机或IP地址字典文件;
  “-u”后跟指定用户名,“-U”跟用户名字典文件;
  “-p”后跟指定密码,“-P”跟密码字典文件。
  “-M”跟模块名称,例如:ssh等;
  “-t”表示线程数。
  举个例子:
  medusa -H targets.txt -U userlist.txt -P password.txt -M ssh
  表示使用用户字典userlist.txt和密码字典password.txt破解主机字典里的主机ssh登录的用户名和密码。
  patator
  也是一种集成在kali里的破解工具,不多说了,我们也可以输入“patator -h”查看它的帮助信息,如下图所示:
http://www.51testing.com/attachments/2021/03/15326880_202103291430091FCZq.png
patator帮助信息
  与上面两款工具不同的是,它直接给出各个模块的用法,例如:ftp、ssh、http、pop、imap、mssql和oracle等。
  如果我们想看具体某个模块的使用方法,我们可以输入“patator ssh_login --help”来查看帮助信息,如下图所示:
http://www.51testing.com/attachments/2021/03/15326880_202103291430191U8OF.png
ssh_login帮助信息
  他给了我们一个非常直观的例子:
  patator ssh_login host=10.0.0.1 user=root password=FILE0 0=password.txt
  host后跟主机名,user后跟用户名,password后跟密码,当然也都可以跟字典文件,就比如“password=FILE0 0=password.txt”一样,如果用户名也是一个字典文件那么就可以写成“user=FILE1 1=userlist.txt”。
  暴力破解的防御
  1.对于多余用户要及时删除。
  2.注意密码的复杂性。大小写字母+数字+特殊字符+8位以上+定期更换。
  3.修改默认用户和密码。
  4.使用验证登录。包括图片验证码、短信验证码等。
  5.使用错误登录次数限制设置。比如错误登录3次,限值登录10分钟等。
  6.其他限制。比如限制指定MAC地址或者IP地址的主机登录。
  以上就是Web渗透测试——密码暴力破解工具的使用的全部内容,感谢大家的阅读,大家学习到知识不要做违法的事情,我们的目的是提高大家的渗透测试技术,帮助大家更好地做好网络安全防护,法律的底线一定不要碰,欢迎大家关注@科技兴了解更多科技尤其是网路安全方面的资讯和知识。
页: [1]
查看完整版本: Web渗透测试——密码暴力破解工具的使用