内存马这个词,很多人第一次听到是在应急响应的场景里:服务器上找不到可疑文件,流量看着也正常,但攻击者就是能执行命令。也有另一类人,做代码审计或渗透测试,知道内存马这个概念,却说不清 Listener 型、Filter 型、Servlet 型到底差在哪,更别说自己写一个。
这份资料合集解决的正是这种「听过但没搞懂」的状态。它不是入门课,默认你已经能看懂 Java Web 的基本请求流程,会配置 Tomcat,知道什么是 Filter 和 Servlet。如果这些还模糊,建议先补上再看,否则前面几篇会读得很吃力。
先搞清楚它到底藏在哪一层
内存马的核心不在于「写进内存」这个动作,而在于它寄生在容器的哪个组件里、通过什么方式被触发。资料里从 Tomcat 的 Listener 型开始讲,这个顺序是合理的——Listener 是最容易被忽略的一类,因为它不直接参与请求分发,排查时常常被跳过。理解它之后,再看 Filter 型和 Servlet 型就是同一套思路的延伸。
配套要问自己的问题是:一个 Listener 内存马注册进去之后,在 Tomcat 的哪个生命周期节点生效?通过什么接口能列出来?如果答不上来,说明只是记住了概念。
WebSocket 和 Executor 不是同一类问题
Tomcat WebSocket 内存马那篇值得单独花时间。WebSocket 的注册机制和普通 HTTP 请求不一样,它走的是握手升级流程,注入点也就落在不同的地方。很多人能理解 Filter 内存马,但换到 WebSocket 就卡住,原因是没有把协议层面的差异和容器层面的注册机制对应起来。
Executor 内存马则是另一个方向。它不挂载在请求链路上,而是利用线程池执行逻辑,触发条件更隐蔽。看完这两部分,你应该能回答:同样是在 Tomcat 里,为什么 WebSocket 内存马和 Executor 内存马的检测思路完全不同?
从具体漏洞看注入路径
资料里涉及 Spring WebFlux、CVE-2022-22947、Shiro 反序列化这几条线。这部分的价值不是让你背 CVE 编号,而是把「漏洞利用」和「内存马落地」串起来。比如 Shiro 反序列化注入冰蝎内存马,重点在于反序列化链条能把字节码送进去,而冰蝎的内存马是帮你把这段字节码组织成可用的形式。两者是配合关系,不是一回事。
Spring WebFlux 那篇需要注意:WebFlux 是响应式栈,和 Spring MVC 的组件模型差别不小,内存马的落点也不一样。如果你只熟悉 Servlet 栈,看这篇会有明显的不适感,这是正常的。
Resin、Linux 下的处理,是补盲区
大多数人的经验集中在 Tomcat 和 Spring 上,Resin 回显及内存马这部分属于跨容器的补充。它的意义在于提醒你:内存马不是 Tomcat 专属,换一个容器,注册机制和检测方式都要重新过一遍。
Linux 下内存马的部分则更偏实战环境,涉及进程、类加载状态等和操作系统层面的观察。如果你平时只在本地 Tomcat 里做实验,这部分会暴露你对生产环境排查手段的陌生。
看完之后你应该能回答的问题
- Listener、Filter、Servlet 三类内存马,各自的注册入口和触发时机有什么区别?
- 给定一个已经确认存在内存马的 Tomcat 进程,你会按什么顺序去定位它?
- Shiro 反序列化注入内存马,反序列化链条和内存马本身分别负责什么?
- WebFlux 场景下,内存马的注入思路和 Spring MVC 差在哪里?
- 换到 Resin,前面总结的检测方法哪些还能用,哪些会失效?
这份资料偏原理和案例,不是拿来即用的工具集。建议边看边在本地环境复现,尤其是 Listener 和 Filter 两类,动手注册一次比读三遍都管用。遇到只有 PDF 没有配套代码的部分,自己按描述写一遍,卡住的地方往往就是你真正缺的那块知识。
先知社区-内存马资料合集
深入理解内存马原理与实战技巧
编辑点评
系统学习内存马技术,涵盖多种Web框架与服务器,实战性强。
⭐ 编辑推荐
全面解析内存马原理,实战案例丰富,助你掌握Web安全防护。
课程亮点
课程目录
先知社区-内存马资料合集说明.png [493.5 KB] Resin回显及内存马.pdf [3.4 MB] 从CVE-2022-22947到Spring WebFlux内存马与哥斯拉.pdf [7.0 MB] Tomcat WebSocket内存马原理浅析.pdf [268.4 KB] Tomcat 内存马(一)Listener型.pdf [1.4 MB] Executor内存马的实现.pdf [5.6 MB] 利用shiro反序列化注入冰蝎内存马.pdf [5.7 MB] Linux下内存马进阶植入技术.pdf [616.6 KB] java Filter内存马分析.pdf [2.9 MB] 以初学者角度调试filter内存马.pdf [6.8 MB] JAVA内存马的“一生”.pdf [7.5 MB] WebSocket 内存马,一种新型内存马技术.pdf [1.0 MB] SpringBoot拦截器注入内存马实验.pdf [1.7 MB] Java Agent 从入门到内存马.pdf [1.7 MB] Spring Interceptor 内存马分析.pdf [1.7 MB] Executor内存马的实现(二).pdf [12.4 MB] java内存马分析集合.pdf [7.2 MB] 初探Java安全之Spring内存马.pdf [7.5 MB] Agent内存马的自动分析与查杀.pdf [984.3 KB] 探索Filter型Tomcat内存马的免杀.pdf [1002.1 KB] 利用Fastjson注入Spring内存马.pdf [668.5 KB] java内存马.pdf [681.6 KB] 论如何优雅的注入Java Agent内存马.pdf [530.3 KB] JSP内存马研究.pdf [1.1 MB] 利用 PHP-FPM 做内存马的方法.pdf [378.1 KB] Shiro反序列化与Tomcat内存马注入学习.pdf [884.5 KB] Java内存马:一种Tomcat全版本获取StandardContext的新方法.pdf [1.0 MB] 浅析JSP型内存马.pdf [667.3 KB] 从一个被Tomcat拒绝的漏洞到特殊内存马.pdf [502.9 KB] RuoYi 可用内存马.pdf [2.6 MB] Weblogic Xmldecoder反序列化中的命令回显与内存马总结.pdf [7.7 MB] Python 内存马分析.pdf [698.5 KB] Tomcat 内存马(二)Filter型.pdf [1.4 MB] 从Spring内存马检测到隐形马.pdf [779.1 KB]
适合人群
- Web安全爱好者
- 后端开发工程师
- 安全研究人员
学习收获
祝您学习愉快!
学有所成,前程似锦!





![大疆维修,无人机维修教程[66.30GB]](/_next/image?url=https%3A%2F%2Fwww.itzhibei.com%2Fapi%2Fuploads%2Fb6a69810-862f-479c-a529-d66880073ebc.jpg&w=1920&q=75)
