首页 > 系统相关 >Tomcat Filter 类型内存马与查杀学习(4)

Tomcat Filter 类型内存马与查杀学习(4)

时间:2023-09-16 11:32:24浏览次数:49  
标签:java Tomcat 查杀 Filter 内存 https Java com


原理

•  利⽤ Java Agent 技术遍历所有已经加载到内存中的 class 先判断是否是内存⻢,是则进⼊内存查杀

Tomcat Filter 类型内存马与查杀学习(4)_Java

•  访问时抛异常 (或跳过调⽤),中断此次调⽤

•  从系统中移除该对象

排查方式

• 如果是 jsp 注⼊ ⽇志中排查可疑 jsp 的访问请求

•  如果是代码执⾏漏洞,排查中间件的 error.log,查看是否有可疑的报错,判断注⼊时间和⽅法

•  根据业务使⽤的组件排查是否可能存在 java 代码执⾏漏洞以及是否存在过 webshell,排查框架漏洞,反序列化漏

洞。

•  如果是 servlet 或者 spring 的 controller 类型,根据上报的 webshell 的 url 查找⽇志(⽇志可能被关闭,不⼀定

有),根据 url 最早访问时间确定被注⼊时间。

•  如果是 filter 或者 listener 类型,可能会有较多的 404 但是带有参数的请求,或者⼤量请求不同 url 但带有相同的参

数,或者⻚⾯并不存在但返回 200

查杀方式

可以使⽤哥斯拉,冰蝎,或者上⽂提到的内存⻢进⾏⼀个⽣成,然后再进⾏查杀。

1. VisualVM(远程调试)

VisualVM 是⼀个集成多个 JDK 命令⾏⼯具的可视化⼯具。可以作为 Java 应⽤程序性能分析和运⾏监控的⼯具。开发人员可以利⽤它来监控、分析线程信息,浏览内存堆数据。系统管理员可以利⽤它来监测、控制 Java 应⽤程序横跨整个网络的情况。

Tomcat Filter 类型内存马与查杀学习(4)_java_02

通过图形化进⾏界⾯审计

2. arthas

arthas 是 Alibaba 开源的 Java 诊断⼯具 https://github.com/alibaba/arthas

Tomcat Filter 类型内存马与查杀学习(4)_免杀马_03

是⼀个⽐较好⽤的 java 应⽤检测⼯具,了解⽂档可以从这⾥ https://arthas.aliyun.com/zh-cn/

mbean(查看 Mbean 的信息,查看异常 Filter/Servlet 节点)

mbean | grep "Servlet"

Tomcat Filter 类型内存马与查杀学习(4)_免杀马_04

dashboard(显示当前⾯板的实时状态)

Tomcat Filter 类型内存马与查杀学习(4)_免杀马_05

jad(反编译指定已加载类的源码)

Tomcat Filter 类型内存马与查杀学习(4)_github_06

sc 对 jvm 已经加载的类进⾏搜索

Tomcat Filter 类型内存马与查杀学习(4)_github_07

3. Copagent

这个项⽬是上⾯的改进版本,直接可以确定⻛险等级,并且将内存中的信息全部输出。项目地址:https://github.com/LandGrey/copagent 试了⼀下,只有 jdk1.8 能够运行,之后会⽣成⼀个. copagent,⾥⾯有扫描结果。

Tomcat Filter 类型内存马与查杀学习(4)_Java_08

Tomcat Filter 类型内存马与查杀学习(4)_github_09

在 result ⾥⾯可以查看结果,展示详细信息

Tomcat Filter 类型内存马与查杀学习(4)_java_10

根据⻛险等级判断

Tomcat Filter 类型内存马与查杀学习(4)_github_11

在相关 class ⽂件⾥查找这个包

Tomcat Filter 类型内存马与查杀学习(4)_java_12

代码可以在相关 java 文件里找到

Tomcat Filter 类型内存马与查杀学习(4)_java_13

4. java-memshell-scanner

https://github.com/c0ny1/java-memshell-scanner

通过 jsp 脚本扫描并查杀各类中间件内存⻢比 Java agent 要温和⼀些

Tomcat Filter 类型内存马与查杀学习(4)_java_14

标签:java,Tomcat,查杀,Filter,内存,https,Java,com
From: https://blog.51cto.com/u_14156098/7492006

相关文章

  • IDEA 22.2.3 创建web项目及Tomcat部署与服务器初始界面修改(保姆版)
    开始前请确认自己的Tomcat、JDK已经安装配置完毕不同版本的IDEA创建配置流程可能不同,演示中的IDEA版本号为22.2.3本教程创作时间为2023/09/141.创建项目通过下图路径进入创建界面,项目名称、路径、JDK都选择完毕后点击Create创建2.创建web目录右键单击目录名呼出二级菜单......
  • 更改Eclipse下Tomcat的部署目录和自定义user library
     更改Eclipse下Tomcat的部署目录http://kingxss.iteye.com/blog/1741438自定义userlibrary......
  • [SpringSecurity5.6.2源码分析八]:SecurityContextPersistenceFilter
    前言• 当我们不在其他线程而就在容器创建的线程中使用SecurityContextHolder.getContext()获取SecurityContext的时候,正常都能获取到• SecurityContext默认是放在线程中的,所以说在某个地方一定将SecurityContext放到线程中,而这个类就是SecurityContextPersistenceFilter1、Secu......
  • FFMPEG--使用Filter实现YUV图像翻转
    工具:ffmpeg过滤器模块相关过滤器,其创建过程如下:创建一个过滤器节点,如overlay:avfilter_get_by_name(“overlay”);创建一个过滤器上下文并将其添加到FilterGraph上,如:avfilter_graph_create_filter(&overlayFilter_ctx,overlayFilter,“overlay”,“y=0:H/2”,NULL,filter_graph......
  • How to fix java.net.SocketException: Too many files open in tomcat
    NotmanyJavaprogrammersknowsthatsocketconnectionsaretreatedlikefilesandtheyusefiledescriptor,whichisalimitedresource.Differentoperatingsystemhasdifferentlimitsonnumberoffilehandlestheycanmanage.Oneof......
  • Tomcat的Session设置
    1、为单个WEB设置SESSION在WEB.XML中添加xml代码<session-config><session-timeout>15</session-timeout>//单位为分钟</session-config>2、为单个Servlet指定会话超时时间xml代码<servlet><servlet-name>Servlet名称</......
  • 同时启动多个Tomcat服务器
    前些时日,出于某种需要,需要同时启动多个Tomcat服务器,在网上查了半天,才找到解决的办法,拿出来分享一下,嘿嘿。我所用Tomcat服务器都为zip版,非安装版。以两个为例:安装第二个Tomcat完成后,到安装目录下的conf子目录中打开server.xml文件,查找以下三处:(1)修改http访问端口(默认为808......
  • ES 中的Query与Filter区别
    query与filter的区别filter:可以简单的理解为Filter就是数据库中的查询语句,结果是确定的。即满足查询条件就返回,不满足就不返回.query:而Query则是文档相关性的查询,他总会返回数据(一般情况下,只是匹配度不高),而且是按照相关性从大到小排序.总结1、因此filter的查询是......
  • 关于 Angular 应用里 Rxjs filter 操作符内的双重感叹号的用法
    看下列这段出现在AngularComponent内的代码:protecteduserCostCenters$:Observable<CostCenter[]>=this.userCostCenterService.getActiveCostCenters().pipe(filter((costCenters)=>!!costCenters));这段Angular组件代码涉及到Observable和RxJS操作......
  • GZip Servlet Filter
    AGZipServletFiltercanbeusedtoGZipcompresscontentsenttoabrowserfromaJavawebapplication.Thistextwillexplainhowthatworks,andcontainsaGZipServletFilteryoucanuseinyourownJavawebapplications.Ifyoud......