最近、4D に対して確認された 2件のCVEについてご覧になったかもしれません。安全性を維持するために必要なアクションを以下に示します。
CVE-2023-30222: 情報漏えいの脆弱性
この CVE は、4D の全バージョンに存在する情報漏えいの脆弱性で、攻撃者は盗聴によって全ユーザーのパスワードハッシュを取得することができます。
検出された脆弱性は、クライアントとサーバー間の通信が暗号化されている場合 (プロジェクトの設定)、サーバーの秘密鍵を持っている人なら誰でも、その通信を平文で読むことができるというものです。サーバーの秘密鍵は秘密にしておくべきです。
たとえ 4D が、開発やテストを容易にするために、デフォルトの証明書と鍵を同梱していたとしても、ドキュメントでは常に、それらを独自のものに置き換えることを強く推奨しています。
このようなサーバーの秘密鍵の交換を簡単にするために、4D v20 R4 では、サーバーの起動ごとに秘密鍵を自動生成しています。こうすることで、各4Dサーバーインスタンスは、それぞれ異なる秘密鍵を持つことになります。
CVE-2023-30223: 壊れた認証の脆弱性
この CVE は、攻撃者が細工した TCPパケットを送信し、任意のアクションを実行させることを可能にする、 壊れた認証の脆弱性について記述しています。
このようなインジェクションは、攻撃者がサーバーの秘密鍵を持っている場合にのみ可能です。従って、安全を保つためには、デフォルトのサーバー鍵を独自のものに置き換えるようにしてください。
これらのアプリケーションのセキュリティをさらに向上させるため、4D は、厳密に必要なリクエストのみを認証前に受け付けるようにバグフィックスを提供しています。この改善は、特にビルトインのパスワードシステムを使用する 4Dアプリケーションに関連しています。以下のバージョンから利用可能です:
-
- 4D v19.7 LTS, ビルド 288986
-
- 4D v20.2 LTS、ビルド100956
-
- 4D v20 R2 HF1、ビルド 100440
-
- 4D v20 R3 以降
ビルトインのパスワードシステムを使用していない 4Dアプリケーションは、セキュリティが独自の実装または外部ディレクトリ (LDAP、Active Directory、Microsoft 365など) に依存しているため、この脆弱性の直接的な影響はありません。
まとめ
4D のバージョンが何であれ、独自のサーバー秘密鍵を使用し、秘密にしておくことを強くお勧めします。
また、4D を最新バージョンにアップグレードし、4Dセキュリティガイドに記載されている推奨事項を遵守することをお勧めします。