1.简介
该系列主要分析各JAVA反序列化漏洞利用链的实际过程,主要用于代码审计。
例如常见的CC链,或者用于入门分析的URLdns链。
2.关于JAVA反序列化的本质
想要分析JAVA的反序列漏洞,那么首先,也是必须搞明白的是反序列化的本质到底是什么,是针对对象还是类,还是属性或者函数,这些概率需要搞清楚。
在JAVA反序列化过程中,JVM会根据字节流中的信息查找相应的类定义,并使用该类定义来创建对象实例,然后根据字节流中的信息设置对象的属性值等状态信息。因此,反序列化是针对对象的,而非类本身。
所以我们需要明白我们序列化的类一定是目标系统有定义的类,而不是自己凭空捏造一个类来序列化,这样目标系统是无法反序列化成功的。也就是说我们没办法编写自己的函数直接在目标系统中执行的。
因此反序列化漏洞的实质是通过嵌套编写对象定义属性值来达到执行目标系统中已有的我们想要执行的那个函数。
3.反序列化漏洞利用链分析流程
在以下所有流程中,我们所选取的类必须满足以下两个条件:
实现了Serializable接口,否则不可进行序列化,就更不存在什么反序列化。
必须为目标机器程序中存在的类。
...
网络安全
未读1.Fastjson分析1.1.fastjson常用方法首先需要明白JSON类的几个方法分别是,toJSONString,parse,parseObject(String text),parseObject(String text, Class clazz)。
toJSONString 是将对象序列化为JSON字符串,实现的是序列化操作,调用的Getter方法。
parse是将字符串反序列化对象,实现的是反序列化操作,调用的是Setter方法。
parseObjectt(String text) 是先调用parse方法进行反序列化操作调用Setter方法,再调用toJSON进行序列化操作,调用Getter方法。
parseObject(String text, Class clazz)是反序列化为指定的类,而不会调用toJSON方法进行序列化操作,因此只调用Setter方法。
以上所有方法在1.2.24默认请求下都可以通过@type注解指定反序列化的类。
1.2.调用流程分析那么我们来具体分析一下Fastjson中parseObjectt(String text) 通过 @type ...
网络安全
未读1.若依项目介绍 Ruoyi(若依)是一款基于Spring Boot和Vue.js开发的快速开发平台。它提供了许多常见的后台管理系统所需的功能和组件,包括权限管理、定时任务、代码生成、日志管理等。Ruoyi的目标是帮助开发者快速搭建后台管理系统,提高开发效率。
若依有很多版本,其中使用最多的是Ruoyi单应用版本(RuoYi),Ruoyi前后端分离版本(RuoYi-Vue),Ruoyi微服务版本(RuoYi-Cloud),Ruoyi移动版本(RuoYi-App)。
本系列会对这些版本的历史漏洞进行一一复现。
2.文章目录
RuoYi
RuoYi-Vue
RuoYi-Cloud(待更新)
RuoYi-App(待更新)
在网络安全渗透测试中,隧道技术是突破内网限制、实现隐蔽通信的关键手段。常见的隧道技术及工具可分为以下几类,结合不同协议和应用场景,以下是详细总结:
一、隧道技术分类1. 网络层隧道技术
ICMP隧道:通过ICMP协议封装数据,绕过防火墙限制。例如,icmpsh和PingTunnel工具支持ICMP流量伪装,适用于网络层隐蔽通信。
IPv6隧道:将IPv6数据包封装在IPv4中传输,用于跨网络环境的数据传输。
2. 传输层隧道协议
TCP/UDP隧道:通过TCP或UDP协议转发流量,常用工具如netcat(瑞士军刀)、lcx(轻量级端口转发),支持灵活的网络调试和流量中转。
常规端口转发:如SSH的本地/远程端口转发(ssh -L和ssh -R),通过加密通道实现内网穿透。
3. 应用层隧道技术
SSH隧道:利用SSH协议加密通信,支持动态代理(ssh -D)和端口映射,适用于安全远程访问。
HTTP/HTTPS隧道:通过HTTP协议伪装流量,工具如httptunnel和stunnel,适用于绕过HTTP代理限制并加密通信。
DNS隧道 ...
k8s云安全1.k8s架构 做k8s横向移动首先我们需要搞懂k8s的基础架构。
Kubernetes(k8s)的基础架构是一个分布式系统,由控制平面(Master节点)和工作节点(Node节点)组成,各组件协同工作以实现容器化应用的自动化部署、扩展和管理。以下是其核心架构的详细说明:
1. 控制平面(Control Plane / Master 节点)主节点可以理解为一台实际运行的主机,具有集群中最高的控制权限。
负责集群的全局决策和资源调度,通常包含以下组件:
1.1 API Server(kube-apiserver)
作用:集群的前端接口,处理所有REST请求(如kubectl命令),验证并更新集群状态到etcd。
特点:唯一直接与etcd交互的组件,支持水平扩展。
1.2 Scheduler(kube-scheduler)
作用:将新创建的Pod调度到合适的Node上,基于资源需求(CPU/内存)、亲和性规则、数据位置等策略。
流程:监听API Server的未调度Pod,选择最优节点。
1.3 Controller Manager(kube-co ...
网络安全
未读Docker Escape0.容器环境确认获得到一个shell之后我们首先需要判断的是当前是否处于容器环境中,否则后续的一切渗透可能都将会受阻。
那么如何判断?
以下是判断当前环境是否为容器环境的常见方法,适用于 Docker、LXC 等容器环境:
1. 检查 /proc/1/cgroup 文件容器环境的进程控制组(cgroup)信息通常包含 docker、kubepods(Kubernetes)等标识。命令:
1cat /proc/1/cgroup
判断依据:
如果输出中包含 /docker/、/lxc/ 或 kubepods 等关键字,则为容器环境。
物理机或虚拟机通常显示 / 或系统默认的层级(如 systemd)。
2. 检查 /.dockerenv 文件Docker 容器启动时会在根目录生成此文件(其他容器如 LXC 无此文件)。命令:
1ls -l /.dockerenv
判断依据:若文件存在,则极可能是 Docker 容器环境。
3. 检查 /proc/mounts 中的挂载信息容器中挂载的文件系统通常包含 overlay(Docker 默认存储驱动)或 a ...
以下是 psexec、smbexec、wmiexec、evil-winrm 和 dcomexec 横向移动工具的对比及其适用场景分析:
1. PsExec核心特点
协议与端口:基于 SMB(TCP 445)和 RPC(TCP 135)协议,需上传可执行文件到目标主机并创建服务。
隐蔽性:较低,文件上传和服务创建行为易被安全监控发现。
权限要求:需管理员权限,执行后默认以 SYSTEM 权限运行。
适用场景
目标环境开放 SMB 服务:适合内网中 SMB 端口(445)开放且未严格监控的环境。
批量管理或部署:例如在多台主机上执行相同命令或部署软件。
快速提权:通过 SYSTEM 权限执行敏感操作(如添加用户、修改注册表)。
2. SMBexec核心特点
协议与端口:同样依赖 SMB(TCP 445),但无需上传文件,直接通过共享资源(如 ADMIN$)执行命令。
隐蔽性:高于 PsExec,避免文件残留和服务创建,减少检测风险。
权限要求:需要共享资源的访问权限,通常需管理员权限。
适用场景
隐蔽横向移动:适合需要绕过传统文件检测的场景。
共享环境渗透:在目标主机共享权限宽松 ...
网络安全
未读常见漏洞以下是WebLogic常见的安全漏洞列表,按类型和影响分类:
1. 反序列化漏洞
CVE-2017-3506
描述:XMLDecoder反序列化漏洞,允许远程代码执行(RCE)。
影响:攻击者通过构造恶意XML数据执行任意命令。
CVE-2017-10271
描述:CVE-2017-3506的补丁绕过,同样通过XMLDecoder触发RCE。
CVE-2019-2725
描述:WebLogic wls9-async组件反序列化漏洞,影响Oracle WebLogic 10.3.6.0及12.1.3.0版本。
CVE-2020-2551
描述:通过IIOP协议的反序列化漏洞,攻击者可在未授权下远程执行代码。
CVE-2020-14882和CVE-2020-14883
描述:通过14882控制台未授权绕过,再结合14883的远程加载xml文件实现RCE
CVE-2023-21839(历史补丁关联)
背景:2023年未完全修复的漏洞,后续引发 CVE-2024-20931。
影响:通过 T3 协议远程执行代码,需结合后续补丁彻底修复
...
1.禅道简介禅道(ZenTao)是一款开源的项目管理软件,专注于敏捷开发团队的需求,支持Scrum、看板等敏捷方法,同时融合了传统项目管理的功能模块。它由中国的禅道团队开发,广泛应用于软件开发、互联网产品研发等领域。
核心功能模块
产品管理
管理产品需求(用户故事)、版本规划、路线图。
支持需求优先级排序、分解任务。
项目管理
支持Scrum(迭代、冲刺)和看板(Kanban)模式。
分配任务、跟踪进度、燃尽图统计。
质量管理
用例管理、缺陷跟踪(Bug提交、指派、修复验证)。
支持测试套件和自动化测试集成。
文档管理
共享项目文档、知识库,支持版本控制。
团队协作
任务讨论、动态订阅、工时记录、甘特图。
统计报表
生成进度、效率、缺陷分布等可视化报表。
技术架构
开源版本:基于PHP + MySQL开发,支持自主部署到服务器。
企业版:提供SaaS云服务(免部署)、技术支持及高级功能(如OA审批、自定义工作流)。
版本类型
开源版
免费使用,功能完整,适合中小团队或技术能力较强的企业。
需自行维护和部署。
企业版
...
一.PC抓包
使用proxifier将WX小程序的的包进行代理转发到BP。
1. 下载Proxifier
下载proxifier,正规发布软件,因此谷歌搜索下载就行了。
下载后可使用以下注册码进行注册
123L6Z8A-XY2J4-BTZ3P-ZZ7DF-A2Q9C(Windows Portable Edition)5EZ8G-C3WL5-B56YG-SCXM9-6QZAP(Windows Standard Edition)P427L-9Y552-5433E-8DSR3-58Z68(MAC)
2. 配置代理应用和代理地址
先配置代理到BP端口
配置需要代理的应用
取消默认的代理规则,添加新的代理规则
设置代理规则名,设置需要代理的应用,设置代理行为。
代理的应用微信扩展应用
微信扩展应用地址可通过任务管理器查找
打开对应的小程序就可以看到对应的子进程记录
打开BP也能看到对应小程序的包。
二.强制开启开发者模式
利用开源工具WeChatOpenDevTool同时下载匹配版本的微信对其进行hook注入,实现打开开发者模式,使用断点调试 ...