@aiclude/security-skill 2.0.0 → 2.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (3) hide show
  1. package/README.md +88 -0
  2. package/SKILL.md +15 -51
  3. package/package.json +1 -1
package/README.md ADDED
@@ -0,0 +1,88 @@
1
+ # @aiclude/security-skill
2
+
3
+ Security vulnerability scanner for MCP Servers and AI Agent Skills. Provides the `/security-scan` slash command for Claude Code.
4
+
5
+ ## What It Does
6
+
7
+ - **Name-based lookup**: Query the [AIclude scan database](https://vs.aiclude.com) for existing vulnerability reports. If none exists, the target is automatically registered and scanned.
8
+ - **Local scan**: Run 7 scan engines directly on a local directory — fully offline, no data sent anywhere.
9
+
10
+ ## Scan Engines
11
+
12
+ | Engine | What It Detects |
13
+ |--------|----------------|
14
+ | SAST | Code vulnerabilities via pattern matching |
15
+ | SCA | Known CVEs in dependencies (OSV.dev) |
16
+ | Tool Analyzer | MCP tool poisoning, shadowing, rug-pull |
17
+ | DAST | SQL/Command/XSS injection via fuzzing |
18
+ | Permission Checker | Excessive filesystem/network/process access |
19
+ | Behavior Monitor | Suspicious runtime behavior patterns |
20
+ | Malware Detector | Backdoors, cryptominers, ransomware, data stealers |
21
+
22
+ ## Installation
23
+
24
+ ```bash
25
+ npm install @aiclude/security-skill
26
+ ```
27
+
28
+ ## Usage
29
+
30
+ ### As a Claude Code Skill
31
+
32
+ ```
33
+ # Look up scan results by package name
34
+ /security-scan --name @anthropic/mcp-server-fetch
35
+
36
+ # Scan a local directory
37
+ /security-scan ./my-mcp-server
38
+ ```
39
+
40
+ ### Programmatic API
41
+
42
+ ```typescript
43
+ import { SkillHandler } from "@aiclude/security-skill";
44
+
45
+ const handler = new SkillHandler();
46
+
47
+ // Remote lookup — queries AIclude scan database
48
+ const report = await handler.lookup({
49
+ name: "@some/mcp-server",
50
+ type: "mcp-server",
51
+ });
52
+
53
+ // Local scan — runs 7 engines offline
54
+ const result = await handler.handle({
55
+ targetPath: "./my-project",
56
+ type: "mcp-server",
57
+ format: "markdown",
58
+ });
59
+ ```
60
+
61
+ ## Parameters
62
+
63
+ | Parameter | Description |
64
+ |-----------|-------------|
65
+ | `--name` | Package name to search (npm, GitHub, etc.) |
66
+ | `target-path` | Local directory to scan |
67
+ | `--type` | `mcp-server` or `skill` (auto-detected) |
68
+ | `--profile` | Sandbox profile: `strict`, `standard`, `permissive` |
69
+ | `--format` | Output: `markdown` or `json` |
70
+ | `--engines` | Comma-separated engine list |
71
+
72
+ ## Output
73
+
74
+ Reports include:
75
+
76
+ 1. **Risk Level** — CRITICAL / HIGH / MEDIUM / LOW / INFO
77
+ 2. **Vulnerability List** — code location, description, severity
78
+ 3. **Risk Assessment** — impact and likelihood analysis
79
+ 4. **Remediation** — how to fix each finding
80
+
81
+ ## Related Packages
82
+
83
+ - [`@aiclude/security-mcp`](https://www.npmjs.com/package/@aiclude/security-mcp) — MCP Server interface
84
+ - [vs.aiclude.com](https://vs.aiclude.com) — Web dashboard
85
+
86
+ ## License
87
+
88
+ MIT — [AICLUDE Inc.](https://aiclude.com)
package/SKILL.md CHANGED
@@ -1,91 +1,55 @@
1
1
  ---
2
2
  name: aiclude-vulns-scan
3
- description: Scan MCP Servers and AI Agent Skills for security vulnerabilities. 7 parallel engines detect prompt injection, tool poisoning, malware, supply chain attacks, and more.
4
- tags: [security, vulnerability, scanner, mcp, ai-agent, sast, sca, malware]
3
+ description: Search security vulnerability scan results for MCP Servers and AI Agent Skills from the AIclude scan database.
4
+ tags: [security, vulnerability, scanner, mcp, ai-agent]
5
5
  homepage: https://vs.aiclude.com
6
6
  repository: https://github.com/aiclude/asvs
7
7
  ---
8
8
 
9
- # /security-scan - AIclude Security Vulnerability Scanner
9
+ # /security-scan - AIclude Vulnerability Scanner
10
10
 
11
- Scan MCP Servers and AI Agent Skills for security vulnerabilities. Queries existing scan results from the AIclude database, or registers a new scan and returns the results.
11
+ Search the AIclude security scan database for vulnerability reports on MCP Servers and AI Agent Skills. If no report exists, the target is registered and scanned automatically.
12
12
 
13
13
  ## Usage
14
14
 
15
15
  ```
16
- # Search by package name (queries AIclude scan database)
17
- /security-scan --name <package-name> [options]
18
-
19
- # Scan a local directory (offline, no network)
20
- /security-scan <target-path> [options]
16
+ /security-scan --name <package-name> [--type mcp-server|skill]
21
17
  ```
22
18
 
23
19
  ## Parameters
24
20
 
25
21
  - `--name`: Package name to search (npm package, GitHub repo, etc.)
26
- - `target-path`: Local directory path to scan directly
27
22
  - `--type`: Target type (`mcp-server` | `skill`) - auto-detected if omitted
28
- - `--profile`: Sandbox profile (`strict` | `standard` | `permissive`)
29
- - `--format`: Output format (`markdown` | `json`)
30
- - `--engines`: Scan engines to use (comma-separated)
31
23
 
32
24
  ## Examples
33
25
 
34
26
  ```
35
- # Look up scan results for an MCP server
36
27
  /security-scan --name @anthropic/mcp-server-fetch
37
-
38
- # Look up scan results for a Skill
39
28
  /security-scan --name my-awesome-skill --type skill
40
-
41
- # Scan local source code (fully offline)
42
- /security-scan ./my-mcp-server
43
29
  ```
44
30
 
45
31
  ## How It Works
46
32
 
47
- - **Name-based lookup** queries the AIclude scan database. If a report exists, it is returned immediately. If not, the target is registered for scanning and results are returned when ready. Only the package name is sent. No source code is uploaded.
48
- - **Local scan** reads files from the specified directory and runs all 7 engines locally. No network requests are made.
49
-
50
- No environment variables or credentials are required.
51
-
52
- ## What It Checks
33
+ 1. Sends the package name to the AIclude scan API
34
+ 2. If a scan report exists, returns it immediately
35
+ 3. If not, registers the target for scanning
36
+ 4. Waits for the scan to complete and returns the results
37
+ 5. Results are also viewable at https://vs.aiclude.com
53
38
 
54
- - **Prompt Injection**: Hidden patterns targeting LLMs
55
- - **Tool Poisoning**: Malicious instructions in tool descriptions
56
- - **Command Injection**: Unvalidated input passed to exec/spawn
57
- - **Supply Chain**: Known CVEs, typosquatting
58
- - **Malware**: Backdoors, cryptominers, ransomware, data stealers
59
- - **Permission Abuse**: Excessive filesystem/network/process permissions
60
-
61
- ## Scan Engines
62
-
63
- 7 engines run in parallel:
64
-
65
- | Engine | Description |
66
- |--------|-------------|
67
- | SAST | Static code pattern matching |
68
- | SCA | Dependency CVE lookup via OSV.dev |
69
- | Tool Analyzer | MCP tool definition analysis |
70
- | DAST | Parameter fuzzing |
71
- | Permission Checker | Permission analysis |
72
- | Behavior Monitor | Runtime behavior detection |
73
- | Malware Detector | Signature scanning, entropy analysis |
39
+ Only the package name and type are sent. No source code or credentials are transmitted.
74
40
 
75
41
  ## Output
76
42
 
77
- 1. **Risk Level** (CRITICAL / HIGH / MEDIUM / LOW / INFO)
78
- 2. **Vulnerability List** with code locations
79
- 3. **Risk Assessment** and impact analysis
80
- 4. **Remediation Recommendations**
43
+ - **Risk Level** (CRITICAL / HIGH / MEDIUM / LOW / INFO)
44
+ - **Vulnerability List** with locations and descriptions
45
+ - **Risk Assessment** and remediation recommendations
81
46
 
82
47
  ## Links
83
48
 
49
+ - **Web Dashboard**: https://vs.aiclude.com
84
50
  - **npm**: [`@aiclude/security-skill`](https://www.npmjs.com/package/@aiclude/security-skill)
85
51
  - **MCP Server**: [`@aiclude/security-mcp`](https://www.npmjs.com/package/@aiclude/security-mcp)
86
- - **Web Dashboard**: https://vs.aiclude.com
87
52
 
88
53
  ## License
89
54
 
90
55
  MIT - AICLUDE Inc.
91
- Inc.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@aiclude/security-skill",
3
- "version": "2.0.0",
3
+ "version": "2.0.1",
4
4
  "description": "AIclude Security Vulnerability Scanner - Claude Code Skill for inline security scanning",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",