LinuxのLinux Kernelにおける無限ループに関する脆弱性
タイトル LinuxのLinux Kernelにおける無限ループに関する脆弱性
概要

Linuxカーネルにおいて、serial: core: PORT_UNKNOWNのhandle_tx()で発生する無限ループの脆弱性が修正されました。uart_write_room()はxmit_bufがNULLであってもkfifo_avail()を返し、0より大きいことがありましたが、uart_write()はxmit_bufがNULLの場合0を返していました。この不一致により、tty_write_room()を使用するドライバで無限ループが発生しました。例えば、caif_serialのhandle_tx()はPORT_UNKNOWNシリアルポートで無限ループに陥り、システムがハングしました。修正として、uart_write_room()もxmit_bufがNULLの場合0を返すようにし、動作を一致させました。

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

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

公表日 2026年4月3日0:00
登録日 2026年5月28日14:43
最終更新日 2026年5月28日14:43
CVSS3.0 : 警告
スコア 5.5
ベクター CVSS:3.0/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H
影響を受けるシステム
Linux
Linux Kernel 2.6.12
Linux Kernel 2.6.12.1 以上 6.18.20 未満
Linux Kernel 6.19 以上 6.19.10 未満
Linux Kernel 7.0
CVE (情報セキュリティ 共通脆弱性識別子)
CWE (共通脆弱性タイプ一覧)
その他
変更履歴
No 変更内容 変更日
1 [2026年05月28日]
  掲載
2026年5月28日14:43

NVD脆弱性情報
CVE-2026-23472
概要

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

serial: core: fix infinite loop in handle_tx() for PORT_UNKNOWN

uart_write_room() and uart_write() behave inconsistently when
xmit_buf is NULL (which happens for PORT_UNKNOWN ports that were
never properly initialized):

- uart_write_room() returns kfifo_avail() which can be > 0
- uart_write() checks xmit_buf and returns 0 if NULL

This inconsistency causes an infinite loop in drivers that rely on
tty_write_room() to determine if they can write:

while (tty_write_room(tty) > 0) {
written = tty->ops->write(...);
// written is always 0, loop never exits
}

For example, caif_serial's handle_tx() enters an infinite loop when
used with PORT_UNKNOWN serial ports, causing system hangs.

Fix by making uart_write_room() also check xmit_buf and return 0 if
it's NULL, consistent with uart_write().

Reproducer: https://gist.github.com/mrpre/d9a694cc0e19828ee3bc3b37983fde13

公表日 2026年4月4日1:16
登録日 2026年4月15日11:24
最終更新日 2026年4月7日22:20
関連情報、対策とツール
共通脆弱性一覧