一记组合拳,批量SSH弱密码爆破检测工具分享

前言

SSH登录密码的破解工具已然有许多,但偶尔还是存在不能满足任务需求的情况。比如,批量地对IP列表里的IP地址进行SSH登录破解,现有的工具直接使用起来总觉得不方便。那么,能否利用现有的工具,来定制打造适合自己的装备?当然可以,而且,这是想要偷懒的宝宝们需要掌握的一项技能。

正文

批量爆破SSH登录密码的流程其实很简单。首先探测对方主机是否开启22端口,如开启,则尝试进行SSH密码爆破。这里用到两款强大的开源工具。一个是nmap,用来探测22端口是否开启;另一个是hydra,用来爆破SSH登录密码。这两款工具我不做过多的介绍,它们的强大,Google一下,自有体会。那么如何将这两款工具结合到一起使用,笔者这里通过选用的是灵活的shell脚本。

如上图所示,过程分为两步,首先用nmap批量地扫描开放22端口的公网上的设备,运行命令如下:

这条命令的含义是,扫描iplist.txt文件中的IP地址是否开启22端口;如开启,则将这个结果输出到22-output.txt文件中。这条命令还可以这样写:

这是对一个网段的扫描,也可以换成一个IP。-sS和-sU都是扫描策略的选项,两个一起使用,可以提高扫描的可靠性。在实际测试过程中(内网环境),nmap还是存在漏扫的情况,想要提高它的准确率,还需自己不断尝试,不断调整扫描策略才会有感觉。

第二步为,读取22-output.txt文件中开放22端口的主机,使用hydra工具进行密码爆破,使用的命令如下:

这条命令的含义是采用密码本./password.txt中的密码,对IP地址为:192.168.0.12的主机进行密码破解。grep “host:”用来过滤打印的输出,只输出破解到密码的条目。由于hydra一次只能对一个IP进行破解,因此,在shell中写了一个循环,hydra一次任务结束后,立即进行下一个IP的破解,直到将22-output.txt文件中IP遍历完为止。代码如下所示。

遍历代码很简单,不用惊讶,这就是shell脚本的神奇之处。主要步骤讲完后,下面来看看整个代码,看如何用shell程序将这些串起来。

这个程序做了一些参数传递的判断,核心代码行十分精简。在使用程序之前,需得在主机上安装nmap和hydra,Ubuntu下直接用apt安装。运行很方便,下面是运行图,在内网环境下破解了3台主机的密码:

当然,能否破解成功,有一个好用的工具固然重要,但还需要一个强健的密码本。在为密码本烦恼的宝宝们,也不用担心,已经有人总结好最常用的密码条目。见这里[传送门]

工具传送门为:https://github.com/scu-igroup/ssh-scanner

总结

通过对该工具的介绍,聪明的你可以举一反三,改造成对任意服务的批量口令爆破(前提是只要hydra支持就行,包括:FTP,telnet,SMTP,POP3,MySQL等等)。下次有渗透测试地批量扫描任务,就可以一键搞定啦。 最后,提醒一句,公网上谨慎扫描,一切行为需合规合法。

*本文作者:scu-igroup,转载请注明来自FreeBuf.COM

  • 发表于:
  • 原文链接http://kuaibao.qq.com/s/20180513B14U9A00?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 yunjia_community@tencent.com 删除。

扫码关注云+社区

领取腾讯云代金券