StackPrism(栈棱镜)

6个月前发布 271 00

StackPrism(栈棱镜) 是一款基于 Chrome/Edge Manifest V3 架构的新一代技术栈识别扩展。它通过 运行时、DOM、资源 URL、响应头、动态加载、源码版权注释 六个维度并行收集线索,结合智能去重与伪造检测算法,将站点使用的前后端技术分门别类,提供远超传统工具的识别精度与深度。

所在地:
中国
收录时间:
2026-05-14
其他站点:
StackPrism(栈棱镜)StackPrism(栈棱镜)

在 Web 开发与安全审计中,快速准确地识别目标网站的技术栈至关重要。然而,传统工具往往仅依赖 HTML 资源 URL 或静态特征,难以应对现代 SPA(单页应用)、动态加载及服务器隐藏标识的复杂场景。StackPrism(栈棱镜) 是一款基于 Chrome/Edge Manifest V3 架构的新一代技术栈识别扩展。

它通过 运行时、DOM、资源 URL、响应头、动态加载、源码版权注释 六个维度并行收集线索,结合智能去重与伪造检测算法,将站点使用的前后端技术分门别类,提供远超传统工具的识别精度与深度。

核心亮点:六维检测、动态感知、智能收敛

1. 四通道并行扫描,全方位无死角

StackPrism 摒弃单一视角,采用四条独立通道并行工作:

  • 静态扫描:注入脚本实时扫描 DOM、全局变量、CSS 类名/变量、<meta> 标签。
  • 响应头观察:Service Worker 监听 webRequest.onHeadersReceived,捕获主文档、XHR、iframe 的响应头及真实 HTTP 版本(绕过跨域限制)。
  • 动态资源监听:利用 PerformanceObserver + MutationObserver,累积页面交互后新加载的脚本、样式、iframe 及 Feed 流。
  • JS 版权注释扫描:后台异步抓取主 Bundle 开头的版权注释,精准识别打包进 index/main/vendor chunk 的第三方依赖。

2. 智能伪造检测与自指抑制

  • 伪造识别:当响应头中同时出现 ≥4 种主体身份字段(如 server, x-aspnet-*, x-powered-cms 等)或 server 字段拼接多个产品时,自动降级相关类目置信度并发出警示。
  • 自指抑制:在 GitHub、X (Twitter)、npmmirror 等 50+ 主流站点上,自动过滤同名服务识别,避免“我在 GitHub 上检测到 GitHub”的尴尬误报。

3. Manifest V3 架构,极致轻量

  • 事件驱动:无后台常驻进程,仅在需要时激活 Service Worker,内存占用极低。
  • 规则即数据:50+ 个 JSON 规则文件集中维护,构建期预编译 hint prefilter 与 keyword 合并正则,运行时仅命中候选,效率大幅提升。
  • HTTP 版本识别:直接从 webRequest.statusLine 提取真实协商版本(HTTP/1.1, h2, h3),不受 Timing-Allow-Origin 限制。

4. 50+ 类目全覆盖,紧跟技术前沿

识别范围涵盖:

  • 前端:框架 (React/Vue/Angular)、UI 库 (AntD/MUI)、构建工具 (Vite/Webpack)。
  • 服务端:Web 服务器 (Nginx/Apache)、后端框架 (Spring/Django)、语言 (Node/Python/Go)。
  • 内容与电商:CMS (WordPress/Drupal)、电商平台 (Shopify/Magento)、主题模板。
  • 第三方与服务:SaaS、监控探针、AI 大模型集成、第三方登录、支付网关。
  • 营销与安全:广告追踪、统计分析、HTTPS/CSP 策略、Cookie 同意弹窗。

安装与使用

方式一:源码加载(推荐开发者)

  1. 克隆仓库:
    git clone https://github.com/setube/stackprism.git
    cd stackprism
    pnpm install
    pnpm run build
    
  2. 加载扩展:
    • 打开 Chrome/Edge 扩展管理页面 (chrome://extensions 或 edge://extensions)。
    • 开启右上角 “开发者模式”。
    • 点击 “加载已解压的扩展程序”,选择构建出的 dist/ 目录。
  3. 开始识别:访问任意网页,点击扩展图标即可查看识别结果。

方式二:开发模式

pnpm run dev          # 启动开发模式 + HMR 热更新
pnpm run docs:dev     # 本地预览 VitePress 文档

规则维护与扩展

StackPrism 采用数据驱动的规则系统,新增技术无需修改代码,只需编辑 JSON:

  1. 定位规则文件:在 public/rules/page/*.json 或 headers/*.json 中添加新规则。
  2. 编写规则示例:
    {
      "name": "Vue.js",
      "category": "前端框架",
      "patterns": ["__vue_devtool_api__"],
      "matchType": "keyword",
      "matchIn": ["globals"],
      "confidence": "高",
      "kind": "Framework"
    }
    
  3. 重新构建:运行 pnpm run build,预编译插件会自动注入 __hints 与 __keywordCombined 优化运行时性能。

规则质量约束建议:

  • 优先高特征信号:如专属响应头、独家 CSS 选择器、window 全局变量。
  • 避免宽泛关键词:如 spring, container 等易误报词汇。
  • 限定匹配范围:优先使用 resources / url / headers,减少裸 html 匹配带来的正文误报。

相关导航