公開日:2022/03/16 最終更新日:2024/02/26
JVNVU#90813125
OpenSSLのBN_mod_sqrt()における法が非素数のときに無限ループを引き起こす問題
OpenSSLのBN_mod_sqrt()には、法が非素数の場合、無限ループを引き起こす問題があります。
- OpenSSL 1.0.2zdより前の1.0.2系のバージョン
- OpenSSL 1.1.0系すべてのバージョン
- OpenSSL 1.1.1nより前の1.1.1系のバージョン
- OpenSSL 3.0.2より前の3.0系のバージョン
OpenSSL Projectより、OpenSSL Security Advisory [15 March 2022]が公開されました。
深刻度 - 高(Severity: High)
OpenSSLのBN_mod_sqrt()は有限体における平方根を計算します。BN_mod_sqrt()には、法が非素数の場合、無限ループを引き起こす問題があります。
BN_mod_sqrt()は圧縮形式の楕円曲線暗号の公開鍵を含む証明書、もしくは圧縮形式でエンコードされた基準点(Base Point)を持つ楕円曲線パラメータを含む証明書をパースする際に使用されます。また、OpenSSLは証明書の署名を検証する前に証明書をパースするため、外部から受け取った証明書をパースする際、無限ループを引き起こされる可能性があります。同様に、秘密鍵に楕円曲線パラメータを含んでいる場合にも細工された秘密鍵をパースすることで無限ループを引き起こされる可能性があります。
この問題は次の状況で起こる可能性があります。
- TLSクライアントがサーバ証明書を処理する
- TLSサーバがクライアント証明書を処理する
- ホスティングサービス事業者が顧客から受け取った証明書や秘密鍵を処理する
- 認証局が契約者から受け取ったCSR (証明書署名要求) データを処理する
- その他、ASN.1形式の楕円曲線パラメータを処理する場合
不正な楕円曲線パラメータを含む証明書や秘密鍵などをパースすることで無限ループを引き起こされ、サービス運用妨害(DoS)状態になる可能性があります。
アップデートする
開発者が提供する情報をもとに、最新版へアップデートしてください。
開発者は、本脆弱性への対策版として次のバージョンをリリースしています。
- OpenSSL 1.0.2zd (プレミアムサポートを契約したユーザのみ)
- OpenSSL 1.1.1n
- OpenSSL 3.0.2
OpenSSL 1.1.0系はサポートが終了しており、アップデートは提供されません。
開発者は、OpenSSL 1.0.2プレミアムサポートを契約したユーザ以外に対しては、OpenSSL 3.0系もしくは1.1.1系へのアップデートを推奨しています。
ベンダ | ステータス | ステータス 最終更新日 |
ベンダの告知ページ |
---|---|---|---|
三菱電機株式会社 | 該当製品あり | 2022/08/02 | 三菱電機株式会社 の告知ページ |
図研エルミック株式会社 | 該当製品無し | 2022/03/30 | |
日本電気株式会社 | 該当製品あり | 2024/02/26 |
ベンダ | リンク |
OpenSSL Project | OpenSSL Security Advisory [15 March 2022] |
Vulnerabilities / 2022 |
- 2022/03/30
- 図研エルミック株式会社のベンダステータスが更新されました
- 2022/05/12
- 三菱電機株式会社のベンダステータスが更新されました
- 2022/08/02
- 三菱電機株式会社のベンダステータスが更新されました
- 2022/09/07
- 日本電気株式会社のベンダステータスが更新されました
- 2022/12/13
- 日本電気株式会社のベンダステータスが更新されました
- 2023/03/28
- 日本電気株式会社のベンダステータスが更新されました
- 2023/07/03
- 日本電気株式会社のベンダステータスが更新されました
- 2023/09/01
- 日本電気株式会社のベンダステータスが更新されました
- 2024/02/26
- 日本電気株式会社のベンダステータスが更新されました