本文适合
CTF Web安全 入门学习者。学完你能:判断 XML 解析入口是否存在 XXE,完成回显/盲 XXE 验证,并把漏洞推进到文件读取或 SSRF
XXE 是 XML External Entity,XML 外部实体注入。它发生在 XML 解析器允许解析攻击者控制的外部实体,从而读取文件、发起请求或造成其他副作用。
一句话判断
只要接口、上传文件或业务协议会解析攻击者可控 XML,并且解析器允许 DTD 或外部实体,就要怀疑 XXE。
本文适合
CTF Web安全 入门学习者。学完你能:判断 XML 解析入口是否存在 XXE,完成回显/盲 XXE 验证,并把漏洞推进到文件读取或 SSRF
XXE 是 XML External Entity,XML 外部实体注入。它发生在 XML 解析器允许解析攻击者控制的外部实体,从而读取文件、发起请求或造成其他副作用。
只要接口、上传文件或业务协议会解析攻击者可控 XML,并且解析器允许 DTD 或外部实体,就要怀疑 XXE。
本文适合
第一次接触 XSS 的学习者。学完你能:理解三种 XSS 类型,识别输出位置,进行基本测试
XSS 是跨站脚本攻击。它的本质是:用户输入被页面当作 HTML 或 JavaScript 执行,而不是当作普通文本显示。
后端把用户输入直接输出到页面:
<div>欢迎你,用户输入</div>
本文适合
已掌握基本 XSS(三种类型、输出位置、基本测试)的学习者。学完你能:围绕 CSP、DOM Sink、mXSS 和 JSONP 建立进阶 XSS 验证链,判断脚本是否真的能在目标上下文执行
当基础 <script>alert(1)</script> 不再生效,但页面仍存在可控 HTML、危险 DOM Sink、弱 CSP、JSONP callback 或浏览器解析差异时,就进入 XSS 进阶排查。
本文适合
已掌握基本 Web 安全的学习者。学完你能:识别 WebSocket 握手、认证和消息处理风险,验证 CSWSH、消息注入、越权和协议状态类漏洞
当页面通过 ws:// 或 wss:// 建立长连接,并且登录态、权限、业务动作或用户输入都放在 WebSocket 消息里处理时,就要把它当成独立攻击面分析。
WebSocket 不是“升级后的 HTTP 就安全了”。它的握手走 HTTP,但漏洞常发生在 Origin 校验、连接认证、消息格式、状态同步和服务端对每条消息的授权检查上。
本文适合
CTF Web安全 入门学习者。学完你能:从页面回显判断 SSTI,识别模板引擎,并完成从表达式验证到读取配置或命令执行的最小链条
SSTI 是 Server-Side Template Injection,服务端模板注入。它发生在用户输入被当成模板表达式解析,而不是被当成普通文本显示。
如果输入 {{7*7}}、${7*7}、<%= 7*7 %> 这类表达式后,响应里出现计算结果或模板报错,就要怀疑服务端模板注入。
本文适合
CTF Web安全入门学习者。学完你能:从 URL 抓取类入口判断 SSRF,完成回显/无回显验证,并把请求推进到内网探测或元数据读取
SSRF 是 Server-Side Request Forgery,服务端请求伪造。它的核心不是"访问一个 URL",而是让服务器替你去访问攻击者指定的地址。
只要题目让你提交 URL、图片地址、Webhook、远程导入地址或截图地址,并且响应像是由服务器访问目标后返回的,就要优先怀疑 SSRF。
本文适合
第一次接触 SQL 注入的学习者。学完你能:识别基本 SQL 注入点,使用布尔/联合/报错/时间注入提取数据
SQL 注入的本质是:用户输入被拼接进 SQL 语句后,改变了原本的查询逻辑。
后端代码如果这样写:
$id = $_GET["id"];
$sql = "select title, content from news where id = $id";
本文适合
已掌握基本 SQL 注入(布尔/联合/报错/时间)的学习者。学完你能:绕过 WAF、使用 sqlmap 高级功能、理解二次注入和堆叠注入
二次注入是指恶意数据先被安全地存入数据库,后续读取使用时未转义导致注入。
场景:
1. 用户注册时输入用户名: admin'--
2. 注册时使用了参数化查询,安全存入数据库
3. 用户修改密码时,代码从数据库读取用户名构造 SQL
4. SQL 变成: UPDATE users SET password='new' WHERE name='admin'--'
5. 实际修改的是 admin 的密码
本文适合
已掌握基本 Web 安全的学习者。学完你能:理解 OAuth 2.0 和 SAML 的认证流程,识别常见配置错误,利用绕过漏洞
OAuth 2.0 是一个授权框架,允许第三方应用获取用户资源的有限访问权限,而不需要暴露用户凭证。
Resource Owner:资源拥有者(用户)
Client:客户端(第三方应用)
Authorization Server:授权服务器
Resource Server:资源服务器