Hannoch Front-end Dev Engineer

JBoss 漏洞利用

2018-09-25
Hannoch

前言

http://ip:8080/jmx-console/HtmlAdaptor?action=inspectMBean&name=jboss.system:type=ServerInfo

由这样的url应发的血案。

介绍

JBoss Application Server 参考文献1 是一个基于Java EE的开源应用服务器。这类软件的一个重要区别是它不仅实现了在Java上运行的服务器,而且它实际上实现了Java的Java EE部分。因为它是基于Java的,所以JBoss应用程序服务器可以跨平台运行,可以在任何支持Java的操作系统上使用。JBoss是由JBoss开发的,现在是Red Hat的一个部门。

jboss-log

JBoss Web Server为组织提供了一个用于Java Server Pages(JSP)和Java Servlet技术,PHP和CGI 的单一部署平台。它采用了真正的高性能混合技术,该技术结合了最新的OS技术,可以处理大量数据,同时保留所有参考Java规范。

JBoss漏洞

JBoss现在被广泛使用,并且由许多组织在各自的Web服务器上部署。作为一个有用的应用程序,它一定是黑客和恶意用户的目标。

虽然在JBoss上发现了许多漏洞和漏洞,但已经发布了许多CVE。但是今天我们将看看JBoss应用程序中最关键的错误之一,它可以被网络犯罪分子广泛使用。

我们来看看默认的JBoss服务器

此处输入图片的描述

此处输入图片的描述

默认状态,如果配置不正确,可能会让攻击者造成破坏。由于JMX控制台 [ 参考2 ]可以通常在端口8080上远程访问,黑客和恶意用户可以使用JBoss控制台中的DeploymentScanner功能在服务器上部署WAR(Web存档)文件或shell。在下一节中,我们将了解实际的利用情况。

利用JBoss(一)

我们大多数人都会开始寻找 Metasploit,Nmap,Nessus等工具!你在这里不需要它们。是的,你听到了!对于黑客攻击JBoss服务器,您不需要太多应用程序。您只需要一个JSP shell和一个浏览器。

我们组建了一个 Google dork来搜索jmx控制台: inurl:jmx-console/HtmlAdaptor intitle:”jboss management console” “application server” version inurl:”web-console” intitle:”JBoss Management Console – Server Information” “application server” inurl:”web-console” OR inurl:”jmx-console”

这是结果,

此处输入图片的描述

大多数JBoss服务器都对jmx-console进行了默认身份验证。JBoss的默认配置不限制对控制台和Web管理界面的访问,这允许远程攻击者绕过身份验证并通过直接请求获得管理访问权限。

我们只选择其中一个随机URL和宾果游戏!我们可以访问jmx-console。接下来,我们需要一个JSP Shell。通过互联网搜索可以很容易地获得Jsp shell。所以现在,我们有一个JSP shell继续前进。 此处输入图片的描述

为了部署我们的shell,我们将通过在shell中添加一个新URL来使用jmx控制台中的 DeploymentScanner。使用addURL()命令,可以使用应用程序或shell添加新URL。Jboss将从此URL获取应用程序。

下一步是等待DeploymentScanner部署文件,然后我们将访问我们的shell。我们将shell上传到一个站点,比方说 **:abc.com/attack/cmd.jsp ** ,接下来我们需要部署它。因此,我们将在控制台中访问DeploymentScanner。

此处输入图片的描述

接下来,我们将在jmx-console中添加带有shell的URL 。

此处输入图片的描述

添加URL后,我们将调用该函数。如上图所示,我们有一个按钮来调用该函数。完成后,应用程序会给出成功操作的消息。

此处输入图片的描述

在服务器上部署shell时我们等了一会儿。之后,我们访问了已部署的shell。W00t W00t!我们的shell 在服务器上完美运行!

此处输入图片的描述

什么惊讶我们的是,我们有一个 root权限使用我们的外壳在服务器

此处输入图片的描述

Jboss利用(二)

大多数JBoss服务器都对jmx-console进行了默认身份验证,所以我们用默认身份来登录。 首先我们找到主页面上的Admin console模块 1.png 试试默认账户密码admin。 2.png 成功登录到后台。选择web appliction archive 3.png 上传大马.war文件。把写好的shell.jsp压缩成zip文件,再直接改扩展名.war,就生成好我们的shell.war了,然后直接上传shell.war文件。 4.png

最后访问我们的shell http://url/shell/shell.jsp

结论

JBoss默认身份验证漏洞就像 攻击者的圣诞礼物!通常管理员会掉以轻心。但后果可能是致命的。攻击者可以使用此错误成功控制服务器

  • 根服务器或隧道它
  • 获取敏感信息
  • 使用服务器部署恶意软件
  • 在网络犯罪活动中使用服务器使用服务器托管恶意内容
  • 妥协连接到服务器的其他计算机

而且可能会继续下去!

帽子管理员需要做什么?

  • 应尽量避免并应关闭远程访问
  • 如果启用了远程访问,

而且可能会继续下去!

帽子管理员需要做什么?

  • 应尽量避免并应关闭远程访问
  • 如果启用了远程访问,则应应用强密码
  • 小小的警告可以保存您组织的关键数据并确保其安全。

下载

白皮书 - JBoss Exploitation

参考


上一篇 HackTool

Comments

Content