ghost-scan-code skill
scriptsアプリケーションやライブラリにおけるSQLインジェクション、XSS、BOLAなどのセキュリティ脆弱性を特定するためのSASTコードスキャンを実行します。
- GitHubスター
- 441
- ファイル
- 12
- 最終コミット
- 2026年9月28日
- ライセンス
- apache-2.0
- 許可されたツール
- 6
ghost-scan-code skillは何をしますか
ghost-scan-codeはAgent Skillsです。 アプリケーションやライブラリにおけるSQLインジェクション、XSS、BOLAなどのセキュリティ脆弱性を特定するためのSASTコードスキャンを実行します。.
skillのSKILL.mdから生成された要約。
ghost-scan-code skill について
ghost-scan-codeは、バックエンド、フロントエンド、モバイルアプリケーション、またはライブラリの開発者がソースコードのセキュリティ監査を行えるようにします。このSKILLは、計画とターゲットを絞ったスキャンの実行により、SQLインジェクション、XSS、BOLA、BFLA、SSRFなどの脆弱性を特定します。SASTスキャンや、コードベースのセキュリティ欠陥を見つけるための脆弱性評価が必要な場合に設計されています。
エージェントはこのSKILLをロードし、計画、ファイルの選定、分析を含むマルチステップのプロセスを進めます。プロジェクトのタイプを特定の脆弱性ベクトルにマッピングするために、loop.shやcriteria/index.yamlなどの内部スクリプトを利用します。プロセスによって整理された検出結果が生成され、検証済みまたは却下された問題ごとに分類されて専用のディレクトリに保存されます。ユーザーはスキャンの強度をquick、balanced、fullの深度で指定して制御できますが、fullスキャンはトークン使用量が高いため、明示的な確認が必要です。
このツールは、リポジトリを検査するために、Read、Write、Edit、Glob、Grep、Bashを含む標準的なファイルシステムおよびシェル機能を利用します。計画、選定、分析を追跡する構造化されたディレクトリシステムを通じて、独自のステートを管理します。
エージェントができること
- 1包括的なセキュリティ監査の実施リポジトリに対して包括的なSASTスキャンを実行し、OWASPの脆弱性を特定します。
- 2ライブラリの特定欠陥のスキャンライブラリに対して、プロトタイプ汚染、安全でないデシリアライゼーション、ReDoSなどの問題がないか確認します。
skill の SKILL.md から作成されています。すべてのユースケースは、その引用と照合されています。
ghost-scan-code skillのインストール方法
各コマンドはskillフォルダをクライアントのskillsディレクトリにコピーします。読み込むには、クライアントを再起動するか新しいセッションを開始してください。プラグインにghost-scan-code skillをインストールする
/plugin marketplace add ghostsecurity/skills /plugin install ghost@ghost-security
Claude Codeにghost-scan-code skillをインストールする
~/.claude/skills/ghost-scan-code/SKILL.md
$ npx degit ghostsecurity/skills/plugins/ghost/skills/scan-code ~/.claude/skills/ghost-scan-codeClaude Code (project)にghost-scan-code skillをインストールする
.claude/skills/ghost-scan-code/SKILL.md
$ npx degit ghostsecurity/skills/plugins/ghost/skills/scan-code .claude/skills/ghost-scan-codeCodexにghost-scan-code skillをインストールする
~/.agents/skills/ghost-scan-code/SKILL.md
$ npx degit ghostsecurity/skills/plugins/ghost/skills/scan-code ~/.agents/skills/ghost-scan-codeGemini CLIにghost-scan-code skillをインストールする
~/.gemini/skills/ghost-scan-code/SKILL.md
$ npx degit ghostsecurity/skills/plugins/ghost/skills/scan-code ~/.gemini/skills/ghost-scan-codeClaude.aiにghost-scan-code skillをインストールする
npx degit ghostsecurity/skills/plugins/ghost/skills/scan-code ghost-scan-code && zip -r ghost-scan-code.zip ghost-scan-code # claude.ai → Customize → Skills → + → Create skill → Upload a skill → ghost-scan-code.zip
自動チェック
実行日 2026年11月15日完全なレポート →まだ検証されていません。スキルにはスコア 80、重大な指摘なし、チェックに十分なデータが必要です。 チェックの仕組み · 点数を上げるための改善点
- ソースリポジトリがリンクされており、アクセス可能ghostsecurity/skills/plugins/ghost/skills/scan-code is public and reachablegithub.com/ghostsecurity/skills/tree/HEAD/plugins/ghost/skil ↗合格
- オープンソースライセンス (OSI)apache-2.0spdx.org/licenses/apache-2.0.html ↗合格
- 過去1年以内にコミットまたはリリースありLast commit 2026-09-28github.com/ghostsecurity/skills/commits ↗合格
- スクリプトにダウンロード実行や認証情報の窃取がない1 script read; no download-and-run, remote eval, base64 execution or credential upload合格
- SKILL.md に隠れた指示がないNo override phrases, safeguard switches, credential requests or hidden charactersgithub.com/ghostsecurity/skills/blob/HEAD/plugins/ghost/skil ↗合格
- 事前許可ツールが限定されているBash lets the agent run any shell command without askinggithub.com/ghostsecurity/skills/blob/HEAD/plugins/ghost/skil ↗検出事項
- SKILL.md が Agent Skills の形式に従っているname "ghost-scan-code" differs from the folder "scan-code"github.com/ghostsecurity/skills/blob/HEAD/plugins/ghost/skil ↗検出事項
SKILL.md
GitHubで表示Find Issues
You find security issues in a repository. This skill plans which vulnerability vectors to scan, then executes those scans against each project.
Inputs
- depth:
quick(default),balanced, orfull— override via$ARGUMENTS
$ARGUMENTS
Note: Arguments passed can be used to customize the scan workflow if provided. For example, if the user specifies a specific set of vectors, count of vectors, specific candidate files, areas to focus on, count of candidate files, etc., ensure the relevant details are passed to the relevant steps in the skill.
Supporting files
- Loop script: scripts/loop.sh
- Scan criteria: criteria/index.yaml
Step 1: Setup
Compute the repo-specific output directory:
repo_name=$(basename "$(pwd)") && remote_url=$(git remote get-url origin 2>/dev/null || pwd) && short_hash=$(printf '%s' "$remote_url" | git hash-object --stdin | cut -c1-8) && repo_id="${repo_name}-${short_hash}" && short_sha=$(git rev-parse --short HEAD 2>/dev/null || date +%Y%m%d) && ghost_repo_dir="$HOME/.ghost/repos/${repo_id}" && scan_dir="${ghost_repo_dir}/scans/${short_sha}/code" && cache_dir="${ghost_repo_dir}/cache" && mkdir -p "$scan_dir" && echo "scan_dir=$scan_dir cache_dir=$cache_dir"
- Read
$cache_dir/repo.md— if missing, run the repo-context skill first and then continue. - Read criteria/index.yaml to get the valid agent→vector mappings per project type
- Set
depthtoquickif not provided - If
depthisfull, warn the user that a full scan uses significantly more tokens and ask them to confirm before proceeding. If they decline, fall back tobalanced.
Step 2: Plan Scans
If $scan_dir/plan.md already exists, skip to the next step.
Otherwise, run the planner using scripts/loop.sh:
bash <path-to-loop.sh> $scan_dir planner.md "- depth: <depth>
- arguments: <relevant argument overrides if any, otherwise omit>" 1 $cache_dir
Use a 10-minute timeout. If the command times out, re-run it — the script resumes from where it left off. If it fails 3 times consecutively with the same error, stop and report the failure.
Verify: $scan_dir/plan.md exists and contains at least one ## Project: section before proceeding.
Step 3: Nominate Files
If $scan_dir/nominations.md does not exist, generate it by reading $scan_dir/plan.md and for each project section (## Project: <base_path> (<type>)), parse the Recommended Scans table. For each row, extract the Agent and Vector columns. Write $scan_dir/nominations.md - one line per (project, agent, vector) combination. Skip projects with empty scan tables.
# Nominations
- [ ] <base_path> (<type>) | <agent> | <vector>
- [ ] <base_path> (<type>) | <agent> | <vector>
...
If $scan_dir/nominations.md already exists, change every top level task - [x] to - [ ]. Keep all indented lines/subtasks beneath each item unchanged.
Run nomination script
Using scripts/loop.sh:
bash <path-to-loop.sh> $scan_dir nominator.md "- depth: <depth>
- arguments: <relevant argument overrides if any, otherwise omit>" 5 $cache_dir
Use a 10-minute timeout. If the command times out, re-run it — the script resumes from where it left off. If it fails 3 times consecutively with the same error, stop and report the failure.
Verify: $scan_dir/nominations.md contains at least one - [x] line before proceeding.
Step 4: Analyze Nominated Files
Read $scan_dir/nominations.md. For each candidate file under a checked - [x] line, append to $scan_dir/analyses.md (skip candidates already listed in analyses.md).
- [ ] <base_path> (<type>) | <agent> | <vector> | <candidate_file>
Create the findings directory:
mkdir -p $scan_dir/findings
Run analysis script
Using scripts/loop.sh:
bash <path-to-loop.sh> $scan_dir analyzer.md "" 5 $cache_dir
Use a 10-minute timeout. If the command times out, re-run it — the script resumes from where it left off. If it fails 3 times consecutively with the same error, stop and report the failure.
Verify: $scan_dir/analyses.md contains at least one - [x] line before proceeding.
Step 5: Verify Findings
List all .md files in $scan_dir/findings/. If none exist, write a no-findings.md summary and stop.
Using scripts/loop.sh:
bash <path-to-loop.sh> $scan_dir verifier.md "" 5 $cache_dir
Use a 10-minute timeout. If the command times out, re-run it — the script resumes from where it left off. If it fails 3 times consecutively with the same error, stop and report the failure.
Completion
After all steps complete, report the scan results:
- List all finding files in
$scan_dir/findings/ - Count verified vs rejected findings
- Present a summary to the user
このスキルのファイル
12ghost-scan-code skillに関する質問
Claude Codeにghost-scan-code skillをインストールするには
npx degit ghostsecurity/skills/plugins/ghost/skills/scan-code ~/.claude/skills/ghost-scan-codeを実行してください。Claude Codeは~/.claude/skills(すべてのプロジェクト)または.claude/skills(単一プロジェクト)からskillsを読み込み、説明がタスクに一致する場合にskillを使用します。
ghost-scan-code skillはどのクライアントで使用できますか
Agent Skills形式を読み込むすべてのクライアントで使用できます: Claude Code、Codex、Gemini CLI、claude.ai(ZIPとしてアップロード)。skill内のスクリプトは、クライアントがコード実行を許可した場合にのみ実行されます。
このツールではどのような種類のセキュリティ脆弱性を検出できますか?
SQLインジェクション、XSS、BOLA、BFLA、SSRF、プロトタイプ汚染、安全でないデシリアライゼーション、ReDoS、パス・トラバーサル、zip slipなどの問題をスキャンできます。
フルスキャンを選択した場合はどうなりますか?
フルスキャンは大幅に多くのトークンを消費するため、エージェントが警告を表示し、実行前に確認を求めます。