基于 Chrome Manifest V3 的前端安全辅助插件,面向 Web 安全测试场景,集成输入点发现、CSP 读取、资产嗅探、框架指纹、SQL HackBar、Vue 路由分析、JS 开关与 Fuzz 字典扫描等能力,帮助在合法授权范围内更高效地完成排查与验证
以下为功能交互思路层面的参考与借鉴:
- HackBar(HackBar 交互与请求拼装思路)
- Wappalyzer(前端技术栈/框架指纹思路)
- VueCreak(Vue 路由守卫绕过)
- FindSomething(从前端资源中提取接口、敏感信息)
- 幻影(参数/路径字典探测的思路)
- User-Agent Switcher(UA 快捷切换的思路)
- Disable JavaScript(按站点开关 JS 的思路)
- AntiDebug_Breaker(JS 逆向神器)
- 预置 UA:iPhone Safari / Android Chrome / Windows Chrome
- 应用并刷新:将 UA 应用于当前站点并刷新页面
- 清除并刷新:恢复默认 UA 并刷新页面
- 显示当前站点(SITE)与当前 UA
- 扫描资源:汇总当前页面 HTML 与已引用脚本 URL,并在后台抓取文本进行模式匹配
- 输出类别(并附带来源文件与行号):
- IP:端口、完整 URL、绝对路径(/api/...)、相对路径(./../...)
- 域名、JWT、疑似 Key/Token、邮箱、手机号
- 加密/算法关键词(AES/RSA/MD5/SHA256/bcrypt 等)
- 敏感字段/凭据线索(password/token/access_token 等)
- 导出:JSON / TXT / CSV / XLSX
- 说明:XLSX 实际以 CSV 内容保存为
.xlsx,便于 Excel 直接打开
- 说明:XLSX 实际以 CSV 内容保存为
- 识别指纹:识别常见前端框架/库及版本线索(如 Vue/React/Angular/jQuery/Bootstrap 等)
- 输出版本来源:优先从全局对象/特征字段推断,其次从脚本文件名等线索推断
- 检测蜜罐:对页面特征做快速检查,给出“可能存在蜜罐/无明显特征”的提示
用于基于字典批量探测资源/接口是否存在(以状态码与 Content-Length 作为线索),支持暂停/继续。
- JS 文件 Fuzz
- 字典:
js.txt - 目标:常见脚本路径/文件名组合
- 字典:
- API Fuzz
- 字典:
api.txt - 目标:常见接口路径
- 字典:
- 接口 Fuzz
- 字典:
param.txt - 可填写 PATH:作为探测起点/前缀(例如
/web/pv)
- 字典:
- 结果展示
- 状态码:常见关注 200 / 302 / 403
- Size:从响应头
Content-Length提取 - 点击结果:在新标签打开对应 URL
- 批量填充:向当前页(包含子 Frame)中的
input/textarea/select/[contenteditable]写入测试载荷并触发事件(用于快速验证前端过滤/编码/拦截)- 内置测试载荷为固定字符串,便于快速回归与对比
- 读取 CSP:从后台缓存的响应头中读取
Content-Security-Policy(覆盖主文档与子帧),并展示拆分后的策略项 - 解析 Set-Cookie:从响应头中解析
Set-Cookie,区分 HttpOnly / 非 HttpOnly,辅助判断 Cookie 窃取/前端可见性 - 读取前端 Cookie:同时读取
document.cookie,展示页面当前前端可见的 Cookie 条目
用于把“页面中能快速发现的风险线索”集中展示(示例包括):
- HttpOnly Cookies:提示存在 HttpOnly Cookie
- Storage Tokens:从 localStorage/sessionStorage 中检索 token/auth/jwt/sess/key 等关键词的条目
- CSRF Tokens:从 meta 标签与隐藏字段中提取 csrf/token 相关线索
- PostMessage:检测到 message 监听时给出提示
- 关键接口/敏感操作:从页面中提取可能的关键接口/敏感操作线索并展示
用于结构化展示页面表单与字段,便于快速定位可控参数:
- 跨 Frame 扫描表单
- 展示:Frame 编号、Method、Action、Enctype
- 字段列表:Field、Value、Type、Hidden 标记
- 定位:点击“定位”联动到页面对应输入点并高亮
- 提取参数:从当前标签页 URL 中拆分并展示:
- Query 参数区
- Hash 参数区
- Path 参数区
- HTML 实体:对 payload 做 HTML entity 编码
- URL 编码:对 payload 做 URL 编码
- 十六进制:生成十六进制转义形式
- 结果以列表形式展示,便于复制与比对
用于快速构造并发送 HTTP 请求,配合“注入入口”做拼接/替换,辅助验证 SQLi 与边界行为。
- 基础请求
- METHOD:GET/POST/PUT/PATCH/DELETE
- URL:目标 URL
- 从当前页填充:自动填充当前标签页 URL 等基础信息
- 发送请求:通过后台发起请求并回显结果(避免前端 CORS 限制)
- 注入入口
- ENTRY:URL 参数 / POST 表单 / JSON / Cookie / Header
- KEY:要注入/替换的参数名
- PAYLOAD:注入载荷
- ACTIONS:追加 / 替换
- 请求编辑区
- Headers:自定义请求头
- Cookie:自定义 Cookie
- Body:支持 none / x-www-form-urlencoded / application/json / raw
- TOOLS:复制 Curl、清空
- Response 回显
- Meta:状态码与耗时
- Headers:响应头
- Body:响应体(超长会截断标注)
用于快速判断站点是否使用 Vue,并尽可能拿到更具体的版本线索与路由 URL 清单,以及辅助绕过前端路由守卫。
- 检测 Vue 版本:通过 DevTools App 与挂载 DOM 属性等方式识别 Vue 版本号(Vue2/3 均支持)
- 导出路由:尝试从运行时路由器中导出路由并生成 URL 列表
- 复制 URL 列表:将导出的 URL 列表复制到剪贴板
- Open All:批量在新标签打开导出的 URL(用于在授权范围内做快速面巡/对比)
- 绕过路由守卫:一键注入脚本拦截全局前置/解析守卫注册,缓解前端路由拦截(适合配合 DevTools 观察受保护路由)
用于按站点开关 JavaScript,并注入多种 Anti-Debug 绕过脚本(便于观察 SSR 结果、降低前端干扰、辅助逆向分析与调试)。
- SITE:当前站点
- JS STATUS:当前 JS 开关状态
- 禁用 JS:对当前站点禁用 JavaScript
- 启用 JS:对当前站点恢复 JavaScript
- 窗口尺寸检测绕过:冻结
innerWidth/innerHeight/outerWidth/outerHeight/visualViewport等尺寸,拦截resize监听,绕过“窗口尺寸变化即检测调试器”的逻辑 - 无限 Debugger 绕过:暴力清理已有定时器/动画帧,并 Hook
setTimeout/setInterval/requestAnimationFrame,拦截包含debugger的任务(缓解“无限 debugger” 类反调试) - Eval Debugger 绕过:Hook
eval和Function,以及定时器/RAF,将包含debugger负载的代码拦截或替换为空函数,降低混淆代码中的反调试影响 - toString 环境检测绕过:通过隐藏 iframe 获取“干净环境”的
Function.prototype.toString,覆盖当前环境的实现,用于绕过对函数toString()的环境检测
- 关于 XMCVE:团队介绍
- 招新方向:CTF 方向
- 联系我们:邮箱/公众号等信息(输入框支持点击自动全选,便于复制)
- 打开
chrome://extensions - 开启右上角“开发者模式”
- 点击“加载已解压的扩展程序”,选择本项目目录(例如
d:\HackerTools\XMCVE-JS-Sec) - 固定扩展图标,便于随时打开弹窗
- 打开目标站点,点击扩展图标
- “信息收集”中按需执行:UA 切换、敏感信息收集、指纹/蜜罐识别、Fuzz 探测
- “XSS”中按需执行:批量填充、读取 CSP、查看表单字段与 URL 参数
- “SQL 注入”中用 HackBar 构造请求、注入、复制 Curl,并查看响应
- “Vue”中检测版本并导出/复制/打开路由 URL
- “JS 逆向”中按站点禁用/启用 JS 辅助分析
权限声明见 manifest.json:
activeTab:仅对当前激活标签页生效scripting:向页面注入脚本以采集信息、执行定位高亮等操作webRequest:读取响应头以获取 CSP(主框架与子框架)cookies:读取 Cookie 信息以辅助安全线索展示(例如 HttpOnly 等)contentSettings:按站点开关 JavaScriptdeclarativeNetRequest:配合网络规则控制(用于按站点策略控制类功能)host_permissions: <all_urls>:允许在任意站点/子帧上执行采集与探测
- manifest.json:MV3 配置、权限、后台与弹窗入口
- background.js:响应头监听缓存 CSP;后台请求代理(SQL_FETCH);深度嗅探(DEEP_SNIFF)
- content.js:页面内采集与定位能力(表单/字段/高亮)
- popup.html:弹窗 UI(各模块布局与按钮)
- popup.js:弹窗逻辑(各按钮行为、消息通信、导出与渲染)
- style.css:弹窗样式
js.txt/api.txt/param.txt:Fuzz 扫描字典(可按需自行扩充)
- 仅用于合法授权的安全测试/内部自查环境
- 资源嗅探/探测可能受同源策略、CSP、跨域响应头等影响,结果仅作线索参考
- “Open All” 会批量打开标签页,建议在测试环境或小批量 URL 下使用
- 读取不到 CSP
- 页面未设置 CSP 响应头;或需刷新页面后再读取
- 资产嗅探结果为空
- 页面资源较少、脚本受保护、或尚未加载完成;建议页面加载完成后再扫描
- Vue 检测无版本号
- 站点未暴露版本线索/生产构建去信息;可结合脚本文件名、sourcemap 等手段进一步分析
- 本项目为纯静态 MV3 扩展,无需构建,加载目录即可使用
- 修改后在
chrome://extensions点击“重新加载”生效
- 当前版本:
1.0.0 - 免责声明:本工具仅用于合法合规的渗透测试与安全研究,使用者对其行为与后果负责

