audit-context-building
脆弱性やバグの発見に先立ち、コードを1行単位で超精細に解析し、アーキテクチャの深い文脈を構築するために使用します。
description の原文を見る
Enables ultra-granular, line-by-line code analysis to build deep architectural context before vulnerability or bug finding.
SKILL.md 本文
Deep Context Builder Skill (Ultra-Granular Pure Context Mode)
1. 目的
このスキルは監査のコンテキスト構築段階において、Claude の思考方法を制御します。
有効化されると、Claude は以下を実行します:
- デフォルトで 行単位 / ブロック単位 のコード分析を実行します。
- 第一原理、5Why、5How をマイクロスケールで適用します。
- 継続的に洞察 → 関数 → モジュール → システム全体をリンクします。
- 新しい証拠に基づいて進化する安定的で明確なメンタルモデルを維持します。
- 不変性、前提条件、フロー、および推論リスクを特定します。
このスキルは構造化分析形式を定義し(下記の関数マイクロ分析の例を参照)、脆弱性探索段階の前に実行されます。
2. このスキルを使用する場合
以下の場合に使用してください:
- バグや脆弱性を発見する前に深い理解が必要な場合。
- 高レベルの推測ではなくボトムアップの理解が必要な場合。
- ハルシネーション、矛盾、コンテキスト損失の低減が重要な場合。
- セキュリティ監査、アーキテクチャレビュー、または脅威モデリングを準備する場合。
以下の場合は使用しないでください:
- 脆弱性の発見
- 修正推奨事項
- エクスプロイト推論
- 深刻度/影響度の評価
3. このスキルの動作
有効化されると、Claude は以下を実行します:
- 各ブロックと行の 超詳細分析 をデフォルトで実行します。
- マイクロレベルの第一原理、5Why、5How を適用します。
- 永続的なグローバルメンタルモデルを構築・改善します。
- 矛盾する場合は以前の前提条件を更新します(「以前は X と思いましたが、今は Y です」)。
- 定期的に要約をアンカーして安定したコンテキストを維持します。
- 推測を避け、必要な場合は不確実性を明確に表現します。
目標: 結論ではなく、深く正確な理解を得ることです。
合理化根拠(スキップしない)
| 合理化根拠 | なぜ間違っているのか | 必須アクション |
|---|---|---|
| 「要点は分かる」 | 要点レベルの理解ではエッジケースを見落とす | 行単位の分析が必須 |
| 「この関数は単純だ」 | 単純な関数も複合すると複雑なバグになる | とにかく 5Why を適用 |
| 「この不変性を覚えているだろう」 | 覚えていません。コンテキストは劣化します。 | 明確に書き下ろす |
| 「外部呼び出しはおそらく大丈夫」 | 外部 = 証明されるまで敵対的 | コードにジャンプするかモデル化 |
| 「このヘルパーはスキップできる」 | ヘルパーには伝播する前提条件が含まれている | 完全な呼び出しチェーンをトレース |
| 「これには時間がかかる」 | 急いだコンテキスト = 後で幻覚化した脆弱性 | 遅いことが速い |
4. フェーズ 1 — 初期オリエンテーション(ボトムアップスキャン)
詳細分析の前に、Claude は最小限のマッピングを実行します:
- メジャーモジュール/ファイル/コントラクトを特定します。
- 明らかなパブリック/外部エントリポイントを記録します。
- 可能性のあるアクター(ユーザー、所有者、リレイヤー、オラクル、他のコントラクト)を特定します。
- 重要なストレージ変数、辞書、状態構造体、またはセルを特定します。
- 動作を前提せずに予備的な構造を構築します。
これにより詳細分析のためのアンカーが確立されます。
5. フェーズ 2 — 超詳細関数分析(デフォルトモード)
すべての非自明な関数は完全なマイクロ分析を受けます。
5.1 関数ごとのマイクロ構造チェックリスト
各関数について:
-
目的
- 関数が存在する理由とシステムでの役割。
-
入力と前提条件
- パラメータと暗黙的な入力(状態、送信者、環境)。
- 前提条件と制約。
-
出力と効果
- 戻り値。
- 状態/ストレージ書き込み。
- イベント/メッセージ。
- 外部インタラクション。
-
ブロック単位 / 行単位の分析 各論理ブロックについて:
- 何をするか。
- ここに表示される理由(順序ロジック)。
- 依存する前提条件。
- 確立または維持する不変性。
- 後のロジックが依存する内容。
ブロックごとに適用:
- 第一原理
- 5Why
- 5How
5.2 クロスファンクション&外部フロー分析
(Jump-Into-External-Code ルールの完全統合)
呼び出しを発見したときは、同じマイクロファーストな分析を境界全体で継続します。
内部呼び出し
- 呼び出し先にすぐにジャンプします。
- 関連するコードのブロック単位分析を実行します。
- データ、前提条件、不変性のフロー追跡: 呼び出し元 → 呼び出し先 → 戻り値 → 呼び出し元。
- 呼び出し先ロジックがこの特定の呼び出しコンテキストで異なる動作をするかどうかを記録します。
外部呼び出し — 2 つのケース
ケース A — コードベースに存在するコントラクトへの外部呼び出し 内部呼び出しとして扱う:
- ターゲットコントラクト/関数にジャンプします。
- ブロック単位のマイクロ分析を継続します。
- 不変性と前提条件をシームレスに伝播します。
- ブラックボックス推測ではなく 実際のコード に基づいてエッジケースを検討します。
ケース B — 利用可能なコードなしの外部呼び出し(真の外部 / ブラックボックス) 敵対的として分析する:
- 送信されるペイロード/値/ガスまたはパラメータを説明します。
- ターゲットに関する前提条件を特定します。
- すべての結果を検討する:
- revert
- 不正/奇妙な戻り値
- 予期しない状態変化
- 不正な動作
- リエントランシー(該当する場合)
継続性ルール
呼び出しチェーン全体を 1 つの連続実行フロー として扱います。 コンテキストをリセットしません。 すべての不変性、前提条件、データ依存は呼び出し間で伝播する必要があります。
5.3 完全な分析例
完全なウォークスルーについては FUNCTION_MICRO_ANALYSIS_EXAMPLE.md を参照してください:
- DEX スワップ関数の完全なマイクロ分析
- 第一原理、5Why、5How の適用
- 不変性と前提条件を含むブロック単位分析
- クロスファンクション依存関係マッピング
- 外部インタラクションのリスク分析
この例は、分析するすべての関数に必要な深さと構造のレベルを示しています。
5.4 出力要件
超詳細分析を実行するとき、Claude は OUTPUT_REQUIREMENTS.md で定義されている形式に従って出力を構造化しなければなりません。
主要要件:
- 目的(最小 2〜3 文)
- 入力と前提条件(すべてのパラメータ、前提条件、信頼前提)
- 出力と効果(戻り値、状態書き込み、外部呼び出し、イベント、事後条件)
- ブロック単位分析(何、なぜここに、前提条件、第一原理/5Why/5How)
- クロスファンクション依存(内部呼び出し、リスク分析付き外部呼び出し、共有状態)
品質閾値:
- 関数ごとに最小 3 個の不変性
- 最小 5 個の文書化された前提条件
- 外部インタラクションのリスク検討は最小 3 個
- 最低 1 回の第一原理適用
- 5Why/5How の組み合わせ適用は最小 3 回
5.5 完全性チェックリスト
関数のマイクロ分析を終了する前に、COMPLETENESS_CHECKLIST.md に対して検証してください:
- 構造的完全性: すべての必須セクションが存在(目的、入力、出力、ブロック単位、依存)
- コンテンツ深さ: 最小閾値が満たされている(不変性、前提条件、リスク分析、第一原理)
- 継続性と統合: 相互参照、伝播する前提条件、不変性の結合
- アンチハルシネーション: 行番号引用、あいまいな陳述なし、証拠ベースのクレーム
すべてのチェックリスト項目が満たされ、未解決の「不明」項目がない場合、分析は完了です。
6. フェーズ 3 — グローバルシステム理解
十分なマイクロ分析の後:
-
状態と不変性の再構築
- 各状態変数の読み取り/書き込みをマップします。
- 複数関数および複数モジュール不変性を導き出します。
-
ワークフロー再構築
- エンドツーエンドフロー(デポジット、ウィズドロー、ライフサイクル、アップグレード)を特定します。
- これらのフロー全体での状態変換を追跡します。
- ステップ間で持続する前提条件を記録します。
-
信頼境界マッピング
- アクター → エントリポイント → 動作。
- 信頼されないインプットパスを特定します。
- 権限変更と暗黙的なロール期待。
-
複雑性と脆弱性クラスタリング
- 多くの前提条件を持つ関数。
- 高い分岐ロジック。
- マルチステップ依存。
- モジュール間の結合状態変化。
これらのクラスタは脆弱性探索段階をガイドするのに役立ちます。
7. 安定性と一貫性ルール
(アンチハルシネーション、アンチ矛盾)
Claude は以下を実行する必要があります:
-
証拠を以前の前提条件に合わせるために再形成しないでください。 矛盾する場合:
- モデルを更新します。
- 修正を明確に述べます。
-
定期的に重要な事実をアンカーする コアをまとめる:
- 不変性
- 状態関係
- アクターロール
- ワークフロー
-
あいまいな推測を避ける 以下を使用:
- 「不明; X を検査する必要があります。」 の代わりに:
- 「おそらく…」
-
常に相互参照する 新しい洞察を以前の状態、フロー、不変性に接続してグローバル一貫性を維持します。
8. サブエージェント使用
Claude は以下のためにサブエージェントを生成できます:
- 密集または複雑な関数。
- 長いデータフロー制御フローチェーン。
- 暗号/数学ロジック。
- 複雑な状態マシン。
- マルチモジュールワークフロー再構築。
関数ごとの詳細分析には function-analyzer エージェントを使用します。
このスキルで定義されている完全なマイクロ構造チェックリスト、クロスファンクションフロールール、品質閾値に従い、純粋なコンテキスト構築制約を実行します。
サブエージェントは以下を実行する必要があります:
- 同じマイクロファーストルールに従う。
- Claude がグローバルモデルに統合する要約を返す。
9. 他のフェーズとの関係
このスキルは以下の前に実行されます:
- 脆弱性発見
- 分類/トリアージ
- レポート作成
- 影響モデリング
- エクスプロイト推論
以下の構築のみに存在します:
- 深い理解
- 安定したコンテキスト
- システムレベルの明確性
10. 非目標
有効化されている間、Claude は以下をすべきではありません:
- 脆弱性を特定する
- 修正を提案する
- Proof-of-Concept を生成する
- エクスプロイトをモデル化する
- 深刻度または影響を割り当てる
これは 純粋なコンテキスト構築のみ です。
ライセンス: CC-BY-SA-4.0(寛容ライセンスのため全文を引用しています) · 原本リポジトリ
詳細情報
- 作者
- trailofbits
- リポジトリ
- trailofbits/skills
- ライセンス
- CC-BY-SA-4.0
- 最終更新
- 不明
Source: https://github.com/trailofbits/skills / ライセンス: CC-BY-SA-4.0
関連スキル
secure-code-guardian
認証・認可の実装、ユーザー入力の保護、OWASP Top 10の脆弱性対策が必要な場合に使用します。bcrypt/argon2によるパスワードハッシング、パラメータ化ステートメントによるSQLインジェクション対策、CORS/CSPヘッダーの設定、Zodによる入力検証、JWTトークンの構築などのカスタムセキュリティ実装に対応します。認証、認可、入力検証、暗号化、OWASP Top 10対策、セッション管理、セキュリティ強化全般で活用できます。ただし、構築済みのOAuth/SSO統合や単独のセキュリティ監査が必要な場合は、より特化したスキルの検討をお勧めします。
claude-authenticity
APIエンドポイントが本物のClaudeによって支えられているか(ラッパーやプロキシ、偽装ではないか)を、claude-verifyプロジェクトを模した9つの重み付きルールベースチェックで検証できます。また、Claudeの正体を上書きしているプロバイダーから注入されたシステムプロンプトも抽出します。完全に自己完結しており、httpx以外の追加パッケージは不要です。Claude APIキーまたはエンドポイントを検証したい場合、サードパーティのClaudeサービスが本物か確認したい場合、APIプロバイダーのClaude正当性を監査したい場合、複数モデルを並行してテストしたい場合、またはプロバイダーが注入したシステムプロンプトを特定したい場合に使用できます。
anth-security-basics
Anthropic Claude APIのセキュリティベストプラクティスを適用し、キー管理、入力値の検証、プロンプトインジェクション対策を実施します。APIキーの保護、Claudeに送信する前のユーザー入力検証、コンテンツセーフティガードレールの実装が必要な場合に活用できます。「anthropic security」「claude api key security」「secure anthropic」「prompt injection defense」といったフレーズでトリガーされます。
x-ray
x-ray.mdプレ監査レポートを生成します。概要、強化された脅威モデル(プロトコルタイプのプロファイリング、Gitの重み付け攻撃面分析、時間軸リスク分析、コンポーザビリティ依存関係マッピング)、不変条件、統合、ドキュメント品質、テスト分析、開発者・Gitの履歴をカバーしています。「x-ray」「audit readiness」「readiness report」「pre-audit report」「prep this protocol」「protocol prep」「summarize this protocol」のキーワードで実行されます。
semgrep
Semgrepスタティック分析スキャンを実行し、カスタム検出ルールを作成します。Semgrepでのコードスキャン、セキュリティ脆弱性の検出、カスタムYAMLルールの作成、または特定のバグパターンの検出が必要な場合に使用します。重要:ユーザーが「バグをスキャンしたい」「コード品質を確認したい」「脆弱性を見つけたい」「スタティック分析」「セキュリティlint」「コード監査」または「コーディング標準を適用したい」と尋ねた場合も、Semgrepという名称を明記していなくても、このスキルを使用してください。Semgrepは30以上の言語に対応したパターンベースのコードスキャンに最適なツールです。
ghost-bits-cast-attack
Java「ゴーストビッツ」/キャストアタック プレイブック(Black Hat Asia 2026)。16ビット文字が8ビットバイトに暗黙的に縮小されるJavaサービスへの攻撃時に使用します。WAF/IDSを回避して、SQLインジェクション、デシリアライゼーション型RCE、ファイルアップロード(Webシェル)、パストトラバーサル、CRLF インジェクション、リクエストスマグリング、SMTPインジェクションを実行できます。Tomcat、Spring、Jetty、Undertow、Vert.x、Jackson、Fastjson、Apache Commons BCEL、Apache HttpClient、Angus Mail、JDK HttpServer、Lettuce、Jodd、XMLWriterに影響し、WAFバイパスにより多くの「パッチ済み」CVEを再度有効化します。