Skip to content
Back to skills

Webapp Attack Surface Inventory

ASecurity

Structured normalization of discovered attack surface into the Endpoint Inventory note for downstream…

  • 2 stars
  • 0 votes
  • 0 copies
  • 0 views
  • Added November 7, 2026
securitygoapi

Works with

  • api

Security analysis

A100/100

Scanned November 7, 2026

npx -y skills add bitbytelabio/arsenal --skill webapp-attack-surface-inventory --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Webapp Attack Surface Inventory?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Webapp Attack Surface Inventory
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/bitbytelabio-webapp-attack-surface-inventory/badge)](https://www.skillsdirectory.com/skills/bitbytelabio-webapp-attack-surface-inventory)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: webapp-attack-surface-inventory
description: Structured normalization of discovered attack surface into the Endpoint Inventory note for downstream…
domain: webapp
category: reconnaissance
hide: true
license: Apache-2.0
metadata:
  manifest_entry: src/corpus/webapp-attack-surface-inventory/SKILL.md
---
# Attack Surface Inventory

## When to Use
After crawling, content discovery, JS analysis, and API discovery, normalize all findings into a structured inventory that the planner and specialist lanes can consume.

## Format

Save an `add_note` with key "Endpoint Inventory" using this structure:

```
GET / - main page
GET /login - login form
POST /login - form action (params: username,password)
GET /api/users - API endpoint (params: ?id, ?page)
GET /search - search (params: ?q)
POST /api/search - API search (JSON body: query,limit)
GET /admin - admin panel (requires auth)
GET /static/app.js - JS bundle
GET /openapi.yaml - API spec
```

## Normalization Rules
- One route per line: `METHOD path - description (params: ...)`
- Strip query values, keep parameter names: `?id=123` becomes `(params: id)`
- Deduplicate trailing-slash variants: `/api/users/` and `/api/users` are one entry
- Mark auth requirement: `(requires auth)`, `(admin only)`
- Mark source: `(source: crawl)`, `(source: openapi)`, `(source: js)`, `(source: dirbust)`
- Include HTTP method when known (default GET)
- Include content type when useful: `(JSON)`, `(XML)`, `(HTML)`

## Handoff
The Endpoint Inventory feeds:
1. `AutoPlan` — builds class tasks listing every discovered endpoint
2. `CoverageGaps` — per-endpoint × class gap detection
3. Specialist lanes — partition the surface

## Common Misses
- Only listing GET routes (missing POST/PUT/DELETE)
- Not including path parameters (/users/{id})
- Missing WebSocket endpoints
- Forgetting to note which routes require authentication

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.