| タイトル | Debian等の複数ベンダの製品における解放済みメモリの使用に関する脆弱性 |
|---|---|
| 概要 | Linuxカーネルにおいて、以下の脆弱性が修正されました。tcp: tcp_twsk_unique()内でrefcount_inc_not_zero()を使用します。Anderson Nascimentoは、tcp_twsk_unique()におけるUse-after-freeの脆弱性を詳細な解析とともに報告しました。コミットec94c2696f0b("tcp/dccp: timewaitハッシュダンスのための1回のアトミック操作を回避")以降、inet_twsk_hashdance()はTIME-WAITソケットをehashに入れ、バケットロックを解放した後にsk_refcntを設定しています。したがって、connect()中に他のスレッドがポートの再利用を試み、refcntが0のTIME-WAITソケットに対してtcp_twsk_unique()内でsock_hold()を呼び出す可能性がある小さな競合状態があります。もしそれが発生すると、tcp_twsk_unique()で取得したrefcntが上書きされ、sock_put()がアンダーフローを引き起こし、他の場所で実際のUse-after-freeを誘発します。Use-after-freeを避けるために、tcp_twsk_unique()内でrefcount_inc_not_zero()を使用し、falseを返した場合はポートの再利用を諦める必要があります。[0]: refcount_t: 0への加算によるuse-after-freeが発生します。警告: CPU: 0 PID: 1039313 at lib/refcount.c:25 refcount_warn_saturate+0xe5/0x110 CPU: 0 PID: 1039313 コマンド: trigger このカーネルは未改造ではありません。バージョンは6.8.6-200.fc39.x86_64 #1です。ハードウェア名はVMware, Inc. VMware20,1/440BX Desktop Reference Platformで、BIOSはVMW201.00V.21805430.B64.2305221830(2023年5月22日)です。RIPは0010:refcount_warn_saturate+0xe5/0x110です。以下は省略し、詳細なコールトレース等があります。 |
| 想定される影響 | 当該ソフトウェアが扱う全ての情報が外部に漏れる可能性があります。 また、当該ソフトウェアが扱う全ての情報が書き換えられる可能性があります。 さらに、当該ソフトウェアが完全に停止する可能性があります。 そして、この脆弱性を悪用した攻撃の影響は、他のソフトウェアには及びません。 |
| 対策 | 正式な対策が公開されています。ベンダ情報を参照して適切な対策を実施してください。 |
| 公表日 | 2024年5月30日0:00 |
| 登録日 | 2026年1月27日17:38 |
| 最終更新日 | 2026年1月27日17:38 |
| CVSS3.0 : 重要 | |
| スコア | 7.8 |
|---|---|
| ベクター | CVSS:3.0/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H |
| Debian |
| Debian GNU/Linux 10.0 |
| Linux |
| Linux Kernel 4.16 以上 4.19.314 未満 |
| Linux Kernel 4.20 以上 5.4.276 未満 |
| Linux Kernel 5.11 以上 5.15.159 未満 |
| Linux Kernel 5.16 以上 6.1.91 未満 |
| Linux Kernel 5.5 以上 5.10.217 未満 |
| Linux Kernel 6.2 以上 6.6.31 未満 |
| Linux Kernel 6.7 以上 6.8.10 未満 |
| Linux Kernel 6.9 |
| No | 変更内容 | 変更日 |
|---|---|---|
| 1 | [2026年01月27日] 掲載 |
2026年1月27日17:38 |
| 概要 | In the Linux kernel, the following vulnerability has been resolved: tcp: Use refcount_inc_not_zero() in tcp_twsk_unique(). Anderson Nascimento reported a use-after-free splat in tcp_twsk_unique() Since commit ec94c2696f0b ("tcp/dccp: avoid one atomic operation for Thus, there is a small race window where other threads could try to If that happens, the refcnt taken by tcp_twsk_unique() is overwritten To avoid the use-after-free, we need to use refcount_inc_not_zero() in [0]: |
|---|---|
| 公表日 | 2024年5月31日1:15 |
| 登録日 | 2024年5月31日10:00 |
| 最終更新日 | 2024年11月21日18:22 |