前端 XSS 漏洞扫描
将以下提示词粘贴到你的 AI 对话框中:
请根据 https://skillhub.cn/install/skillhub.md,安装 @org-02qudk26/frontend-mobile-security-xss-scan。
技能介绍
要解决什么问题
客户端把用户输入写进 DOM、URL 或事件回调时,很容易留下 跨站脚本(XSS) 攻击面:例如用 innerHTML 拼接未净化内容、href 接受 javascript: 协议,或在 React/Vue 里绕过框架默认转义。这类问题往往分散在业务组件与工具函数里,单靠人工 grep 很难覆盖框架特有的不安全 API。
技能如何工作
本技能以前端安全专家角色,对用户指定的代码上下文($ARGUMENTS$)做 静态分析导向 的 XSS 审查,重点包括:
- 注入与渲染:识别不安全的 HTML 操作、用户输入直接渲染、缺少净化的路径
- URL 与协议:检查赋值前是否校验、
javascript:/data:是否被拦截、URL构造与href净化 - 事件与动态代码:内联处理器、
addEventListener与字符串转代码等模式 - 框架差异:React 危险 API、Vue 的
v-htmlvsv-text、Angular 内置净化是否被绕过
产出通常包含:漏洞报告(含严重级别)、风险分析、带示例的修复建议、DOMPurify 等净化用法,以及可复用的预防检查清单(如优先 textContent、禁止带用户输入的 document.write 等)。也支持把扫描思路嵌入 CI/代码评审工作流。
适用边界
- 面向 React / Vue / Angular / 原生 JavaScript 的 XSS 模式与编码规范,不是通用 Web 渗透测试或后端模板注入专项
- 依赖你提供的代码片段或仓库上下文;不能替代运行时 WAF、依赖漏洞扫描或完整 SAST 产品
- 任务若与前端 XSS 无关,应改用其他安全或领域技能
使用场景
- 上线前审查 Vue 管理后台里 `v-html` 与用户输入拼接的组件,列出注入点并给出改用 `v-text` 或净化的改法
- React 项目 PR 中集中检查 `dangerouslySetInnerHTML`、URL 参数进 `href` 的用法,输出带严重级别的漏洞清单
- 接手遗留原生 JS 页面,扫描 `innerHTML`、`document.write` 与内联 `onclick` 字符串,整理可执行的修复示例
- 把 XSS 预防检查清单嵌入代码评审流程,对 Angular 模板与绕过内置净化的写法做框架向对照
适合人员
- 负责 B 端前端迭代的工程师,需要在合并前把 DOM 注入与不安全渲染模式拦在 CI 或评审里
- 团队里的应用安全接口人,要给 React/Vue 业务线一份可复述的 XSS 检查项与修复话术
- 维护多框架组件库的技术负责人,要评估第三方脚本接入时的 URL、事件与 HTML 操作风险
- 从 jQuery 迁移到现代框架的维护者,想系统梳理旧页面里 `innerHTML` 与协议白名单问题