Java内存马
java内存马免杀与查杀
- 内存马是什么,定义与演变;有什么用
- 组成成分,模仿制作(从简单到复杂,从一个方向到多个方向)
- 优化与创新
内存马是什么(定义);演变;有什么用
Webshell的技术历程:
web服务器管理页面——> 大马——>小马拉大马——>一句话木马——>加密一句话木马——>加密内存马
传统的JSP木马特征性强,且需要文件落地,容易被查杀。因此现在出现了内存马技术。Java内存马又称”无文件马”,相较于传统的JSP木马,其最大的特点就是无文件落地,存在于内存之中,隐蔽性强。
内存马的原理就是在web组件或者应用程序中,注册一层访问路由,访问者通过这层路由,来执行我们控制器中的代码
三个部件?是指Servlet、Filter、Listener这三类 java web组件吗?内存马的原理是在web组件中注册一层访问路由,访问者通过这层路由来执行代码。这是一部分,更多的可以看这篇文章https://su18.org/post/memory-shell/。除此之外,线程是 将进程划分为两个或多个线程(实例)或子进程,由单处理器(单线程)或多处理器(多线程)或多核处理系统并发执行(来自wiki百科)。有一篇讲线程型内存马的文章你可能感兴趣https://su18.org/post/memory-shell-2/
内存马的原理就是在web组件或者应用程序中,注册一层访问路由,访问者通过这层路由,来执行我们控制器中的代码
内存马类型:
Java内存马按照实现原理大致可以分为如下两种
- 利用Java Web组件:动态添加恶意组件,如Servlet、Filter、Listener等。在Spring框架下就是Controller、Intercepter。
- 修改字节码:利用Java的Instrument机制,动态注入Agent,在Java内存中动态修改字节码,在HTTP请求执行路径中的类中添加恶意代码,可以实现根据请求的参数执行任意代码。
或三种
- servlet-api类
- filter型
- servlet型
- spring类
- 拦截器
- controller型
- Java Instrumentation类
- agent型
组成成分,模仿制作
(从简单到复杂,从一个方向到多个方向)
- 先复现一个漏洞,用内存马获取shell权限(应用)
- 从简单到复杂,分析优化与应用
上传
- 普通上传
- 免杀常见工具
- Filter型内存马
Filter型内存马生成,上传与使用
Filter型内存马生成
查杀
铸盾者
常见的查杀工具及特点分析
免杀
铸剑者
演变的标志性利用方法
搜索关键词
1 | 内存马免杀 after:2023 |
1 | 内存马查杀 after:2023 |
1 | 内存马 github |
参考链接
https://github.com/Getshell/Mshell (从原理到实战的资源集)
https://goodapple.top/archives/1355
指向
通过webshell来让Web Server来执行我们的任意指令的全过程分析
让Web Server来执行我们任意代码的方式;1. webshell;2. 修改进程的内存
http请求调用栈
java-cc6
话题
演示用不同工具修改java字节码
稿子
演变
https://gv7.me/articles/2020/kill-java-web-filter-memshell 查杀Java web filter型内存马
https://mp.weixin.qq.com/s/x4pxmeqC1DvRi9AdxZ-0Lw 出现(filter)
https://www.cnblogs.com/rebeyond/p/9686213.html agent技术
https://landgrey.me/blog/12/ Spring controller内存马
原理
https://bwshen.blog.csdn.net/article/details/137379027 浅析JavaWeb内存马基础原理与查杀思路
https://turn1tup.github.io/2022/04/29/Java%E5%BA%94%E7%94%A8%E5%86%85%E5%AD%98%E9%A9%AC/ Java应用内存马
生成工具
https://github.com/pen4uin/java-memshell-generator一款支持高度自定义的 Java 内存马生成工具
查杀
https://github.com/c0ny1/java-memshell-scanner 通过jsp脚本扫描java web Filter/Servlet型内存马
https://github.com/jar-analyzer/jar-analyzer Jar Analyzer - 一个JAR包分析工具
shell-analyzer
https://github.com/4ra1n/shell-analyzer?tab=readme-ov-file
一款GUI版本的实时内存马查杀工具支持本地查杀与远程查杀
工具思路:
https://mp.weixin.qq.com/s/vb0WlgylO7jnbpfh8YnNXQ 查
https://mp.weixin.qq.com/s/vJAZRtP5DW-CHjGKLX3GrQ 杀
免杀
https://xz.aliyun.com/t/13332?time__1311=GqmxuiDQiQoCqGXeCgYG8D9DROqAhuk2wbD#toc-28 免杀基础概览
1+1>2攻防互换
https://gv7.me/articles/2020/kill-java-web-filter-memshell 查杀Java web filter型内存马
https://forum.butian.net/share/921探索Filter型Tomcat内存马的免杀
Javassist修改字节码
https://blog.csdn.net/qq_41633199/article/details/117160642
https://www.javasec.org/javase/JavaByteCode/Javassist.html?h=javassist