Token导航 LogoToken导航

Agent Skill · 研究检索

attack-surface-xss(攻击面 xss)

attack-surface-xss 用于查找、检索和筛选相关信息,适合在 Codex、Claude、Cursor、Gemini CLI 中需要根据关键词、任务场景或来源线索快速定位候选结果时使用。可结合来源仓库、安装命令和原始 README 继续核验具体用法。安装前建议确认权限范围、维护状态,以及是否会触发联网、命令执行或文件读写。

attack-surface-xss 是研究检索类 Agent Skill,可用宿主为 Codex、Claude、Cursor、Gemini CLI,通过GitHub 仓库获取,权限为操作浏览器;许可证信息还不明确,第三方扫描有提醒项,按安装量在研究检索类的 73,675 个 Skill 里排第 67,721。

总安装 242周安装 10GitHub Stars 4下载 79核验 2026-05-01

安装说明

本站只整理中文说明,不托管安装包,也不代用户安装。
GitHub
许可证
unknown

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:attack-surface-xss(攻击面 xss)
来源仓库:https://github.com/igbuend/grimbard
仓库路径:skills/attack-surface-xss
安装命令:
npx skills add https://github.com/igbuend/grimbard --skill attack-surface-xss
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。该命令会通过 npx skills 从第三方来源获取 Skill;本站只展示命令,不托管安装包,也不自动执行。

skills.shnpx skills
npx skills add https://github.com/igbuend/grimbard --skill attack-surface-xss

这个 Skill 是做什么的

研究检索类 Skill 主要解决「找资料、核对事实、把来源整理清楚」的问题,通常会让助手先检索再总结。

attack-surface-xss 用于被动观测目标站点的 XSS 攻击面结构,识别潜在漏洞位置。适用于 Web 应用安全评估、防御机制验证及红队作战地图绘制场景。分析 HTTP 头配置、前端框架行为与 DOM 结构特征,判断 XSS 可行性等级。仅执行非侵入式探测,不包含实际载荷注入或漏洞利用行为。

适用宿主包括 Codex、Claude、Cursor、Gemini CLI,接入前应确认版本、权限和运行环境要求。

来源仓库内路径:skills/attack-surface-xss

上手步骤

4 步
  1. 1

    确认自己的宿主工具

    公开资料标注支持 Codex、Claude、Cursor、Gemini CLI;先确认自己用的是其中之一,再按对应工具的 Skills 目录放置。

  2. 2

    拿到安装命令

    可以直接复制的命令是 npx skills add https://github.com/igbuend/grimbard --skill attack-surface-xss;命令里的占位符换成自己的路径或密钥再执行。

  3. 3

    安装后重启宿主

    命令执行完要完全退出宿主工具再打开,让新装的 Skill 被重新扫描到,否则列表里可能看不到。

  4. 4

    按最小权限试用

    它需要操作浏览器,先在测试目录或测试账号里跑,确认没问题再放到正式项目。

常见问题

6 条

attack-surface-xss 怎么安装?

在终端执行 npx skills add https://github.com/igbuend/grimbard --skill attack-surface-xss。装完完全退出宿主工具再打开,让它重新扫描本地 Skill。

attack-surface-xss 支持哪些 AI 工具?

公开资料标注支持 Codex、Claude、Cursor、Gemini CLI。其他工具只要能读取本地 Skill 目录,一般也能手动放进去,但要自己确认触发方式是否一致。

attack-surface-xss 需要什么权限?

权限级别是操作浏览器。该 Skill 可能涉及浏览器控制能力,使用时可能读取或操作网页内容,需要在受控环境中确认权限边界。

attack-surface-xss 是免费的吗?

公开资料没有标注明确许可证,收费和商用限制都无法确认。正式使用前请到来源仓库核对授权说明。

attack-surface-xss 用的人多吗?

公开数据是累计安装 242 次,近一周安装 10 次,下载 79 次,GitHub 4 星。这些数字来自第三方目录统计,只能当作热度参考,不代表质量或安全性。

attack-surface-xss 安全吗?

第三方扫描有提醒项,说明存在需要人工确认的行为。安装前请打开源码看清它读了什么、联网到哪里。

值得选的地方和要先想清楚的地方

值得选的地方

  • 同时适配 4 种工具,换客户端不用重新找替代品。

先想清楚的地方

  • 许可证没有明确标注,能不能商用、能不能再分发都不确定。
  • 第三方扫描存在提醒项或未通过项,需要人工逐条确认。
  • 第三方目录整理,版本更新和行为细节以来源仓库为准。

适不适合你

更适合

  • 已经在用 Codex,想直接扩展它能力的人。
  • 需要处理研究检索类任务、又不想每次都手写提示词的人。

不太适合

  • 需要明确授权才能用到公司项目里的场景。
  • 需要厂商级技术支持和 SLA 的生产系统。

研究检索类 Skill 对比

6 个同类
Skill总安装GitHub 星权限许可证扫描
find-skills

寻找技能 · Codex、Claude

31,199,81316,486操作浏览器MIT有提醒
self-improving-agent

自我改进 Agent · OpenClaw

16,464,0023,396接触敏感数据MIT-0通过
soultrace

灵魂追踪 · Codex、Claude

7,588,94412需要联网未明确有提醒
self-improving

自我完善 · OpenClaw

6,829,2841,046需要联网MIT-0通过
microsoft-foundry

微软代工厂 · Codex、Claude

6,614,144764调用外部服务未明确有提醒
attack-surface-xss

攻击面 xss · 本页

2424操作浏览器未明确有提醒

按安装量取同分类前几名;数字来自第三方目录统计,只作热度参考,不代表质量结论。

SKILL.md 原文

XSS Attack Surface Reconnaissance

Map the XSS attack surface of a target URL. Analyze security headers, client-side frameworks, JavaScript patterns, and DOM structure to identify what makes XSS possible, easier, or harder.

This skill does NOT inject payloads or test for XSS. It performs passive observation only (HTTP requests + source analysis). For active XSS testing, use /xss-finder.

Target: $ARGUMENTS (URL to analyze)

When to Use This Skill

  • Before running /xss-finder — understand what defenses exist
  • Scoping an XSS engagement — identify highest-value test targets
  • Evaluating a site's XSS posture without active testing
  • Mapping client-side technology stack for exploit development
  • Identifying which XSS classes (reflected, stored, DOM) are most likely

Core Capabilities

CapabilityDescription
Header AssessmentCSP, X-Content-Type-Options, cookie flags, charset
Framework DetectionReact, Angular, Vue, jQuery + version extraction
Vulnerable Library DetectionKnown CVEs per detected library version
DOM XSS Source/Sink MappinginnerHTML, eval, location.hash, postMessage
Input Vector EnumerationForms, hidden fields, URL parameter reflection
Attack Priority RankingOrdered list of where to focus XSS testing

Workflow

Phase 1: Fetch Target

Retrieve response headers and page content from $ARGUMENTS:

# Response headers (follow redirects)
curl -sI -L "$URL"

# Full page body (HTML + inline JS)
curl -sL "$URL" -o /tmp/xss-recon-body.html

Use WebFetch as fallback for JavaScript-rendered content (SPAs that return minimal HTML).

Extract script references:

  1. Parse all <script> tags — capture both inline content and external src URLs
  2. Fetch external JS files from same-origin and known CDNs (jsdelivr, cdnjs, unpkg, googleapis)
  3. Cap at 20 external files to avoid excessive fetching
  4. Store fetched JS content for Phase 4 analysis

Record metadata:

  • Final URL after redirects (HTTP → HTTPS upgrade?)
  • Response status code
  • Server header value
  • Number of redirects

Phase 2: Security Headers Assessment

Check each header and rate its XSS impact:

HeaderCheckXSS Impact
Content-Security-PolicyPresent? unsafe-inline? Wildcards? Bypass CDNs?Primary XSS defense
Content-Security-Policy-Report-OnlyNon-enforcing — intel onlyShows intended policy
X-Content-Type-Optionsnosniff present?Blocks MIME-confusion script execution
X-XSS-ProtectionDeprecated; 0 = deliberately disabledLegacy posture indicator
Referrer-PolicyData leak controlReferer-based injection intel
Permissions-PolicyFeature restrictionsLimits attack surface
Content-TypeCharset specified?Missing charset enables UTF-7/ISO-2022-JP XSS
Set-CookieHttpOnly, Secure, SameSite flagsCookie theft feasibility

CSP quick assessment (inline):

  • Missing CSP → flag as critical gap, all inline injection viable
  • unsafe-inline in script-src → inline script injection works directly
  • unsafe-eval → eval-based payloads viable
  • Wildcard * or data: in script-src → script loading from any origin
  • Known bypass CDNs allowlisted (googleapis, cdnjs, jsdelivr, unpkg) → JSONP/Angular bypasses
  • strict-dynamic present → script gadget focus, not direct injection
  • Trusted Types → DOM sink restrictions active

For deep CSP analysis, recommend running /content-security-policy $URL.

Cookie assessment:

  • Missing HttpOnly → document.cookie exfiltration works
  • Missing Secure → network MITM can steal cookies
  • Missing SameSite → CSRF + XSS chaining viable
  • All flags present → cookie theft blocked, pivot to DOM-based exfiltration

Phase 3: Framework & Library Detection

Detect client-side stack from page source, script content, and global objects.

Frameworks — detection signatures:

FrameworkDetection Patterns
Reactdata-reactroot, _reactRootContainer, __REACT_DEVTOOLS, react.production.min.js
Angularng-app, ng-version attribute, angular.js/angular.min.js in script src
Vuedata-v- attributes, __VUE__, vue.js/vue.min.js in script src
jQueryjquery.min.js in script src, jQuery or $ assignment in inline scripts
Next.js__NEXT_DATA__ script tag, _next/static paths
Nuxt__NUXT__ global, _nuxt/ paths
Sveltesvelte in script paths, __svelte
Emberember.js in script src, data-ember- attributes
Backbonebackbone.js in script src

Security libraries — detect sanitizers:

LibraryDetectionNotes
DOMPurifydompurify in script src/content, DOMPurify.sanitize callsCheck version — mXSS bypasses per version
sanitize-htmlsanitize-html in script pathsServer-side usually, may appear in bundles
Helmet.jsInfer from header patterns (X-DNS-Prefetch-Control, X-Content-Type-Options set together)Server-side only
Trusted Typesrequire-trusted-types-for in CSP, trustedTypes API usageBrowser-enforced sink protection

Vulnerable library detection — extract versions from filenames and CDN URLs:

LibraryVulnerable VersionsXSS-Relevant Issue
jQuery < 3.5.0jquery-3.2.1.min.js, CDN path version$.htmlPrefilter XSS (CVE-2020-11022, CVE-2020-11023)
Angular < 1.6.xangular.js/1.5.8/ in CDN URLTemplate sandbox escape: {{$on.constructor('alert(1)')()}}
DOMPurify < 2.4.0dompurify/2.3.x/ in CDN URLmXSS via SVG+style namespace confusion
lodash < 4.17.21lodash/4.17.x/ in CDN URLPrototype pollution gadgets → XSS chain
Handlebars < 4.7.7handlebars/4.7.x/ in CDN URLPrototype pollution → template injection
Moment.jsAny versionReDoS, often bundled with vulnerable deps

For each detected library: report version, known XSS-relevant CVEs, and specific exploitation notes.

Phase 4: JavaScript Pattern Analysis

Analyze inline scripts and fetched JS files for dangerous patterns.

DOM XSS Sinks (code that writes to DOM unsafely):

SinkPatternRisk Level
innerHTMLel.innerHTML =...High — direct HTML injection
outerHTMLel.outerHTML =...High — replaces entire element
document.write()document.write(...)High — writes to document stream
document.writeln()document.writeln(...)High — same as write with newline
insertAdjacentHTML()el.insertAdjacentHTML(...)High — injects HTML at position
eval()eval(...)Critical — arbitrary code execution
Function()new Function(...)Critical — creates function from string
setTimeout(string)setTimeout("...",...)High — eval equivalent
setInterval(string)setInterval("...",...)High — eval equivalent
$.html()$(sel).html(...)High — jQuery innerHTML wrapper
$(user_input)$(location.hash)Critical — jQuery selector injection
v-htmlv-html="..." directiveHigh — Vue raw HTML binding
dangerouslySetInnerHTMLdangerouslySetInnerHTML={{...}}High — React raw HTML
location.href =location.href =...Medium — open redirect → XSS chain
location.assign()location.assign(...)Medium — redirect sink
location.replace()location.replace(...)Medium — redirect sink
window.open()window.open(...)Medium — navigation sink
navigation.navigate()navigation.navigate(...)Medium — Chrome navigation API
Dynamic import()import(...)High — module loading sink

DOM XSS Sources (where attacker input enters):

SourcePatternNotes
location.hashlocation.hash, window.location.hashFragment — not sent to server
location.searchlocation.search, URLSearchParamsQuery string
location.hreflocation.href (read)Full URL including fragment
document.referrerdocument.referrerAttacker-controlled via link
window.namewindow.namePersists across navigations
document.cookiedocument.cookie (read)If attacker can set cookies
postMessageaddEventListener('message',...)Check origin validation
localStoragelocalStorage.getItem(...)Persistent, attacker-settable
sessionStoragesessionStorage.getItem(...)Session-scoped
URL() constructornew URL(...), url.searchParamsParameter parsing

Source-to-sink tracing (static approximation): For each detected source, trace whether it flows into a sink without sanitization. Flag direct connections (e.g., el.innerHTML = location.hash). Note: full taint analysis requires browser DevTools or dynamic instrumentation — this is a best-effort static scan.

Dangerous constructs:

ConstructPatternXSS Relevance
Global variable declarationsvar config =... on windowDOM clobbering targets (see dom-clobbering anti-pattern)
Prototype pollution gadgetsObject.assign, $.extend, _.merge with user inputGadget chain → XSS
JSONP endpointscallback= parameter in script srcArbitrary JS execution via callback
postMessage without origin checkaddEventListener('message', fn) without event.origin validationAny origin can inject data
Template literal injection` ...${userInput}... ` in dangerous contextsString interpolation into sinks
with statementswith(obj) {...}Scope confusion, clobbering
Relative script loading<script src="./app.js">RPO vulnerability — path confusion

Phase 5: DOM & HTML Analysis

Analyze page structure for XSS-relevant features.

Input vectors:

  • Enumerate all <input>, <textarea>, <select> elements (visible + hidden)
  • Record name, type, id, maxlength, pattern attributes
  • Map forms to their action URLs and method (GET/POST)
  • Flag hidden fields — often unsanitized server-side (reference xss-finder hidden field methodology)
  • Flag file upload forms — SVG upload → stored XSS potential

URL parameter reflection test: For each URL parameter in $ARGUMENTS, check if value appears in response body. If reflected, note the reflection context (HTML body, attribute, script, comment).

Meta tags:

TagCheckXSS Impact
<meta charset>Missing?Enables charset-based XSS (ISO-2022-JP, UTF-7)
<meta http-equiv="Content-Security-Policy">Present?Meta CSP — limited (no frame-ancestors, no report-uri)
<meta http-equiv="refresh">User-controllable URL?Redirect vector

Embedding elements:

  • <iframe> — sandboxed? Is src user-controllable?
  • <object>, <embed> — plugin execution vectors
  • Inline <svg> — enables advanced XSS vectors (onbegin, SMIL <animate>)
  • <math> — MathML namespace confusion for mXSS (reference mutation-xss anti-pattern)

Inline event handlers: Count existing inline event handlers (onclick, onerror, onload, etc.) in page source. High count indicates the framework does not prohibit inline handlers — weak or absent CSP likely.

Third-party embeds:

  • Google Tag Manager (gtm.js) — tag injection surface
  • Analytics scripts (Google Analytics, Mixpanel, Segment) — config manipulation
  • Ad network scripts — additional injection surface
  • Social widgets — cross-origin messaging

Phase 6: Report Generation

Generate a structured report organized for ethical hacker workflow:

# XSS Attack Surface Report

**Target:** {URL}
**Date:** {date}
**Overall XSS Resistance:** {Strong | Moderate | Weak | Minimal}

## Executive Summary
{2-3 sentences: key findings, biggest weaknesses, recommended testing focus}

## Security Headers

| Header | Value | XSS Impact | Assessment |
|--------|-------|------------|------------|
| CSP | {value or MISSING} | {impact} | {Strong/Weak/Missing} |
| X-Content-Type-Options | {value or MISSING} | {impact} | {OK/Missing} |
| Set-Cookie | {flags or MISSING} | {impact} | {assessment} |
| ... | | | |

**Hacker Notes:** {Specific header weaknesses — e.g. "CSP has unsafe-inline, inline
script injection works directly" or "No HttpOnly on session cookie, document.cookie
exfiltration viable"}

## Technology Stack

| Component | Version | XSS Relevance |
|-----------|---------|---------------|
| {library} | {version} | {specific CVE or known bypass} |

**Hacker Notes:** {Which libraries have known bypasses, specific payloads to try}

## Dangerous JavaScript Patterns

### DOM XSS Sinks Found
| Sink | Location | Source Connected | Risk |
|------|----------|-----------------|------|
| innerHTML | inline script line 42 | location.hash | High — direct DOM XSS |
| $.html() | app.js:156 | AJAX response | Medium — depends on server sanitization |

### DOM XSS Sources Found
| Source | Handler | Origin Check | Risk |
|--------|---------|--------------|------|
| postMessage | addEventListener line 88 | No | High — any origin can inject |
| location.hash | hashchange handler | N/A | Medium — client-only input |

### Dangerous Constructs
{DOM clobbering targets, prototype pollution gadgets, JSONP endpoints, relative paths}

**Hacker Notes:** {Specific source→sink chains to investigate, bypass techniques from
xss-finder 5-Rotor methodology}

## Input Vectors

| Input | Type | Reflected | Hidden | Notes |
|-------|------|-----------|--------|-------|
| q | text | Yes | No | Search param reflected in <h1> |
| token | hidden | No | Yes | Likely unsanitized — test stored XSS |

**Hacker Notes:** {Which inputs to fuzz first, client-side restrictions to bypass}

## Best Practices Assessment

| Practice | Status | Hacker Implication |
|----------|--------|--------------------|
| CSP with nonce/hash | {Present/Missing} | {implication for inline injection} |
| HttpOnly cookies | {Present/Missing} | {cookie theft feasibility} |
| DOMPurify/sanitizer | {Present/Missing (version)} | {mXSS bypass options} |
| Trusted Types | {Present/Missing} | {sink restriction status} |
| Subresource Integrity | {Present/Missing} | {CDN MITM feasibility} |
| Meta charset | {Present/Missing} | {charset-based XSS feasibility} |

## Attack Vectors Summary

### High Priority (Test First)
1. {Most promising vector with technique reference}
2. {Second most promising}
3. {Third}

### Medium Priority
1. {Vector with conditional exploitability}
2. ...

### Low Priority (Hardened)
1. {Defended vector — explain what makes it hard}
2. ...

## Recommended Next Steps
1. Run `/xss-finder $URL` for automated payload testing on identified vectors
2. Run `/content-security-policy $URL` for deep CSP analysis
3. {Specific manual tests based on findings — e.g. "Test postMessage handler at
   line 88 with origin-less messages", "Fuzz hidden field 'token' for stored XSS"}

Overall XSS Resistance rating:

  • Strong — CSP with nonce + Trusted Types + sanitizer + HttpOnly cookies + no dangerous sinks
  • Moderate — CSP present but with gaps (e.g. unsafe-inline) OR sanitizer present but outdated
  • Weak — Missing CSP or CSP with wildcards, dangerous sinks present, no sanitizer
  • Minimal — No CSP, no sanitizer, dangerous sinks connected to sources, no HttpOnly

Each finding must reference specific exploitation techniques. Link to xss-finder 5-Rotor methodology where relevant (context detection, bypass cascades, encoding techniques).

Implementation Steps

  1. Validate $ARGUMENTS is a URL (starts with http:// or https://)
  2. Fetch headers with curl -sI -L; fetch body with curl -sL
  3. Fall back to WebFetch if body is minimal (SPA detection)
  4. Extract and fetch external script files (same-origin + CDNs, max 20)
  5. Assess security headers per Phase 2 table
  6. Detect frameworks and libraries; extract versions from filenames/CDN URLs
  7. Cross-reference versions against known vulnerable ranges
  8. Scan inline + external JS for DOM XSS sinks and sources
  9. Trace source→sink connections (static approximation)
  10. Enumerate input elements, forms, hidden fields
  11. Test URL parameter reflection in response body
  12. Check meta tags, embedding elements, inline event handler count
  13. Calculate overall XSS resistance rating
  14. Generate report with Hacker Notes per section

Quality Checklist

Before finalizing:

  • All 6 phases executed (Fetch, Headers, Frameworks, JavaScript, DOM, Report)
  • Security headers table complete — every header checked or marked MISSING
  • Framework/library versions extracted where detectable
  • Vulnerable library versions cross-referenced with specific CVEs
  • DOM XSS sinks and sources enumerated from actual page content
  • Source→sink connections flagged where statically traceable
  • Input vectors include hidden fields
  • URL parameter reflection tested
  • Overall XSS Resistance rating justified by findings
  • Hacker Notes in every report section with actionable exploitation guidance
  • Attack Vectors Summary prioritized by exploitability
  • Next Steps reference /xss-finder and /content-security-policy
  • No active exploitation performed — reconnaissance only

Example Usage

Single URL reconnaissance:

/xss-recon https://example.com/search?q=test

Application homepage:

/xss-surface https://app.example.com

Pre-engagement scoping:

/xss-attack-surface https://target.com/login

References

Related Skills

平台分布

Codex

33.59%
按下载量换算27

Claude

31.3%
按下载量换算25

Cursor

19.8%
按下载量换算16

Gemini CLI

10.2%
按下载量换算8

安全审计

Gen Agent Trust Hub

通过

Socket

通过

Snyk

可疑

权限和风险

操作浏览器

该 Skill 可能涉及浏览器控制能力,使用时可能读取或操作网页内容,需要在受控环境中确认权限边界。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。来源安全扫描存在提醒或未通过项,安装前请自行复核。目前只有一个公开来源,建议同时核对源仓库。

继续浏览同类 Skills