JBoss漏洞如何检测和利用?

    

outputo-20210605-170510-551-jkhz.png

默认情况下装JDK。

JRE环境变量配置。

直接在用户环境变量中编辑路径环境变量,直接在JRE中添加bin目录的绝对位置(c:\ProgramFiles\Java\JRE1.8.0_66)

JBoss环境配置和部署。

下载安装包,直接解压。

JBoss环境变量配置。

添加环境变量。

(1)JAVA_HOME变量。

1、变量名称:JAVA_HOME:

2.变量值:C:\程序文件\Java\jdk1.8.0_66。

(2)JBOSS_HOME变量。

1.变量名称:JBOSS_HOME。

2.变量值:C:\jboss-4.2.1.GA。

(3)类路径变量。

1、变量名称:CLASSPATH。

2.变量值:C:\jboss-4.2.1.GA\bin\run.jar。

JBOSS服务接入。

JBoss服务启动测试。

加入全局环境变量后,再次打开JBoss服务启动脚本,启动JBoss服务,看下图的重要信息,表示服务启动成功。

JBoss远程访问报告的错误。

通过对jboss服务的回访测试,我们发现jboss服务默认只接受本地回访(127.0.0.1:8080),远程主机在回访jboss8080服务时会报回访被拒

Jboss远程访问配置。

经过相关查询,发现jboss默认配置为4.0版本后,拒绝远程主机直接访问jboss应用服务。如需访问,应进行相应的安装。具体措施如下。

使用带参数的CMD命令运行run.bat-b0.0.0.0。

可以通过外网访问。

开采条件。

在JBoss反序列利用条件下

(1)禁止JBossJMXInvokerServlet接口(默认端口为8080)和JBossWebConsole(/web-console/)对外使用

(2)上述系统在传输对象内容时是否使用序列技术(二进制流或base64encode)

(3)当这些传输数据被切断并被包括命令执行的序列内容替换时,触发远程命令执行。

jboss-4.2.2.GA版本不一致。

CVE-2017-7504漏洞再现。

一、脆弱性的说明。

在JbossAS4.x和更早的版本中,JBossSMQ在实现过程中的HTTP以上的JMS调用层的HTTPServerILServlet.java文件有反序列化的脆弱性,远程攻击者可以利用该脆弱性通过特殊序列化的数据执行任意代码。

使用JBoss反序列化漏洞检测工具。

收集信息。

通过信息获取功能,可以直接获取系统、当前管理者权限、当前用户目录位置等重要信息。

上传菜刀外壳,获得主机许可。

如果不知道jboss网站的根目录,默认情况下,任何上传的文件都可能存储在目录$_jboss/bin中(具体路径可以直接查看信息收集中提供的UserCurrentDirectory信息),首先可以使用ColumnDirectory功能收集jboss网站的真实根目录位置信息。

一般默认安装jboss,其目录位置路径如下:

$_JBoss/server/default/deploy/JBoss-webdeployer/ROOT.war/

jbos网站根目录路径信息的集合。

JBoss反序列化漏洞getshell工具。

蚂蚁剑连接成功。

CVE-2017-12149漏洞再现。

漏洞描述:在JBoss的HttpInvoker组件中的ReadOnlyAccesFilter筛选器中,其doFilter方法试图从客户端反序列化序列化的数据流,无任何代码执行。

冲击版:JbossAS5.xJbossAS6.x。

构建JbossAS5.x和JbossAS6.x的方法相同。

使用Jboss漏洞测试工具成功测试CVE-2017-12149。

利用JavaDeserH2HC工具进行攻击。

首先,检查目录并访问链接(http://192.168.23.129:8080/invoker/readonly)

可以看到回到500,有一般的漏洞。

分享: