概要
もし Grav またはその拡張機能に関連するセキュリティ上の問題を発見されたら、コア・チームにメールしてください(contact@getgrav.org)。速やかに対応します。
コア・チームがその問題を調査し、関係者に連絡して解決するまでは、その問題を公表すべきではありません。これは、 GitHub 上でも、 Discord 上でも、 Discourse フォーラム上でも、公表は待ってください。また、その問題が、 Grav ユーザーにとってセキュリティ上の脅威でない場合は、 GitHub の issue として送信していただくのが良いでしょう。判断がつかない場合は、ご連絡いただければ、どちらの問題に属するかの判断をお助けします。
レポートの送信
Grav のコアや、拡張機能のひとつに、潜在的な脆弱性を発見した場合は、適切な注意のもと報告をお願いします:
- Grav の バージョン番号 とインストールされている拡張機能、および、問題に関連する コンポーネント を含めてください。
- 脆弱性を 詳細かつ簡潔に 記述することで、その原因の探索にかかる時間が短縮されます。
- 脆弱性が起きる 環境を再現する ために必要なステップを正確に書き留めてください: system.yaml ファイルに何が設定されているか、どんなコンテンツが作成されているか、そしてどのようなシステム設定が適用されているか? などです。
- もし可能ならば、脆弱性の原因と、開発者が再構築してセキュリティ対応できる パッチの適用 方法を記述してください。
責任ある開示
Grav は、発見された脆弱性の報告のため、 責任ある開示 モデルに従います。これはつまり、問題が発見され、テストされ、実証に成功した場合に、その脆弱性が公開される前に、開発者には、一定期間のパッチ適用期間が与えられるべき、ということです。なぜなら、報告された問題に対する解決策の発見とテストには、時間がかかるうえに一刻を争うからです。 Grav は、オープンソースプロジェクトであり、作者はそれのみに無限に時間をかけられるわけではありません。よって、関連するコードに関する知識を有する場合は、問題解決やパッチ適用の方法も、ご提案いただくことを推奨しています。
解決のプロセス
報告いただいた内容が正確で、新しいセキュリティ問題が再現された場合、コア・チームは可能な限り速やかに対応します。対応が完了すると、問題とその解決策は、 レポートの公開のリポジトリ に掲載されます。報告者は、お名前と、オプションで web サイト/ソーシャルメディアのプロフィールへのリンクがクレジットされますが、ご希望があれば、仮名または “匿名報告者” としてクレジットされることもできます。
レポートと問題は、問題が解決されるまでは、非公開のままです。拡張機能のメンテナーが、問題をタイムリーに解決できない場合、その拡張機能は、解決されるまで Grav パッケージマネージャーから削除されます。
サポートされるバージョン
Grav の現在の major.minor
バージョンのみが、サポート対象です。つまり、パッチは major.minor.patch
バージョンに実装されます。 Grav の古いバージョンに戻ることはありません。インストールを最新状態にすることは重要です。多くの変更は、明らかなセキュリティ上の理由が無かったとしても有益です。
リスクのレベル
ソフトウェアとして、 Grav には 5つのリスクレベルがあります。
- Highly Critical (非常に重大)
- Critical (重大)
- Moderately Critical (中程度に重大)
- Less Critical (それほど重大ではない)
- Not Critical (重大ではない)
これらは、 National Institute of Standards and Technology (NIST) による “Common Misuse Scoring System” (CMSS) をベースに計算されます。 Grav 用の簡単に利用できる計算機が無い場合は、 Drupal の RiskCalc をご利用ください。 (注意)