免责声明:本文旨在分享,禁止非法使用
Clusterd是一款专门用于攻击应用服务器开源工具包,可以自动化的识别服务器指纹、探测并且自动对服务器进行攻击。
Clusterd的下载地址: https://github.com/hatriot/clusterd
目前支持以下几种应用服务器:
1. JBoss
2. ColdFusion
3. WebLogic
4. Tomcat
5. Railo
6. Axis2
7. Glassfish
攻击机器: Kali Linux 安装 Cluster(192.168.56.101)
目标机器: window 7 运行 Jboss(192.168.56.102)
下图是clusterd扫描的结果:
可以看到,Clusterd开始检测目标服务器的具体类型已经版本号。
下图是扫描完成的结果显示:
可以看到,图中有好几条匹配出来的指纹显示目标服务器使用的是JBoss 4.0
此外,我们还可以通过 -a 参数把检测的范围限制在特定的区域,如下图,我们限定只检测 CokdFusion
如我们所料,上图并没有匹配到什么,因为目标服务器运行的是 JBoss ,并不是 ColdFusion 。
添加一个 -fingerprint 选项 ,就可以显示出我们接下来可以进行的操作:
命令:./clusterd –i 192.168.56.102 –a jboss –fingerprint
我们可以用-jb-info来检测具体的信息,如下图所示:
命令:./clusterd -i 192.168.56.102 –a jboss –jb-info
我们也来看一下用-jb-list查看部署的应用列表:
命令:./clusterd –i 192.168.56.102 –a jboss –jb-list
如上图所示,我们可以获得部署依赖的 war 文件。
该部分主要讲如何利用 Clusterd 攻击存在漏洞的 JBoss 服务器。
手动利用JBoss JMX 终端
首先,我们先来了解如何不用工具对 JMX 控制台 进行攻击,因为本质上工具只是提供了自动化而已。
以下界面显示目标机器上运行了 JBoss :
点击“JMX Console”按钮,启动JMX控制台,如下图:
这里有很多种方法可以部署 war 文件上传一个 shell 。我们 可以使用以下选项,查找 JMX 终端中的所有“Scanner”,我们就能看到下图:
往下翻就能看到,我们可以通过url 地址 部署特定的的 war 文件 。我们的案例中,我们用的是Kali Linux 上的 JSP shell 。
点击“Invoke”就可以看到如下信息,标识部署成功:
这样,我们可以访问以下 URL 获取我们上传的 shell :
我们可以用这个 shell 执行系统命令。 以下截图是执行 “ifconfig” 命令:
使用Clusterd 进行攻击 -1 :
接下来我们用工具自动化实现这个过程,通过 -deploy 选项 可以自动上传 war 文件 如下:
命令:./clusterd –I 192.168.56.102 –a jboss –deploy /var/www/cmd.war
/var/www/cmd.war是 JSP shell 的 war 文件 的位置
如上图所示,我们可以看到, shell 已经成功部署上去了。
目标JBoss 也存在 Verb Tampering 攻击(CVE-2010-0738 ) ,服务器对了常用的请求 “GET” 和“POST”做了限制,但是却没有对 “HEAD” 做限制,这种情况也是可以被利用的。
运行以下命令就可以把shell部署到目标服务器上:
命令:./clusterd –i 192.168.56.102 –a jboss –verb-tamper /var/www/cmd.war
这样还是可以成功访问上传上去的 shell ,如下图
*参考来源: resources.infosecinstitute ,FB小编老王隔壁的白帽子翻译,转载请注明来自FreeBuf黑客与极客(FreeBuf.COM)