CVE-2023-4807
概要

Issue summary: The POLY1305 MAC (message authentication code) implementation
contains a bug that might corrupt the internal state of applications on the
Windows 64 platform when running on newer X86_64 processors supporting the
AVX512-IFMA instructions.

Impact summary: If in an application that uses the OpenSSL library an attacker
can influence whether the POLY1305 MAC algorithm is used, the application
state might be corrupted with various application dependent consequences.

The POLY1305 MAC (message authentication code) implementation in OpenSSL does
not save the contents of non-volatile XMM registers on Windows 64 platform
when calculating the MAC of data larger than 64 bytes. Before returning to
the caller all the XMM registers are set to zero rather than restoring their
previous content. The vulnerable code is used only on newer x86_64 processors
supporting the AVX512-IFMA instructions.

The consequences of this kind of internal application state corruption can
be various - from no consequences, if the calling application does not
depend on the contents of non-volatile XMM registers at all, to the worst
consequences, where the attacker could get complete control of the application
process. However given the contents of the registers are just zeroized so
the attacker cannot put arbitrary values inside, the most likely consequence,
if any, would be an incorrect result of some application dependent
calculations or a crash leading to a denial of service.

The POLY1305 MAC algorithm is most frequently used as part of the
CHACHA20-POLY1305 AEAD (authenticated encryption with associated data)
algorithm. The most common usage of this AEAD cipher is with TLS protocol
versions 1.2 and 1.3 and a malicious client can influence whether this AEAD
cipher is used by the server. This implies that server applications using
OpenSSL can be potentially impacted. However we are currently not aware of
any concrete application that would be affected by this issue therefore we
consider this a Low severity security issue.

As a workaround the AVX512-IFMA instructions support can be disabled at
runtime by setting the environment variable OPENSSL_ia32cap:

OPENSSL_ia32cap=:~0x200000

The FIPS provider is not affected by this issue.

公表日 2023年9月8日21:15
登録日 2023年9月9日10:00
最終更新日 2024年11月21日17:36
CVSS3.1 : HIGH
スコア 7.8
ベクター CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
攻撃元区分(AV) ローカル
攻撃条件の複雑さ(AC)
攻撃に必要な特権レベル(PR)
利用者の関与(UI) 不要
影響の想定範囲(S) 変更なし
機密性への影響(C)
完全性への影響(I)
可用性への影響(A)
影響を受けるソフトウェアの構成
構成1 以上 以下 より上 未満
cpe:2.3:a:openssl:openssl:*:*:*:*:*:*:*:* 3.1.0 3.1.3
cpe:2.3:a:openssl:openssl:*:*:*:*:*:*:*:* 3.0.0 3.0.11
cpe:2.3:a:openssl:openssl:*:*:*:*:*:*:*:* 1.1.1 1.1.1w
関連情報、対策とツール
共通脆弱性一覧

JVN脆弱性情報
OpenSSL の POLY1305 MAC 実装における Windows 上の XMM レジスタが破損する問題 (Security Advisory [8th September 2023])
タイトル OpenSSL の POLY1305 MAC 実装における Windows 上の XMM レジスタが破損する問題 (Security Advisory [8th September 2023])
概要

OpenSSL Project より、<a href="https://www.openssl.org/news/secadv/20230908.txt" target="blank">OpenSSL Security Advisory [8th September 2023]</a> (POLY1305 MAC implementation corrupts XMM registers on Windows (CVE-2023-4807)) が公開されました。 深刻度 - 低 (Severity: Low) OpenSSL の POLY1305 MAC 実装は、64 バイトを超えるデータの MAC を計算するときに、Windows 64 プラットフォーム上の不揮発性 XMM レジスタの内容を保存しません。呼び出し元に戻る前に、すべての XMM レジスタは以前の内容に復元されず、ゼロに設定されるため、呼び出し側アプリケーションに様々な影響を及ぼす可能性があります。この問題のあるコードは、AVX512-IFMA 命令をサポートする新しい x86_64 プロセッサでのみ使用されます。 また、POLY1305 MAC 実装は、CHACHA20-POLY1305 AEAD (Authenticated Encryption with associated data) アルゴリズムの一部として使用されます。この AEAD 暗号は、一般的に TLS プロトコルバージョン 1.2 および 1.3 で使用され、OpenSSL を使用するサーバーアプリケーションが影響を受ける可能性がありますが、本脆弱性公開時点では、この問題の影響を受けるような具体的なアプリケーションは確認されていないとのことです。 なお、OpenSSL Project は、POLY1305 MAC 実装は FIPS として承認されておらず、FIPS プロバイダはそれを実装していないため、影響を受けないとしています。

想定される影響 呼び出し側アプリケーションが不揮発性 XMM レジスタの内容にどの程度依存しているかによって影響が異なりますが、可能性の高い影響は、アプリケーションに依存する計算結果が不正確になったり、サービス運用妨害 (DoS) 状態にされたりすることです。 
対策

[アップデートする] 本脆弱性を修正した以下のバージョンがリリースされました  * OpenSSL 1.1.1w  * OpenSSL 3.0.11  * OpenSSL 3.1.3 [ワークアラウンドを実施する] 以下のように、環境変数OPENSSL_ia32capを設定し、実行時にAVX512-IFMA命令のサポートを無効にする  * OPENSSL_ia32cap=:~0x200000

公表日 2023年9月12日0:00
登録日 2023年9月13日13:53
最終更新日 2025年4月14日15:03
影響を受けるシステム
OpenSSL Project
OpenSSL 1.1.1 から 1.1.1v
OpenSSL 3.0.0 から 3.0.10
OpenSSL 3.1.0 から 3.1.2
CVE (情報セキュリティ 共通脆弱性識別子)
CWE (共通脆弱性タイプ一覧)
ベンダー情報
その他
変更履歴
No 変更内容 変更日
11 [2024年08月08日]
  ベンダ情報:日立 (hitachi-sec-2024-138) を追加
2024年8月8日10:39
10 [2024年07月19日]
  ベンダ情報:三菱電機 (MELSOFT MaiLabにおけるOpenSSLに起因するサービス拒否(DoS)の脆弱性) を追加
2024年7月19日11:15
9 [2024年07月05日]
  参考情報:JVN (JVNVU#98894016) を追加
  参考情報:ICS-CERT ADVISORY (ICSA-24-184-03) を追加
2024年7月5日12:02
8 [2024年07月03日]
ベンダ情報:三菱電機 (GENESIS64およびMC Works64における複数の脆弱性) を追加
ベンダ情報:三菱電機 (三菱電機株式会社 の告知ページ) を追加
2024年7月3日14:23
7 [2024年05月20日]
  参考情報:JVN (JVNVU#90955260) を追加
  参考情報:ICS-CERT ADVISORY (ICSA-24-137-07) を追加
2024年5月20日13:54
6 [2024年05月14日]
  CVSS による深刻度:内容を更新
  CWE による脆弱性タイプ一覧:内容を更新
2024年5月14日17:40
5 [2024年04月15日]
  参考情報:JVN (JVNVU#99836374) を追加
  参考情報:ICS-CERT ADVISORY (ICSA-24-102-08) を追加
2024年4月15日13:36
4 [2024年03月13日]
  ベンダ情報:日立 (hitachi-sec-2024-113) を追加
2024年3月13日12:26
3 [2023年12月21日]
  参考情報:JVN (JVNVU#98271228) を追加
  参考情報:ICS-CERT ADVISORY (ICSA-23-348-10) を追加
2023年12月21日10:42
1 [2023年09月13日]
  掲載
2023年9月13日13:53
2 [2023年09月21日]
  対策:内容を更新
  ベンダ情報:参考情報 (JVNVU#96140980) の更新に伴い内容を更新
2023年9月21日15:09
12 [2024年11月18日]
  参考情報:JVN (JVNVU#96191615) を追加
  参考情報:ICS-CERT ADVISORY (ICSA-24-319-04) を追加
  参考情報:ICS-CERT ADVISORY (ICSA-24-319-08) を追加
2024年11月18日16:00
13 [2025年04月14日]
  参考情報:JVN (JJVNVU#90506697) を追加
  参考情報:ICS-CERT ADVISORY (ICSA-25-100-02) を追加
2025年4月14日13:44