Blue Team フロー

/lagune-verify: セキュリティ対策の有効性を証明する

適用した修正が実際に有効かを証明し、有効だった検出事項をクローズします。

⚖️ コードを読み、harden が記録した内容と突き合わせることで、適用した修正が実際に有効かを証明し、有効だった検出事項をクローズします。

実行方法​

/lagune-verify

仕組み​

harden が記録した各箇所のコードを読み、記録の内容と本当に一致しているかを確認します。証明とは、この突き合わせ、つまりコードと記録の照合です。各対策には、次の 3 つの判定のいずれかが下されます:

判定意味
✅ Risk closedコードが記録の内容どおりに動作している。
❌ Risk not closed対策はまだ完了していない。verify は harden に戻るよう案内する。
❓ Cannot tell from the codeコードだけでは根拠が確認できない。

解消が証明されたリスクは、確認を取ったうえでクローズし、チェーンから外します。たとえば:

  • ファイルのアップロード(判定:✅ Risk closed)
    • 証明の方法:アップロードのハンドラーを読み、ファイルの内容から実際の種類を判別し、サイズ制限を適用し、それ以外はすべて拒否していることを確認しました。記録の内容と完全に一致しています。
    • 根拠:ファイルの内容から実際の種類を判別している handleUpload 関数です。

リスクが解消されていなければ、verify はそのことをはっきり伝え、修正がまだ完了していないため /lagune-harden に戻るよう案内します。

ヒント
  • 堅牢化の記録だけを土台にしています。
  • コードは判定のために読むだけで、判定を通すために対策を弱めたり、コードを書き換えたりすることは決してありません。
  • 再実行すると判定を現状と照合して更新し、古くなった判定は外れ、解消済みでなくなったリスクは再び指摘されます。
  • リスクの解消が証明されると、一度だけ確認したうえで、その検出事項をチェーン全体(detect、plan、harden、追跡)から取り除きます。
  • 独自のレポートは作成せず、各判定は .lagune/memory/harden.md 内の対応する対策のブロックに記録されます。harden は次回の実行時にそれを読み込みます。
harden に依存

verify は /lagune-harden を土台にしています。

サイクルが閉じる​

対象範囲のすべてがクローズされると、サイクルは静止状態になります。再び開くのは、コードが変わったときだけです。セキュリティはクローズ可能なので、このフローは終わりのないループではなく、終着点を持ちます。

よくある質問

/lagune-verify がコードを読み、harden が記録した内容と突き合わせて、Risk closed(リスク解消)、Risk not closed(リスク未解消)、Cannot tell from the code(コードからは判断できない)の 3 つの判定のいずれかを返します。

verify がリスクの解消を証明すると、その検出事項はクローズされます。確認を得たうえでチェーン全体から取り除かれ、以後は再処理されません。

はい。SDH はクローズ可能です。解消が証明された検出事項はクローズされるため、フローは終わりのないループではなく、終着点を持ちます。