mcpField
N
Next.js Security Scan

Next.js Security Scan

github.com/sugarforeverセキュリティ139555 回インストール1 週間前に更新
リポジトリ

Next.js Security Scan について

Next.js Security Scan は、Next.js と TypeScript/JavaScript プロジェクト向けのセキュリティ監査スキルです。コードレビューやデプロイ前確認に使え、簡易・全体・対象を絞ったスキャンと各種レポート出力に対応します。

主な機能

  1. 01簡易・全体・対象別スキャン
  2. 02ハードコードされた秘密情報と危険なコードの検出
  3. 03認証とインジェクションの問題確認
  4. 04依存関係と CVE の監査
  5. 05Next.js 固有のリスク分析
  6. 06SARIF、JSON などのレポート生成

活用シーン

  1. 01Next.js アプリの脆弱性レビュー
  2. 02デプロイ前の認証と設定リスクの確認
  3. 03依存関係の脆弱性や秘密情報の調査

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/sugarforever/01coder-agent-skills --skill next.js-security-scan

インストール後、Claude Code で/next.js-security-scanを入力して読み込まれたか確認します。

同梱ファイル

SKILL.md と一緒にインストールされる参考資料やスクリプト。

assets/
report-template.md
references/
auth-vulnerabilities.md
injection-patterns.md
nextjs-specific.md
owasp-top-10.md
xss-patterns.md
scripts/
dependency-audit.sh
pattern-scanner.py
secret-scanner.py

詳細

Next.js セキュリティスキャンスキル

このスキルを使用すると、OWASP のガイドラインと業界のベストプラクティスに基づいて、Next.js および TypeScript/JavaScript プロジェクトの包括的なセキュリティスキャンを実行できます。

このスキルを使用する場面

  • Next.js アプリケーションのセキュリティ監査
  • セキュリティ脆弱性を対象としたコードレビュー
  • デプロイ前のセキュリティチェック
  • 依存関係の脆弱性評価
  • ハードコードされたシークレットや認証情報の検出

スキャンの種類

1. クイックスキャン

重大な脆弱性に焦点を当てた高速スキャンです。

  • ハードコードされたシークレットと API キー
  • 危険な関数の使用(dangerouslySetInnerHTML、eval)
  • Server Actions における認証の欠如
  • 既知の脆弱な依存関係
2. フルスキャン

以下を対象とする包括的なセキュリティ評価です。

  • OWASP Top 10:2025 のすべてのカテゴリ
  • XSS の脆弱性パターン
  • インジェクションの脆弱性(SQL、NoSQL、コマンド)
  • 認証および認可の不備
  • セキュリティ設定の不備
  • 暗号化の不備
  • Next.js 固有の脆弱性
  • 依存関係の監査(CVE チェック)
  • 環境変数の露出
3. 対象を絞ったスキャン

特定の脆弱性カテゴリに焦点を当てます。

  • --xss - クロスサイトスクリプティングのパターン
  • --injection - SQL/NoSQL/コマンドインジェクション
  • --auth - 認証/認可の問題
  • --secrets - ハードコードされた認証情報
  • --deps - 依存関係の脆弱性
  • --nextjs - Next.js 固有の問題

スキャン手順

ステップ 1:プロジェクトの検出
  1. プロジェクトの種類を特定します(Next.js App Router、Pages Router、または通常の React)
  2. 設定ファイル(next.config.js、package.json、.env*)を探します
  3. コードベースの構成を把握します
ステップ 2:依存関係の監査

依存関係の監査スクリプトを実行します。

./scripts/dependency-audit.sh

または、手動で実行します。

npm audit --json
# or
yarn audit --json
ステップ 3:シークレットのスキャン

ハードコードされたシークレットをスキャンします。

python scripts/secret-scanner.py /path/to/project

重要:環境ファイルの取り扱い

  • デフォルトでは、実際の .env ファイル(.env、.env.local、.env.production など)はスキップされます
  • これらのファイルには実際のシークレットが含まれているため、バージョン管理に含めないでください
  • ドキュメントの品質を確認するため、分析対象となるのは .env.example と .env.template ファイルのみです
  • --include-env-files フラグは、ユーザーから明示的に要求された場合のみ使用してください

スキャナーは次の処理を実行します。

  1. ソースコードをスキャンして、ハードコードされたシークレットを検出します
  2. .env.example のテンプレートを分析して、以下を確認します。
    • 機密性の高い変数が記載されているか
    • 変数に説明(コメント)があるか
    • プレースホルダーの値が実際のシークレットのように見えないか
    • 一般的な変数で不足しているものの提案
ステップ 4:パターン分析

コードベース内の各ファイルについて、以下のパターンと照合します。

  • references/xss-patterns.md - XSS の脆弱性
  • references/injection-patterns.md - インジェクションの不備
  • references/auth-vulnerabilities.md - 認証の問題
  • references/nextjs-specific.md - Next.js の脆弱性
ステップ 5:レポートの生成

以下を使用して、セキュリティレポートを生成します。

  • assets/report-template.md - レポートの構成

深刻度の分類

深刻度説明必要な対応
CRITICAL深刻な影響を及ぼす、悪用可能な脆弱性直ちに修正が必要
HIGH重大なセキュリティリスクデプロイ前に修正
MEDIUMセキュリティ上の潜在的な問題次回リリースで修正
LOW軽微なセキュリティ上の懸念修正を検討
INFOセキュリティのベストプラクティスに関する提案任意の改善

スキャン対象の主なファイル

常に確認するファイル
  • **/*.ts、**/*.tsx、**/*.js、**/*.jsx - ソースコード
  • next.config.js、next.config.mjs - Next.js の設定
  • package.json、package-lock.json - 依存関係
  • middleware.ts、middleware.js - ミドルウェアのセキュリティ
環境ファイル
  • .env.example、.env.template - テンプレート分析のためスキャン
  • .env、.env.local、.env.production - 実際のシークレットを含むため、デフォルトでスキップ

注: 実際の .env ファイルをバージョン管理にコミットしてはいけません。スキャナーは .env.example のテンプレートを分析し、必要な変数が適切に説明されていることを確認します。

優先度の高い場所
  • app/api/**/* - API ルート(App Router)
  • pages/api/**/* - API ルート(Pages Router)
  • **/actions.ts、**/*-actions.ts - サーバーアクション
  • lib/auth*、utils/auth* - 認証コード
  • **/middleware.* - ミドルウェアファイル

出力形式

検出結果は次の形式で報告してください。

[SEVERITY] Category: Description
  File: path/to/file.ts:lineNumber
  Code: <relevant code snippet>
  Risk: <explanation of the security risk>
  Fix: <recommended remediation>

CI/CD との統合

このスキルでは、次の形式に対応した出力を生成できます。

  • GitHub Security Advisories
  • GitHub Code Scanning 用の SARIF 形式
  • カスタム統合用の JSON

参考資料

必要に応じて、次の追加コンテキストを読み込んでください。

  • references/owasp-top-10.md - OWASP Top 10:2025 クイックリファレンス
  • references/xss-patterns.md - XSS 検出パターン
  • references/injection-patterns.md - インジェクション脆弱性のパターン
  • references/auth-vulnerabilities.md - 認証セキュリティのパターン
  • references/nextjs-specific.md - Next.js 固有の脆弱性と CVE

コメント