cybersecurity について
オープンソースツールのみを使うサイバーセキュリティスキルです。参照資料に基づいて専門のサブエージェントにタスクを振り分け、脆弱性テスト、コード監査、脅威モデリング、検知エンジニアリング、AI アプリのセキュリティを扱います。実環境の対象には認可確認を設けています。
主な機能
- 01セキュリティタスクの振り分け
- 02Web・API 脆弱性テスト
- 03SAST とコード監査の案内
- 04脅威モデリングと ATT&CK 対応付け
- 05AI アプリのセキュリティレビュー
- 06オープンソースツールの代替案
活用シーン
- 01コードのセキュリティ問題の確認
- 02機能やアーキテクチャの脅威モデリング
- 03認可済み Web 対象のテスト
- 04有料セキュリティツールの OSS 代替探し
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ secondsky/ claude-skills --skill cybersecurityインストール後、Claude Code で/cybersecurityを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
references/analyst-reasoning.mdaradotso-agent-safety.mdaradotso-ai-security.mdaradotso-code-audit.mdaradotso-compliance.mdaradotso-web-vuln-testing.mdauthorization-disclaimer.mddefensive-cross-refs.mddetections-mcp.mdoss-tool-map.mdtesting-business-logic.mdtesting-forced-browsing.mdtesting-host-header.mdtesting-open-redirect.mdtesting-xss.md詳細
サイバーセキュリティ
概要
オープンソースツールのみを使用する、統合型サイバーセキュリティスキルです。オープンソースのツールのみを使用して、ソフトウェアのセキュリティを分析、テスト、強化します。脅威モデリング、Web 脆弱性テスト(XSS、ビジネスロジック、Host ヘッダー、オープンリダイレクト、強制ブラウジング)、SAST/コード監査、AI/LLM アプリケーションのセキュリティ、検出エンジニアリング(Sigma + MITRE ATT&CK)を扱います。
有料ツール(Burp Suite、Nessus、Splunk、CrowdStrike、SonarQube、DOM Invader、Hackvertor)は、「すでにお持ちの場合」という注記でのみ登場します。主要な手段としては使用しません。有料ツールから OSS への完全な置き換え表については、references/oss-tool-map.mdを参照してください。
このスキルは、このリポジトリにある既存の防御用プラグイン 5 つ(csrf-protection、xss-prevention、vulnerability-scanning、security-headers-configuration、defense-in-depth-validation)を補完します。これらのプラグインは「修正」方法を説明しますが、このスキルでは「発見、分析、脅威モデリング」の方法を説明します。
使用する場面
ユーザーのタスクがソフトウェアセキュリティに関係する場合は、いつでもこのスキルを使用してください。該当する例は次のとおりです。
- Web/API の脆弱性テスト(XSS、ビジネスロジック、Host ヘッダー、オープンリダイレクト、強制ブラウジング、SSRF、CSRF)。
- コード監査/SAST/セキュアコードレビュー(あらゆる言語)。
- 脅威モデリング(STRIDE/PASTA/VAST)、MITRE ATT&CK へのマッピング、攻撃対象領域の分析。
- インシデントの分析と対応に関する推論(ランサムウェア、侵害、異常のトリアージ)。
- 検出エンジニアリング:Sigma ルール、MITRE ATT&CK のカバレッジ/ギャップ分析、ATT&CK Navigator のレイヤー。
- AI/LLM アプリケーションのセキュリティ(プロンプトインジェクション、OWASP LLM Top 10、エージェントの安全性、「バイブコーディング」で作られたアプリの監査)。
- コンプライアンス対応(OWASP、CVE、GDPR/SOC2/ISO27001)。
- 有料のセキュリティツールを OSS の代替ツールに置き換える場合。
- 発見事項を修正パターンに対応付ける場合(防御用プラグイン 5 つを相互参照します)。
使用しない場面:
- IT/インフラのみを対象とするセキュリティ運用(サーバーへのパッチ適用、ファイアウォールルールなど。ORCHESTRATION の除外事項を参照)。
- バイナリのマルウェア分析/リバースエンジニアリング(対象外)。
- エージェントの安全性レビューを超えるスマートコントラクト/ブロックチェーンのセキュリティ(Solana 固有のスキルは対象外)。
- ユーザーが恒久的に除外しているトピック(マルウェア、ウイルス、supabase、openclaw、linux hardening、hardware spoofing、firewall config)に関する内容。
実行モデル — ルーター + ディスパッチャー(実行役ではありません)
このスキルはルーター兼ディスパッチャーです。 メインコンテキストは、薄いオーケストレーター(このファイル程度の規模)として維持します。以下の各リファレンスドキュメントについて、オーケストレーターはユーザーのタスクと該当するリファレンスドキュメントをブリーフィングとして、専用のサブエージェントにディスパッチします。メインコンテキストがリファレンスドキュメントの本文をインラインで取り込むことはありません。
サブエージェントのディスパッチ契約
委任するタスクごとに、オーケストレーターは次のことを行います。
- (ライブターゲットの場合) このセッションで、このターゲットに対する認可ゲートの承認を得ていることを確認します。以下の「認可ゲート」を参照してください。
- サブエージェントをディスパッチし、次の情報を渡します。
- task: ユーザーの依頼文そのものと、収集したコンテキスト(コード、URL、ターゲット範囲、承認状態)。
- briefing: 該当する
references/<doc>.mdの内容。 - model: 利用可能な最上位の推論ティア。優先は固定指定の
gpt-5.6 sol、代替はclaude-opus-4.x maxまたはopus 5 maxです。ディスパッチ時にモデルと推論の強度を明示的に固定してください(例:model: "claude-opus-5-max"、reasoning_effort: "max")。どちらのティアも利用できない場合は、利用可能な最上位のティアを使用し、ディスパッチログに性能低下を記録してください。高度な敵対的セキュリティ推論には上位ティアが必要です。デフォルト設定に任せないでください。 - tools: サブエージェントが呼び出せる OSS ツールは、リファレンスドキュメントに記載されています。
- return: 出力形式は、リファレンスドキュメントの
## Sub-agent return contractで定義されています。
- サブエージェントの出力をそのままユーザーに伝えます。 重大度、証拠、修正の詳細を要約して省略しないでください。
- (ライブターゲットの場合) 範囲を再確認せずに、後続のライブターゲットタスクを自動でディスパッチしないでください。
「すべて監査して」という依頼へのファンアウト
ユーザーが広範な調査を依頼した場合(「このコードベースにセキュリティ上の問題がないか監査して」「このアプリをあらゆる観点からテストして」など)、オーケストレーターは superpowers:dispatching-parallel-agents に従って複数のサブエージェントを並行してディスパッチします(1 つのメッセージで複数のディスパッチツール呼び出しを実行します)。
- コード監査サブエージェント(
references/aradotso-code-audit.md) - XSS サブエージェント(
references/testing-xss.md)— ウェブアプリの場合のみ - ビジネスロジックサブエージェント(
references/testing-business-logic.md)— 状態を持つアプリの場合のみ - AI アプリサブエージェント(
references/aradotso-ai-security.md)— LLM アプリの場合のみ - (など)
バッチ内のすべてのライブターゲット用サブエージェントを対象に、認可ゲートはバッチの開始時に一度だけ実行し、サブエージェントごとには実行しません。オーケストレーターは、すべてのサブエージェントの出力を統合して単一のレポートにまとめます。
メインコンテキストに残すもの(委任しない)
| インラインで行うこと | 理由 |
|---|---|
| 振り分けの判断(このタスクに該当するリファレンス) | 低コストで、タスクの全体像を把握する必要があります。 |
認可ゲート(references/authorization-disclaimer.md) | 安全上きわめて重要です。 ライブターゲットのタスクでは、サブエージェントをディスパッチする前にゲートを必ず実行する必要があります。これを委任すると、承認の確認前にサブエージェントが実ホストに対して実行される TOCTOU ウィンドウが生じます。 |
| 承認状態の追跡(セッションごと、ターゲット範囲ごと) | 小規模で、セッション中のサブエージェント呼び出しを通じて維持する必要があります。 |
| サブエージェントのディスパッチと結果の中継 | それがオーケストレーターの役割です。 |
認可ゲート(ライブターゲットのタスクのみ)
このスキルでは OSS の攻撃用ツール(ffuf、nuclei、OWASP ZAP、dalfox、interact.sh、mitmproxy)を使用します。実ホストに対してこれらを実行するには、ユーザーの認可が必要です。
静的な作業 — ゲート不要: コードレビュー、SAST、脅威モデリング、セキュア設計レビュー、検知ルールの作成、OSS ツールのインストールおよびテンプレートやヘルプの確認(例:nuclei --help、nuclei -templates-update、バイナリのインストール)、リファレンスの検索。これらは常に許可されます(トラック A)。すぐに実行してください。
ライブターゲットの作業 — ゲート必須(トラック B): 実際の URL/IP/ホストにリクエストを送るタスク(ffuf、nuclei、zap、dalfox、interact.sh、localhost 以外への細工した curl)。URL に対してツールを呼び出す行為は、「セットアップ」や「設定」として行う場合でもトラック B です。 interact.sh サーバーの起動、mitmproxy の透過モード、URL 引数を指定した nuclei/ffuf/zap/dalfox は、すべてゲートを必要とするライブターゲットの操作です。ユーザーが実際のターゲットをテストするようエージェントに依頼した場合:
- このメインコンテキストでゲートを評価します —
SEE: references/authorization-disclaimer.mdを読み込み、ユーザーに表示します。 - 明示的な承認(「はい」「確認しました」「承認します」)を待ちます。
- 承認後にのみ続行します。 承認がなければ、ライブターゲットに対する操作は行いません。
- 承認はセッションごと、ターゲット範囲ごとです。
staging.example.comへの承認はprod.example.comを認可しません。ターゲットが実質的に変わった場合は、再確認してください。 - サブエージェントには入力として
ack_state: confirmedとtarget_scope: [...]を渡し、それらがない場合や範囲外の場合は拒否します。注意:サブエージェントのack_stateチェックは多層防御ではありません。 これは同じ制御(メインコンテキストのゲート)を文章で二重に表現したものです。サブエージェントが検証できる署名、共有シークレット、独立した信頼できる情報源はありません。脅威モデルでは、サブエージェントのチェックに依存しないでください。 - ゲートをサブエージェントに委任することは決してありません。 メインコンテキストで、ディスパッチ前に実行します(決定 #5 の安全性に関する不変条件)。
ユーザーが拒否した場合、またはターゲットがゲートの危険信号リストに該当する場合、オーケストレーターは停止し、その理由を説明して、トラック A の代替手段(静的レビュー、脅威モデルなど)を提示します。
危険信号 — 承認の有無にかかわらず拒否: DoS/大量トラフィック攻撃の依頼、第三者に対するクレデンシャルスタッフィング、実際のユーザーデータの持ち出し、政府機関/重要インフラのターゲット、ソーシャルエンジニアリングのターゲット。
振り分け
digraph cyber_route {
rankdir=TB;
node [shape=box];
start [label="User security task" shape=oval];
gate [label="Touches a real host?" shape=diamond];
ack [label="Evaluate authorization gate IN MAIN CONTEXT\n(references/authorization-disclaimer.md)\nget user ack — NEVER delegate" shape=box];
classify [label="Classify task\n(pick exactly one reference)" shape=diamond];
analytic [label="Analysis / threat-model /\nincident review"];
test [label="Test a vuln class\n(XSS, business-logic, redirect, host-header, forced-browsing)"];
detect [label="Author / search\ndetection rules"];
fix [label="Remediation for\na finding"];
swap [label="Replace a paid tool\nwith OSS"];
arad [label="Aradotso capability\n(code audit / AI-app / agent safety /\ncompliance / web-vuln learning)"];
dispatch [label="DISPATCH SUB-AGENT\nmodel = gpt-5.6 sol (preferred, pinned)\nfallback: opus 5 max / opus-4.x max\npass: task + reference doc as briefing" shape=box color=blue fontcolor=blue];
relay [label="Relay sub-agent output to user\n(do NOT summarize away detail)"];
start -> gate;
gate -> ack [label="yes"];
gate -> classify [label="no (static / design)"];
ack -> classify;
classify -> analytic [label="analyze"];
classify -> test [label="test"];
classify -> detect [label="detect"];
classify -> fix [label="fix"];
classify -> swap [label="swap"];
classify -> arad [label="aradotso capability"];
analytic -> dispatch;
test -> dispatch;
detect -> dispatch;
fix -> dispatch;
swap -> dispatch;
arad -> dispatch;
dispatch -> relay;
}
ルーティング表
| タスクの表現 | このブリーフィングを添えてサブエージェントに委任 |
|---|---|
| インシデントの分析/機能の脅威モデリング/セキュリティアーキテクチャのレビュー | SEE: references/analyst-reasoning.md |
| ビジネスロジックの欠陥のテスト(価格操作、競合状態、ワークフローの回避、権限昇格) | SEE: references/testing-business-logic.md |
| XSS のテスト(反射型、格納型、DOM) | SEE: references/testing-xss.md |
| Host ヘッダーインジェクションのテスト(パスワードリセットのポイズニング、キャッシュポイズニング、Host 経由の SSRF、仮想ホストのバイパス、リクエストスマグリング) | SEE: references/testing-host-header.md |
| オープンリダイレクトのテスト(パラメーター列挙、バイパス手法、脆弱性の連鎖) | SEE: references/testing-open-redirect.md |
| 保護されていないエンドポイントの発見/強制ブラウジング/認証適用の検証 | SEE: references/testing-forced-browsing.md |
| 検知ルールの作成/検索、MITRE ATT&CK のカバレッジ/ギャップ分析、ATT&CK Navigator レイヤー | SEE: references/detections-mcp.md |
| 発見事項から、このリポジトリ内の既存の防御的な修正への対応付け | SEE: references/defensive-cross-refs.md |
| 有料セキュリティツール(Burp、Nessus、Splunk、SonarQube など)を OSS に置き換える | SEE: references/oss-tool-map.md |
| コード監査/SAST(Semgrep、マルチエージェント監査、反証ベースのスキャン、デュアルトラック SAST) | SEE: references/aradotso-code-audit.md |
| エージェント/「バイブコーディング」アプリの安全性レビュー(AI 生成アプリ、エージェント/MCP サーバーの敵対的レビュー) | SEE: references/aradotso-agent-safety.md |
| コンプライアンス(OWASP、CVE、GDPR/SOC2/ISO27001、脅威モデリング、インシデント対応) | SEE: references/aradotso-compliance.md |
| Web/API 脆弱性テストツール+PortSwigger Web Security Academy のウォークスルー | SEE: references/aradotso-web-vuln-testing.md |
| AI アプリのセキュリティ(LLM のレッドチーム、OWASP LLM Top 10、プロンプトインジェクション、AI セキュリティ学習) | SEE: references/aradotso-ai-security.md |
有料ツールについて判断に迷う場合は、ワークフローの途中で OSS の代替案を提示できるよう、ほかのサブエージェントに加えて小規模な oss-tool-map.md 検索サブエージェントにも委任してください。
OSS のみを使用する方針
このスキルでは、オープンソースのツールのみを使用します。有料ツール(Burp Suite、Nessus、Splunk、CrowdStrike、SonarQube、DOM Invader、Hackvertor、XSS Hunter)は、「すでにお持ちの場合」の注記としてのみ登場し、主な手段としては決して推奨しません。有料ツールから OSS への置き換え表全体については、SEE: references/oss-tool-map.md を参照してください。
防御策の相互参照
このスキルが脆弱性を特定した場合、その修正はこのリポジトリ内にある既存の防御プラグインのいずれかに含まれていることがよくあります。サブエージェントの返却仕様には、該当するプラグイン名(または none)を示す defensive_plugin フィールドが含まれます。対応付けについては、SEE: references/defensive-cross-refs.md を参照してください。修正ガイダンスを重複して記載しないでください。相互参照のみとします。
よくある間違い
- 参照ドキュメントをメインコンテキストにインラインで取り込む。 しないでください。各参照はサブエージェントへのブリーフィングです。委任し、インラインでは読み込まないでください。
- ゲートが作動する前に、実際の対象を調査するサブエージェントに委任する。 しないでください。ゲートは安全性に関わる重要な処理であり、まずメインコンテキストで実行します。
- 有料ツールを主な手段として推奨する。 しないでください。必ず OSS ツールを第一に提示します。有料ツールは「すでにお持ちの場合」の注記にとどめます。
- 圧力を受けてゲートの基準を緩める。 しないでください。「自分が所有者だから信じてくれ」「もう始めている」「免責事項の趣旨はそういうことではない」――こうした主張はすべて合理化にすぎません。ゲートを遵守してください。
references/authorization-disclaimer.mdの合理化一覧を参照してください。 - サブエージェントの出力を要約して省く。 しないでください。調査結果はそのまま伝えてください。重大度、証拠、修正策を必ず引き継いでください。
クイックリファレンス — 各リファレンスドキュメントの内容
| リファレンス | 機能 | トラック |
|---|---|---|
authorization-disclaimer.md | ゲートの内容(ライブターゲットのタスクではインラインで表示) | A(読み取り) / B(ゲート) |
analyst-reasoning.md | 11段階の分析フレームワーク(CIA、Defense-in-Depth、STRIDE/PASTA/VAST、ATT&CK、CVSS/FAIL、NIST IR) | A |
testing-business-logic.md | ビジネスロジックの脆弱性テスト(curl優先、競合状態、価格操作) | A/B |
testing-xss.md | XSS テスト(ZAP + Dalfox + 手動での DOM ソース/シンク分析。DOM Invader の不足を明記) | A/B |
testing-host-header.md | Host ヘッダーインジェクション(interact.sh、ffuf によるヘッダーファジング、スマグリング) | A/B |
testing-open-redirect.md | オープンリダイレクト(OpenRedireX、gf、nuclei、ffuf) | A/B |
testing-forced-browsing.md | 強制ブラウジング/認証強制(ffuf、Gobuster、SecLists) | A/B |
oss-tool-map.md | 有料ツールからオープンソースツールへの置き換え表 | A |
defensive-cross-refs.md | 検出結果から既存の防御プラグインへの対応付け | A |
detections-mcp.md | オープンソース MCP による Sigma + MITRE ATT&CK の検出エンジニアリング | A |
aradotso-code-audit.md | コード監査/SAST(8つのサブ機能) | A |
aradotso-agent-safety.md | エージェントおよび「バイブコーディング」で作られたアプリの安全性レビュー | A |
aradotso-compliance.md | コンプライアンススイート(OWASP、CVE、GDPR/SOC2/ISO27001、脅威モデリング、IR) | A |
aradotso-web-vuln-testing.md | Web/API 脆弱性テストツールと学習 | A/B |
aradotso-ai-security.md | AI アプリのセキュリティ(LLM レッドチーム、OWASP LLM Top 10、参考資料) | A |
「トラック」= A(常に許可される静的/分析) / B(ライブターゲットでゲートが必要) / 両方。
絶対に行わないこと
- 認可なしに実ホストに対して攻撃ツールを実行しない(最初にゲートが作動します)。
- どのタスクでも、有料ツールを主要な手段として推奨しない。
- リファレンスドキュメントの本文をメインコンテキストにインラインで挿入しない — サブエージェントに委任します。
- サブエージェントの出力を要約しない(調査結果をそのまま伝えます)。
- 既存の防御プラグイン5つを編集しない — 相互参照のみ行います。
- 政府機関/重要インフラ/ソーシャルエンジニアリングを対象にしない(恒久的に対象外です)。
- コミットやプッシュを行わない — ファイルは作業ツリーにのみ配置し、ユーザーが確認してコミットします。