ソフトウェアを長く運用していると、誰もが次の三つを同時に望みたくなります。
しかし、この三つは同時には成り立ちません。CAP定理になぞらえて、これを FFS原則 と呼ぶことにします。
脆弱性修正は、基本的にアップストリームの現行バージョンにしか提供されません。古いバージョンへバックポートするには、誰かが手を動かす必要があり、その分のコストが必ず発生します。
コストを払う主体は、次の三つしかありません。
「タダで古いバージョンの脆弱性が勝手に直る」は原理的に起こりません。
| 選ぶ組み合わせ | 諦めるもの | 典型例 |
|---|---|---|
| Freeze + Free | Secure | 隔離環境での運用、リスク受容 |
| Freeze + Secure | Free | 商用LTS、延長サポート契約 |
| Free + Secure | Freeze | 継続的バージョンアップ(自動テスト・CIの整備が前提) |
明示的に選んでいないのに Freeze + Free に陥っているケースが現場では一番多く、これは暗黙のうちに Secure を捨てている状態です。
「自覚して Freeze + Free を選んでいる」のであれば、ネットワーク隔離や WAF などの代替コントロールを検討できます。自覚がなければ、何の対策も打たれません。
次に「このバージョン、まだ上げなくていいですよね?」と聞かれたら、こう問い直してみてください。
私たちは F・F・S のうち、どれを捨てる決断をしているのか?
答えが出てこないなら、それは決断ではなく、ただの先送りです。