◈ 渗透任务
电商搜索功能安全评估
任务中
你的身份
「暗影安全公司」渗透测试工程师
目标网站
ShopMax 电商平台 (shopmax.example.com)
委托方
ShopMax 安全团队 — 收到多名用户报告称点击搜索结果后账户被盗
任务目标
验证搜索功能是否存在反射型 XSS 漏洞,并演示 Cookie 窃取攻击
- 在搜索框中注入 JavaScript 代码,使页面执行
alert(1) - 构造恶意 URL,使点击者自动执行你的代码
◈ 背景情报
漏洞类型:反射型 XSS (Reflected XSS)
反射型 XSS 是最常见的 XSS 类型。攻击者的 payload 包含在 URL 参数中,服务器将其直接反射回 HTML 响应。
关键特征:非持久化。payload 不会存储在服务器上,需要受害者点击恶意链接才能触发。
攻击流程
- 攻击者构造恶意 URL:
page.php?search=<script>alert(1)</script> - 受害者点击该链接
- 服务器将参数值直接嵌入 HTML
- 浏览器解析 HTML,执行注入的代码
目标代码分析
<?php
// 获取 URL 参数
$search = $_GET['search'];
// 危险:直接输出,无过滤/转义
echo "搜索结果: " . $search;
// ↑ 用户输入直接拼接到 HTML
?>
为什么危险?
- 窃取 Cookie → 会话劫持
- 钓鱼攻击 → 伪造登录表单
- 键盘记录 → 捕获用户输入
- 重定向 → 恶意网站跳转
◈ 目标:ShopMax 搜索功能
目标系统:以下是 ShopMax 电商平台的搜索功能复现。用户输入会被直接显示在搜索结果中,未做任何过滤。你的任务是注入 JavaScript 代码。
在搜索框中输入内容,点击「搜索」查看结果...
查看目标源码 (PHP)
<?php
// 获取用户输入
$search = $_GET['search'];
// 危险:直接输出用户输入,无任何过滤/转义
echo "搜索结果: " . $search;
?>
目标防御状态:无任何过滤 — 输入被原样输出到 HTML