检查 OA 服务器时发现站点根目录,有一些异常文件,排查后判断是 OA 系统没及时跟新补丁导致 JAVA 内存马入侵,记录一下排查及查杀操作。

JAVA 内存马简单介绍

参考链接:https://gv7.me/articles/2020/kill-java-web-filter-memshell/

由于现在各种防护措施越来越多,文件 shell 就如 c0ny1 师傅所说的大部分已经气数已尽,内存马因其隐蔽性等优点从而越来越盛行

  1. servlet-api 类
  • filter 型
  • servlet 型
  • spring 类
  1. 拦截器
  • controller 型
  1. Java Instrumentation 类
  • agent 型

排查内存马的方法

arthas

项目链接:https://github.com/alibaba/arthas

可以用这个工具来检测内存马

java -jar arthas-boot.jar 然后选择中间件进程,如:Tomcat、Resin 等

之后会进入到 arthas 的命令进程

利用 sc *.Filter 进行模糊搜索,会列出所有调用了 Filter 的类

利用 jad –source-only org.apache.jsp.evil_jsp 直接将 Class 进行反编译

防御 Java 内存马

可以看看百度的 OpenRASP https://rasp.baidu.com/

安装后可以防御绝大部分的内存马