- 博客(16)
- 收藏
- 关注
原创 PortSwigger XSS 靶场:一个页面滚动功能如何引发 DOM XSS
通过 PortSwigger 靶场分析 jQuery 选择器中的 DOM XSS:页面如何监听 hashchange、读取并解码 URL hash,再将其拼接进 $() 选择器,最终导致恶意 HTML 被解析执行。文章还梳理了 iframe 自动触发思路,以及 jQuery $()、Window、location.hash 和 hashchange 等相关基础知识,并总结了小型页面功能同样需要关注不可信数据流的问题。
2026-09-18 19:27:34
226
原创 XSS 靶场练习:Select 元素中的 DOM XSS 原理、复现与修复
通过 PortSwigger 靶场分析 storeId 参数如何经 URLSearchParams 进入 document.write(),在 <select> 上下文中形成 DOM XSS。笔记记录了注入验证和本地复现,并比较 URL 编码、白名单与 DOM API 的作用,最终用预设选项和 textContent 切断危险的数据流。
2026-09-16 18:13:30
299
原创 我的 XSS 学习笔记:从漏洞原理、DVWA 实战到源码分析
本文从浏览器同源策略出发,梳理 XSS 的基本原理,以及反射型、存储型和 DOM 型 XSS 的区别。随后结合 DVWA 的不同安全等级,记录反射型 XSS 与存储型 XSS 的验证过程、常见防护绕过思路,并通过追踪 PHP 源码、数据库读写和 HTML 输出流程,分析漏洞产生的根因。最后总结了从 Source、Sink、Context 三个角度定位 XSS 的方法,以及上下文编码、避免危险 DOM API 等防御要点。
2026-09-10 21:19:48
201
原创 DOM XSS 学习笔记:DVWA 三难度实战与“单引号之谜“
一文理清 DOM XSS:DOM 与 JavaScript 的关系、源与汇(source/sink)、DVWA LOW/MEDIUM/HIGH 三难度实战。重点深挖 HIGH 白名单绕过——为什么 payload 必须带一个单引号?为什么拼接两处却只执行一次?为什么会有两个数据包?三个问题用本地复现实验逐个钉死,还原 302 重定向继承 fragment 的完整机制链。
2026-08-27 11:28:37
501
原创 [SUCTF 2019]EasySQL:新手视角的黑盒推理全过程
一道靶场题的完整复盘:输入任何数字都返回 1,输入 or 被拦截,输入 *,1 却能出 flag——本文记录我如何用黑盒测试还原后端 SQL 结构:从"纯数字恒定返回 1"锁定逻辑运算,从"aaa 报错被吞 vs 'aaa' 无返回"定位过滤发生在 PHP 层,再用 *,0 实验反驳流行的 sql_mode 解法。新手视角的完整推理链,附关键实验输出与踩坑记录。
2026-08-20 18:04:49
308
原创 MySQL黑盒信息收集:注入之后,库表列、用户密码、权限都在哪
注入成功后,第一步是摸清目标数据库结构。本文用真实实验走完 MySQL 黑盒信息收集全流程:information_schema 查库查表查列、mysql 系统库里的用户与密码哈希、权限表的层级划分,再到 ORDER BY 探测列数、UNION 联合查询回显——每个环节都讲"为什么":为什么只返回一行数据、为什么 payload 不生效、后端到底如何处理你的输入。附极客大挑战 2019 lovesql 完整实战复现,从 or 1=1 登录到 group_concat 拿到 flag
2026-08-18 14:35:48
349
原创 二阶SQL注入实验:参数化的边界在哪里
二阶SQL注入实验全记录:用 PHP + MySQL 自建靶场,从创建用户(存储点)到修改密码(触发点)完整复现注入链路,回答一个问题——参数化查询的边界在哪里。实验证明:变量是值,值进槽位永远安全;一旦把变量的内容拼进 SQL 文本,它就成了代码,永远危险。含两个存储过程对照(动态拼接 vs 参数化)与真实踩坑记录,配套 GitHub 仓库一键复现。
2026-08-17 17:39:06
438
原创 SQL注入防御实战:同一段漏洞代码的三层加固实验
SQL 注入的防御手段大家都不陌生,但每层防御到底能削减攻击者多少能力?本文复现一段无任何防护的 PHP 查询代码,用同一个注入 payload,逐层加上最小权限、参数化查询、服务端输入验证,观察攻击效果如何被一步步压缩,并对照 DVWA Impossible 与 High 级别的源码进行分析。
2026-08-14 16:14:01
419
原创 PHP Filter 过滤器详解:验证与清理、四大函数与常见坑
PHP 的 Filter 扩展常用于处理外部输入,但"验证"和"清理"经常被混为一谈。本文系统梳理 filter_input、filter_var 及两个数组函数的用法与差异,并总结 FILTER_NULL_ON_FAILURE 的真实作用、flags 位掩码的正确写法等常见坑,最后说明过滤器在 SQL 注入与 XSS 防护中的正确定位。
2026-08-13 13:42:27
394
原创 MySQL 最小权限法:从数据库账户到系统服务,双重收紧攻击面
摘要:数据库安全的最小权限法实践 本文详细介绍了SQL注入防护中的最小权限原则,重点分析了两层权限体系(操作系统账户和MySQL内部账户)的安全配置策略。文章指出,MySQL 8.0默认使用NETWORK SERVICE账户而非SYSTEM账户,大大降低了安全风险。通过对比不同权限组合的安全影响,强调必须同时收紧两层权限系统。文中提供了Windows服务账户修改的完整步骤、MySQL权限级别的详细说明(全局/数据库/对象级),以及常用的权限管理命令,指导用户创建受限账户并合理分配权限。核心建议是:应用程序账
2026-08-11 18:50:11
487
原创 SQL 存储过程:语法、PHP 调用与连接中毒排坑实录 附:SQL SECURITY 权限模型与防注入注意事项
本文基于 MySQL 8.x 详解存储过程的完整使用流程:从 DELIMITER 分隔符、CREATE PROCEDURE 语法、特征声明,到 CALL 调用与 PHP/MySQLi 集成。重点剖析初学者最易踩的坑——多结果集未处理完导致的"连接中毒"(Commands out of sync),并附完整实验代码与排坑方案。最后补充 SQL SECURITY 权限模型(DEFINER/INVOKER)与防注入注意事项,帮助你在封装业务逻辑的同时守住安全底线。
2026-08-09 11:26:38
448
原创 为什么参数化查询能防 SQL 注入?一篇文章讲透原理与边界
本文介绍了PHP中MySQLi扩展实现参数化查询的原理和使用方法。参数化查询通过预处理语句和参数绑定分离SQL结构与数据,防止SQL注入攻击。主要分两个阶段:准备阶段提交SQL模板,执行阶段传入参数值。文章详细说明了相关函数的使用,如mysqli_prepare()、mysqli_stmt_bind_param()和mysqli_stmt_execute()等,并比较了两种获取结果的方式。参数化查询能确保用户输入不会被解释为SQL代码,适用于处理不可信数据,同时在重复执行相同SQL结构时也能提升性能。
2026-08-06 21:42:44
297
原创 DVWA SQL Injection(SQL注入)源码分析:LOW、Medium、High 原理与防御【新手向】
本文面向初学者,结合 DVWA SQL Injection 的 LOW、Medium 和 High 难度源码,分析用户输入如何通过字符串拼接进入 SQL 语法环境,并逐步讲解引号闭合、永真条件、注释与词法分析、字符串字典序、UNION 注入及堆叠语句等知识。同时对比三个难度采取的限制及其不足,最后总结参数化查询、服务端输入验证、最小权限和安全错误处理等防御思路。文章重点不在于罗列 payload,而是理解每个输入如何改变 SQL 结构以及数据库为什么会产生相应结果。
2026-07-17 18:44:22
462
原创 从输入域名到拿到 IP:DNS 解析完整链路梳理
本文系统梳理了DNS解析的核心机制,从域名层级结构到分布式查询流程。主要内容包括: 域名系统分层架构 树状域名结构(根域/TLD/二级域/子域) 新老顶级域名分类(国家/通用/新通用域名) 关键服务器角色 根服务器(全球13组逻辑节点) TLD服务器(管理二级域委托) 权威服务器(管理具体DNS区记录) 本地递归解析器(查询入口) 核心解析流程 递归与迭代查询的配合模式 NS记录引导的层级跳转机制 缓存加速与生存时间控制 特殊记录类型 A/AAAA记录(IP映射) CNAME别名解析 glue记录防循环 M
2026-06-14 20:39:36
434
原创 URL 编码
本文是一篇关于URL编码的入门指南,主要解答了以下核心问题: URL编码的定义:将不安全或非ASCII字符转换为%HH格式(如中文"我真帅"→%E6%88%91%E7%9C%9F%E5%B8%85),确保跨系统兼容性。 URL/URI/URN关系:URI是总称,包含URL(带访问路径)和URN(仅资源标识,如ISBN号)。 编码必要性:早期URL设计基于ASCII字符集,需兼容非ASCII字符;同时避免特殊字符(如?&)与URL结构冲突。 编码规则:保留字符(如?&=)作为URL结构时不编码,出现在用户数据
2026-06-06 23:19:37
756
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅