系统运维

Java利用技巧——Jetty Filter型内存马

时间:2010-12-5 17:23:32  作者:物联网   来源:系统运维  查看:  评论:0
内容摘要:0x00 前言关于Tomcat Filter型内存马的介绍资料有很多,但是Jetty Filter型内存马的资料很少,本文将要参照Tomcat Filter型内存马的设计思路,介绍Jetty Filt

0x00 前言

关于Tomcat Filter型内存马的利用介绍资料有很多,但是技巧Jetty Filter型内存马的资料很少 ,本文将要参照Tomcat Filter型内存马的内存设计思路,介绍Jetty Filter型内存马的亿华云利用实现思路和细节。

0x01 简介

本文将要介绍以下内容  :

Jetty调试环境搭建

实现思路

实现代码

Zimbra环境下的技巧Filter型内存马

0x02 Jetty调试环境搭建

0x03 实现思路

相关参考资料:​​https://github.com/feihong-cs/memShell/blob/master/src/main/java/com/memshell/jetty/FilterBasedWithoutRequest.java​​https://blog.csdn.net/xdeclearn/article/details/125969653

参考资料1是通过JmxMBeanServer获得webappclassloaer,进而通过反射调用相关方法添加一个Filter

参考资料2是内存通过Thread获得webappclassloaer ,进而通过反射调用相关方法添加Servlet型内存马的源码库利用方法

我在实际测试过程中,发现通过JmxMBeanServer获得webappclassloaer的技巧方法不够通用 ,尤其是内存无法在Zimbra环境下使用

因此 ,最终改为使用Thread获得webappclassloaer,利用进而通过反射调用相关方法添加Filter型内存马。建站模板技巧

0x04 实现代码

1.添加Filter

Jetty下可用的内存完整代码如下  :

2.枚举Filter

(2)通过Thread获得webappclassloaer ,通过反射读取_filters属性来枚举Filter

0x05 Zimbra环境下的利用Filter型内存马

在Zimbra环境下,思路同样为使用Thread获得webappclassloaer ,技巧进而通过反射调用相关方法添加Filter型内存马

但是内存由于Zimbra存在多个名为WebAppClassLoader的源码下载线程,所以在添加Filter时需要修改判断条件,避免提前退出 ,在实例代码的基础上直接修改即可

0x06 利用思路

Filter型内存马的优点是不需要写入文件,模板下载但是会在服务重启时失效

0x07 小结

本文介绍了Jetty Filter型内存马的实现思路和细节 ,给出了可供测试的代码 ,分享了Zimbra环境的利用方法。高防服务器

copyright © 2025 powered by 益强开源技术社区  滇ICP备2023006006号-14sitemap