文章列表

7.1k 6 分钟

# 前言 文章其实早就写好了,但前段时间 run 到了甲方,巨忙,一直没空整理发出来。= = PS:个人学习见解,有错的地方,大佬们尽管喷。 这里针对 Tomcat 服务器中的内存马进行了查杀。主要是因为 Springboot 项目通常是一个 jar 包启动的,这种情况下我们没办法类似 Tomcat 使用 JSP 来执行任意代码卸载内存马。 对于 jar 包的想要杀掉内存马其实可以通过打反序列化漏洞链子把修复代码打进去,但其实就是相当于漏洞的反向利用了,但这要求应急人员对内存马和 java 反序列化漏洞有较深的理解。 而这就不得不提一个致命的问题了: ①服务能重启吗? -> 能...
3.8k 3 分钟

# 简介 很久之前写了用虚拟机 + clash 来做透明网关的文章,但最近随着学习的完善,发现之前写的不够全面,因此重新完善了下。 # 什么是透明代理 透明代理,全程为透明代理网关。 简单的说就是不让被代理的设备察觉的自己被代理的,被代理的设备上不需要运行任何代理软件 (比如 Xray、V2RayNG 等),当你连接上网络时,你的设备已经被代理了。 回忆下,我们如果正常访问,流量走向如何? 本机 -> 网关(在家庭中通常就是路由器)-> 上层网关 ->…->...
2.4k 2 分钟

# 前言 事情起因是家里的小米路由器 4A 千兆版,一天到晚老是在断流,打个 LOL 时不时的就掉线。 上网一搜,全是骂这款路由器的。于是购置了新的路由器替换它。本着废物利用的想法,于是把它刷成 openwrt 软路由。 刷好后,发现这个不需要切网络就能科学上网的功能太特么的香了,于是把它并入到主网络中,把它当作主路由来用,新买的 TPLinkXDR3010 作 AP,发射 wifi 信号。用了一段时间,断流现象是没了,但问题是太垃了,overlay 才 3.2M,连个像样的插件都装不上。而且设备多点,直接负载拉满,开始卡顿。最终还是打算自己买硬件来刷一个 openwrt,最终我选择的是...
1.3k 1 分钟

# 前言 在打某次内网的时,抓包抓到了一个奇怪的包。但很奇怪,发往同一个地址,同一个 url 的请求,一个包是 html 表单,一个是 multipart/form-data 数据。 通过 host 头一看,原来是宝塔面板的登录尝试。就感觉很奇怪,为什么会发两个不同的包呢? # 分析并登录 首先,这是我可以确认两个都是登录包,因此所以我们前端抓包分析就行。 查看我自己的 BT 面板,发现加密方式的很简单, bp 抓个包发以下,请求体格式和我们 wireshark 抓到的第一个包一样。 再登录 wireshark 抓到的这个目标的宝塔面板,F12 确认一下,很快,我们就发现了问题,可以看到...
3.5k 3 分钟

# 前言 - 回显问题 前面我们在注入内存马的时候都是用 JSP 来实现代码执行的,而我们知道,JSP 本质上就是 Servlet,当我们访问 JSP 时,Tomcat 会把这个 JSP 当作一个 Servlet 来编译程.class 然后加载,本质上还是有文件落地的(内存马没落地,但注册内存马的这个 JSP...
8.9k 8 分钟

# 前言 内存马主要分为以下几类: servlet-api 类 filter 型 servlet 型 spring 类 拦截器 controller 型 Java Instrumentation 类 agent 型 我们这里作为初学内存马萌新,只讨论 servlet-api 类型的内存马。 Q:内存马是什么? A:对于 servlet-api 类其实就是恶意的 Fileter、Servlet、Listen 之类的 web 组件。 Q:怎么把内存马给注入进目标服务器? A:JSP 文件(jsp 的本质就是 servlet,在访问时 tomcat 会将.jsp 文件翻译成一个...
9k 8 分钟

# 简介 PS:下面的客户端攻击、服务端攻击、注册中心攻击都是讨论 JEP290 未引入之前的情况。实战遇到,先看看 java 版本,大于等于下面版本的直接看绕过就行了,小于的话看具体情况选择。 Java SE Development Kit 8, Update 121 (JDK 8u121)Java SE Development Kit 7, Update 131 (JDK 7u131)Java SE Development Kit 6, Update 141 (JDK 6u141)我们前面认识了 RMI,也大致了解了 RMI...
6.9k 6 分钟

# 简介 PS:这里主要是我对 RMI 流程的跟踪,还有一些理解吧。这玩意越学越烦,艹。这篇文章不涉及漏洞利用,想略过原理直接看利用的看下一篇。 RMI (Remote Method Invocation) 即 Java 远程方法调用,RMI 用于构建分布式应用程序,类似于 RPC(Remote Procedure Call Protocol) 远程过程调用协议,RMI 实现了 Java 程序之间跨 JVM 的远程通信,使得一个 JMV 上的对象可以调用另一个 JMV 上的方法(方法在远程 JVM 上执行,只是返回运行结果)。这两个 JVM...
7.4k 7 分钟

# 简介 Apache Commons Collections 是对 java.util.Collection 的扩展。它增强了 Java 集合框架。 它提供了几个功能来简化收集处理。 它提供了许多新的接口,实现和实用程序。 当我们学习了 URL DNS 链后,我们就大致直到反序列化漏洞是怎么威胁服务器的。我们就可以着手分析 CC 链来增加我们对反序列化漏洞的认识了。 这里我还是跟着 b 站:白日梦组长大佬学习的,环境的搭建可以去 b 站搜他的视频。 然后呢 CC1 其实有两条利用链,其实大差不差。一条利用了 TransformerMap,一条利用了 LazyMap。 #...
1.7k 2 分钟

# # 简介 这是一个最简单的链,原生 JDK 就存在。也就是说,不需要服务器存在任何特定的第三方组件。如果目标存在反序列化漏洞,那么我们就能够通过这个链来实现 dnslog 功能,从而验证漏洞的存在。 前面我们学习了反序列化的知识,我们也知道了,只需要服务器反序列化了我们传入的对象,我们就有机会进行反序列化漏洞的利用。接着我们来看看这条链的整个过程把。 PS:看了反序列化的基础但还是不太懂的,建议就先分析这条链。 # 分析 # java.net.URL 分析 我的分析不是从入口类开始分析,而是先找到存在漏洞的一个类,然后再往上寻找入口类。 分析 java.net.URL 这个原生...