このところ、グリッチによる暗号化障害の発生を検出して、これに何等かの対抗手段を講じる方法がないか取り組んできました。ESP32 AES H/Wアクセラレーションに関する最近のレポートによると、時限グリッチを発生させて、暗号化操作をスキップさせる攻撃が可能であると報じられています。 この攻撃を仕掛けるには、ハードウェアへの物理的なアクセスが必要となります。 しかし攻撃が成功すると、H/Wを使った暗号化操作がスキップされ、データがTLSトランスポートを介して暗号化されずに送信されます。
この報告を踏まえて、wolfSSLでは新しいビルドオプションWOLFSSL_CIPHER_TEXT_CHECKを追加して、暗号化をチェックし、データが正しく変更されたことを確認するようにしました(つまり、暗号化前後のデータが同じでないことを確認します)。 デフォルトではバッファの64ビットをチェックしますが、これはWOLFSSL_CIPHER_CHECK_SZマクロをオーバーライドすることで拡大できます。 この機能は、「最大強度」ビルドオプション `–enable-maxstrength`を使用することでもデフォルトで有効となります。
詳細については、PR: https://github.com/wolfSSL/wolfssl/pull/5231「グリッチを防ぐためにTLS暗号化に健全性チェックを追加」を参照してください。
ご質問は、info@wolfssl.jpまでお問い合わせください。テクニカルサポートについは、support@wolfssl.com までお寄せください。