製品・ソフトウェアに関する情報
LinuxのLinux Kernelにおける有効期限後のメモリの解放の欠如に関する脆弱性
Title LinuxのLinux Kernelにおける有効期限後のメモリの解放の欠如に関する脆弱性
Summary

Linuxカーネルにおいて、以下の脆弱性が修正されました。tls_decrypt_async_wait()内のasync_holdのパージに関する問題です。async_holdキューは、AEADエンジンが散乱リストデータを参照している間、暗号化された入力skbを保持します。tls_decrypt_async_wait()が戻ると、すべてのAEAD操作が完了し、エンジンはもはやそれらのskbを参照しないため、無条件に解放できます。後続のパッチでtls_sw_read_sock()にバッチ非同期復号が追加され、新たに保留中のAEAD操作を排水し、保持されているskbを解放する必要がある呼び出し箇所が導入されました。__skb_queue_purge(&ctx-async_hold)をtls_decrypt_async_wait()に移動し、パージ処理を集中管理することで、すべての呼び出し元(recvmsgの排水パス、tls_do_decryption()の-EBUSYフォールバック、および新しいread_sockバッチパス)が同期時にそれぞれパージを管理することなく保持されたskbを解放できるようになりました。これにより、tls_strp_msg_hold()が一部の処理途中で失敗し、複製されたskbがasync_holdキューに追加された後に発生していたリークを修正しました。tls_decrypt_sg()はすべての保留中復号を処理するためにtls_decrypt_async_wait()を呼び出し、その後同期モードに戻りますが、tls_sw_recvmsg()は「完全非同期」モードで1つのレコードが処理されたときにのみasync_holdキューをフラッシュするため、ここではその動作が適用されていませんでした。[pabeni@redhat.com: リークに関するコメント追加]。

Possible impacts 当該ソフトウェアが扱う情報について、外部への漏えいは発生しません。 また、当該ソフトウェアが扱う情報について、書き換えは発生しません。 さらに、当該ソフトウェアが完全に停止する可能性があります。 そして、この脆弱性を悪用した攻撃の影響は、他のソフトウェアには及びません。 
Solution

リリース情報、またはパッチ情報が公開されています。参考情報を参照して適切な対策を実施してください。

Publication Date April 2, 2026, midnight
Registration Date April 27, 2026, 10:52 a.m.
Last Update April 27, 2026, 10:52 a.m.
CVSS3.0 : 警告
Score 5.5
Vector CVSS:3.0/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H
Affected System
Linux
Linux Kernel 6.1.158 以上 6.1.168 未満
Linux Kernel 6.12.55 以上 6.12.80 未満
Linux Kernel 6.17.5 以上 6.18 未満
Linux Kernel 6.18
Linux Kernel 6.18.1 以上 6.18.21 未満
Linux Kernel 6.19 以上 6.19.11 未満
Linux Kernel 6.6.114 以上 6.6.131 未満
Linux Kernel 7.0
CVE (情報セキュリティ 共通脆弱性識別子)
CWE (共通脆弱性タイプ一覧)
その他
Change Log
No Changed Details Date of change
1 [2026年04月27日]
  掲載
April 27, 2026, 10:52 a.m.

NVD Vulnerability Information
CVE-2026-23414
Summary

In the Linux kernel, the following vulnerability has been resolved:

tls: Purge async_hold in tls_decrypt_async_wait()

The async_hold queue pins encrypted input skbs while
the AEAD engine references their scatterlist data. Once
tls_decrypt_async_wait() returns, every AEAD operation
has completed and the engine no longer references those
skbs, so they can be freed unconditionally.

A subsequent patch adds batch async decryption to
tls_sw_read_sock(), introducing a new call site that
must drain pending AEAD operations and release held
skbs. Move __skb_queue_purge(&ctx->async_hold) into
tls_decrypt_async_wait() so the purge is centralized
and every caller -- recvmsg's drain path, the -EBUSY
fallback in tls_do_decryption(), and the new read_sock
batch path -- releases held skbs on synchronization
without each site managing the purge independently.

This fixes a leak when tls_strp_msg_hold() fails part-way through,
after having added some cloned skbs to the async_hold
queue. tls_decrypt_sg() will then call tls_decrypt_async_wait() to
process all pending decrypts, and drop back to synchronous mode, but
tls_sw_recvmsg() only flushes the async_hold queue when one record has
been processed in "fully-async" mode, which may not be the case here.

[pabeni@redhat.com: added leak comment]

Publication Date April 2, 2026, 9:16 p.m.
Registration Date April 15, 2026, 11:23 a.m.
Last Update April 25, 2026, 12:22 a.m.
Affected software configurations
Configuration1 or higher or less more than less than
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* 6.1.158 6.1.168
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* 6.6.114 6.6.131
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* 6.12.55 6.12.80
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* 6.17.5 6.18
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* 6.18.1 6.18.21
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* 6.19 6.19.11
cpe:2.3:o:linux:linux_kernel:6.18:-:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:7.0:rc1:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:7.0:rc2:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:7.0:rc3:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:7.0:rc4:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:7.0:rc5:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:7.0:rc6:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:7.0:rc7:*:*:*:*:*:*
Related information, measures and tools
Common Vulnerabilities List