🛡️ detect が見つけたものを防御計画に変えます:各検出事項をカテゴリと CVSS v4.0 スコアで評価し、適用する修正を割り当てます。
実行方法
- すべてを計画
- パスを指定
- 気になる点に絞る
/lagune-plan
/lagune-plan src/routes/upload.ts
/lagune-plan 機密データが漏れるおそれのある箇所
仕組み
このフェーズは detect の続きです。システムが何をしていて、それぞれにどんなリスクがあるかは detect がすでに見つけているため、plan はリスクを繰り返し述べるのではなく、その深刻さを評価し、どう対処するかを決めます。plan はコードを一切読まないため、どの修正も必ず detect が実際に検出したものを対象にすることになります。評価は CVSS v4.0 の方法に沿って行い、各検出事項にカテゴリ、CVSS v4.0 ベクトル(detect と charter が捉えた内容から導き出し、cvss フック でスコアを算出したもの)、そのスコアが該当する優先度の区分を付けます。各修正には、それが守る charter の原則も記されます。
たとえば:
- ファイルのアップロード(優先度:緊急)
- カテゴリ:ファイルの無制限アップロード(CWE-434)。
- CVSS:CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N(9.3、緊急)。
- この優先度の理由:誰でもインターネット経由でアップロード機能にアクセスでき、しかも顧客のファイルを保存するサーバー上にあります。
- 守る原則:III. すべての入力は、検証されるまで信頼しない。
- 修正:ファイルの実際の種類とサイズを確認し、保存時に名前を変更し、アップロードされたファイルはコードとして実行できない場所に保存します。
こうして、評価と優先順位付けが済んだ修正のリストが手に入ります。各修正は検出事項に紐づいており、次のフェーズですぐに適用できます。スコアは推定ではなく、必ず計算で求めます。ベクトルにはプロジェクトの露出度と影響の大きさが Environmental メトリクスとして含まれているため、誰でも FIRST や NVD の計算ツールに貼り付けて、同じスコアを導き出せます。
- detect の結果だけを土台にしています。detect で洗い出していないファイルや懸念がある場合は、先にそれを対象に
/lagune-detectを実行するよう案内します。 - 再実行すると計画が更新され、完了した修正は外れ、新しい修正が加わります。
- 防御計画は
.lagune/memory/plan.mdにあります。
plan は /lagune-detect がすでに洗い出した内容だけをもとに動くため、先に detect を実行してください。
次のステップ
計画を適用しましょう:/lagune-harden。
よくある質問
/lagune-plan が、各検出事項をカテゴリと、cvss フックが算出した CVSS v4.0 スコアで評価し、適用する修正を割り当てます。
はい。各検出事項に CVSS v4.0 のベクトルとスコアが付きます。スコアは cvss フックが FIRST の計算ツールと同じ計算式で算出するため、誰でもそこにベクトルを貼り付けて、スコアを再計算できます。
いいえ。plan はコードを一切読まないため、どの修正も必ず detect が実際に検出したものを対象にすることになります。
