内存马查杀思路

admin 2022年6月26日22:19:46评论39 views字数 1060阅读3分32秒阅读模式

 前言:

 本篇文章由k4n5ha0哥哥编写,发表已经获得他本人同意,首发于:   https://my.oschina.net/9199771/blog/5529686

参考地址:

https://developer.aliyun.com/article/574406

https://mp.weixin.qq.com/s/Whta6akjaZamc3nOY1Tvxg#at

https://github.com/4ra1n/FindShell

https://blog.csdn.net/lff0305/article/details/70037807

https://blog.csdn.net/qq_31865983/article/details/98480703

 

1)获取 class 字节码的方法

oracle 的 jdk 的 lib 目录中 sa-jdi.jar 可以 dump 出被 javaagent “增强” 的 java 字节码(增强包括业务增强或恶意后门),也就是实际内存中执行的字节码

启动命令:

java -cp sa-jdi.jar sun.jvm.hotspot.HSDB

它通过进程 pid 直接 attach,例如使用 jps 命令

内存马查杀思路

内存马查杀思路

然后在 tools 目录里内存马查杀思路选择 Class Browser 可以搜索类名

内存马查杀思路

还能输入 sql 查找满足条件的类

内存马查杀思路

又或者使用 js 代码进行 class 的查找

C:jdk8>java -cp .;./lib/sa-jdi.jar sun.jvm.hotspot.tools.soql.JSDB 7540Attaching to process ID 7540, please wait...Debugger attached successfully.Server compiler detected.JVM version is 25.121-b13jsdb>jsdb> load("c:\dev\a.js");

这里提一句 java9 开始,该功能直接内置

内存马查杀思路

内存马查杀思路

hsdb 是 gui 模式,clhsdb 是命令行模式

 

2)使用哥斯拉注入实验性内存马

内存马查杀思路

 

3)使用 Class Browser 可以直接搜索到这个类

内存马查杀思路

我们把这个类写到硬盘上,点击 Create .class File 按钮

内存马查杀思路

如下图,可惜 360 暂时还不查杀

内存马查杀思路

4)反编译这个类

4.1)GDA 反编译

内存马查杀思路

4.2)vscode 的 Decompiler

内存马查杀思路

内存马查杀思路

等等各种方式可以反编译得到 java 源码

 

5)扫描告警

不管是 class 文件还是 java 文件都可以进行进行扫描进行内存马的检测

微软的 md 对其中一种内存马的 java 源码可以进行查杀

内存马查杀思路


原文始发于微信公众号(Th0r安全):内存马查杀思路

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2022年6月26日22:19:46
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   内存马查杀思路http://cn-sec.com/archives/1144542.html

发表评论

匿名网友 填写信息