Node.js Security Audit

VerifiedCaution

Scans Node.js applications for security vulnerabilities including RCE, SSRF, SQL injection, and path traversal, with support for Express, Koa, and NestJS frameworks. Helps developers identify and fix critical issues before release by providing a structured checklist, fix examples, and severity ratings.

Sby Skills Guide Bot
SecurityIntermediate
3/1/2026
Claude Code
#nodejs#security-audit#ssrf#sql-injection#code-review

Recommended for

Automated summary

Runs a static security review of Node.js code (Express/Koa/NestJS), hunting for RCE, SSRF, SQL/NoSQL injection, path traversal and authentication weaknesses.

Strengths

  • Covers six Node-specific dimensions: input validation, command execution (exec/spawn, shell: true), file operations including ZipSlip, SSRF with private-network blocking and DNS rebinding, SQL/NoSQL injection and mass assignment, plus JWT and session handling
  • Triages findings into three severities (🔴 critical, release-blocking; 🟡 medium; ⚪ advisory) each with a clear action
  • Pulls in on-demand reference resources: a full checklist, fix examples and a scoring standard
  • Offers three simple entry points: scan the src directory, audit a single file, or produce a detailed scored report

Limitations

  • Code-reading analysis only: it does not check vulnerable dependencies (no npm audit equivalent) or runtime misconfiguration
  • Findings are leads that still need human confirmation, and dynamically built code can produce false positives
  • Only works inside Claude Code, since it is invoked through a slash command and skill:// resource URIs
When to use it

Use it before shipping or during a pull-request review of a Node.js API to get a quickly prioritized list of candidate vulnerabilities.

When not to use it

Do not treat it as your only security control: it does not replace dependency auditing, penetration testing or DAST scanning.

Security analysis

Caution
Quality score82/100

The skill is a defensive Node.js security audit guide and contains no destructive, exfiltration, obfuscation, or safety-disabling instructions. However, it explicitly allows `Shell`, so execution risk is non-zero and should be treated as a powerful-tool capability used for legitimate scanning purposes.

Findings
  • •Declares `Shell` tool access, which gives the skill command-execution capability even though the visible instructions are benign.
  • •The quick-start examples use slash-command syntax that could be misinterpreted or expanded by an agent; no explicit command allowlist or scope limitation is provided.
How this analysis is made

Examples

Full source scan
/nodejs-security-check — 扫描 src 目录,重点看命令执行、SSRF 和 SQL 注入风险
Audit one upload route
/nodejs-security-check file src/routes/upload.js — 检查这个上传接口有没有路径穿越或 ZipSlip 问题
Generate a scored report
/nodejs-security-check report — 生成一份带严重级别、修复建议和评分的完整报告

id: sec-nodejs-check name: Node.js 安全审查 category: security description: 检查 RCE、SSRF、SQL 注入、路径穿越等安全问题,支持 Express/Koa/NestJS tags: [security, nodejs, backend, ssrf, sql-injection] updated_at: 2026-01-20 allowed-tools: [Read, Grep, Glob, Shell]

Node.js 安全审查

⚠️ 核心规则

  1. 永不信任用户输入 - 所有请求数据须 Schema 验证
  2. 安全默认 - 使用安全 API(execFile 而非 exec)
  3. 纵深防御 - 输入验证 + 参数化查询 + 输出编码

快速开始

/nodejs-security-check                    # 智能扫描 src 目录
/nodejs-security-check file src/xxx.js    # 扫描指定文件
/nodejs-security-check report             # 生成详细报告

问题分级

| 前缀 | 含义 | 处理方式 | |------|------|----------| | 🔴 严重 | 可被直接利用 | 阻止发布 | | 🟡 中等 | 需特定条件 | 尽快修复 | | ⚪ 建议 | 最佳实践 | 可选优化 |

检查维度

| 维度 | 检查项 | |------|--------| | 输入验证 | Schema 验证、HPP 防护、请求体限制 | | 命令执行 | exec/spawn 注入、shell: true | | 文件操作 | 路径穿越、上传安全、ZipSlip | | 网络请求 | SSRF、私网阻断、DNS 重绑定 | | 数据库 | SQL 注入、NoSQL 注入、Mass Assignment | | 认证授权 | JWT 算法、会话安全、权限校验 |

📦 按需加载资源

| 资源 | URI | |-----|-----| | 完整检查清单 | skill://nodejs-security-check/references/checklist.md | | 修复示例 | skill://nodejs-security-check/references/fix-examples.md | | 评分标准 | skill://nodejs-security-check/references/scoring-standard.md |


📦 可用资源

  • skill://nodejs-security-check/references/checklist.md
  • skill://nodejs-security-check/references/fix-examples.md
  • skill://nodejs-security-check/references/report-format.md
  • skill://nodejs-security-check/references/scoring-standard.md
  • skill://nodejs-security-check/references/security-toolkit.md

根据 SKILL.md 中的 IF-THEN 规则判断是否需要加载

From the file to a first result

The download contains exactly the content displayed on this page. This copy may differ from the latest version in the source repository.

View the source and supporting files

This download contains SKILL.md only. Any scripts, references, templates and dependencies are not included. Get the required files from the source, preserving their directory structure, before continuing.

1. Download the file

Download SKILL.md

From the root of a test project, save the file as .skill-downloads/node-js-security-audit-mm78nnn1/SKILL.md, or use the command below. This folder is for inspecting the skill before installation.

Command for macOS/Linux or WSL: requires a POSIX shell and curl. On Windows without WSL, use the download button and create the folder manually.

mkdir -p '.skill-downloads/node-js-security-audit-mm78nnn1' && curl --fail --show-error --location 'https://skills-guides.com/api/skills/node-js-security-audit-mm78nnn1/download' --output '.skill-downloads/node-js-security-audit-mm78nnn1/SKILL.md.part' && mv '.skill-downloads/node-js-security-audit-mm78nnn1/SKILL.md.part' '.skill-downloads/node-js-security-audit-mm78nnn1/SKILL.md'

2. Check prerequisites

Read SKILL.md before using it. If it references scripts or external services, inspect them and prepare the required access in your test environment.

No recognized prerequisites section in this file. This does not mean it is self-contained: libraries, tools and access requirements may be mentioned elsewhere in the content or source repository.

The platforms on this page are catalog indications. The paths below follow tool documentation; they do not prove this skill has been run in those tools. No minimum tool version is confirmed for this listing.

3. Load the skill

This file does not provide a usable name/description header for this native procedure. It remains available to download and inspect; use the manual method below.

Manual method or another tool: attach SKILL.md to a conversation, or open it in an agent that can read files. Include any required supporting resources. No universal folder is recognized by every tool.

4. Try a first task

Use a short, synthetic input: an API endpoint, a small document or an interface brief. In a new conversation, attach the file or give the agent its path, then adapt this request:

Read .skill-downloads/node-js-security-audit-mm78nnn1/SKILL.md and apply its instructions to this example: [describe a test input]. Identify any missing files, dependencies or access. Produce the result requested by the skill without inventing data or running unreviewed scripts.

Expected result: output matching the skill instructions, or a precise list of missing prerequisites. A read confirmation alone does not validate a first use. If an external resource is unavailable, that path remains untested.

Related skills