【活用ガイド】

JVNDB-2025-025812

LinuxのLinux Kernelにおける有効期限後のメモリの解放の欠如に関する脆弱性

概要

Linuxカーネルにおいて、以下の脆弱性が修正されました。r6040のprobeおよびremoveにおけるkmemleakの問題を修正しました。kmemleakによって、参照されていないオブジェクト0xffff888116111000(サイズ2048)のメモリリークが報告されています。問題はprobeプロセスで発生しており、具体的にはr6040_init_one内でmdiobus_registerにてmdiobus_scanがphy_deviceの割り当てと登録を行い、その参照カウントが3になります。r6040_mii_probeではphy_connectが最初のphy_deviceに接続し、そのため最初のphy_deviceの参照カウントは4となり、他のphy_deviceの参照カウントは3のままです。register_netdevで障害が注入され、エラーハンドリングパスへ遷移します。エラーハンドリングパス内のmdiobus_free呼び出し時に、最初のphy_deviceの参照カウントが1のまま解放されず、他のphy_deviceは解放される問題がありました。removeプロセスも同様の問題を抱えています。根本原因はr6040_remove_one()やr6040_mii_probe成功後のエラーハンドリングパスでphy_deviceが切断されないことにあります。r6040_mii_probeでは、リンク状態変化を接続ドライバに通知するため、mii_busの最初のPHYデバイスにネットワークイーサネットデバイスが接続されています。これはPHYインフラの標準的な挙動です。したがって、r6040デバイスの削除時またはエラーハンドリングパスでphy_deviceは切断される必要があります。この問題を修正するために、r6040_mii_probe成功後のr6040デバイス削除時およびエラーハンドリングパスにphy_disconnect()を追加しました。
CVSS による深刻度 (CVSS とは?)

CVSS v3 による深刻度
基本値: 5.5 (警告) [NVD値]
  • 攻撃元区分: ローカル
  • 攻撃条件の複雑さ: 低
  • 攻撃に必要な特権レベル: 低
  • 利用者の関与: 不要
  • 影響の想定範囲: 変更なし
  • 機密性への影響(C): なし
  • 完全性への影響(I): なし
  • 可用性への影響(A): 高
影響を受けるシステム


Linux
  • Linux Kernel 2.6.36 以上 4.9.337 未満
  • Linux Kernel 4.10 以上 4.14.303 未満
  • Linux Kernel 4.15 以上 4.19.270 未満
  • Linux Kernel 4.20 以上 5.4.229 未満
  • Linux Kernel 5.11 以上 5.15.86 未満
  • Linux Kernel 5.16 以上 6.0.16 未満
  • Linux Kernel 5.5 以上 5.10.163 未満
  • Linux Kernel 6.1 以上 6.1.2 未満

想定される影響

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

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

CWEによる脆弱性タイプ一覧  CWEとは?

  1. 有効期限後のメモリの解放の欠如(CWE-401) [NVD評価]
共通脆弱性識別子(CVE)  CVEとは?

  1. CVE-2022-50545
参考情報

  1. National Vulnerability Database (NVD) : CVE-2022-50545
  2. 関連文書 : r6040: Fix kmemleak in probe and remove - kernel/git/stable/linux.git - Linux kernel stable tree (https://git.kernel.org/stable/c/b4448816e6a565e08236a6009c6bf48c6836cdfd)
  3. 関連文書 : r6040: Fix kmemleak in probe and remove - kernel/git/stable/linux.git - Linux kernel stable tree (https://git.kernel.org/stable/c/b0a61359026b57a287a48fbb4ba1d097023eca3e)
  4. 関連文書 : r6040: Fix kmemleak in probe and remove - kernel/git/stable/linux.git - Linux kernel stable tree (https://git.kernel.org/stable/c/3d5f83a62e8235d235534b3dc6f197d8a822c269)
  5. 関連文書 : r6040: Fix kmemleak in probe and remove - kernel/git/stable/linux.git - Linux kernel stable tree (https://git.kernel.org/stable/c/9b5b50329e2e966831a7237dd6949e7b5362a49a)
  6. 関連文書 : r6040: Fix kmemleak in probe and remove - kernel/git/stable/linux.git - Linux kernel stable tree (https://git.kernel.org/stable/c/5944c25c67de54e0aa53623e1e1af3bf8b16ed44)
  7. 関連文書 : r6040: Fix kmemleak in probe and remove - kernel/git/stable/linux.git - Linux kernel stable tree (https://git.kernel.org/stable/c/7e43039a49c2da45edc1d9d7c9ede4003ab45a5f)
  8. 関連文書 : r6040: Fix kmemleak in probe and remove - kernel/git/stable/linux.git - Linux kernel stable tree (https://git.kernel.org/stable/c/2ce242e1b9ad31c1f68496b3548e407a8cb2c07d)
  9. 関連文書 : r6040: Fix kmemleak in probe and remove - kernel/git/stable/linux.git - Linux kernel stable tree (https://git.kernel.org/stable/c/a04707f4596952049da05756c27398c34d9a1d36)
  10. 関連文書 : r6040: Fix kmemleak in probe and remove - kernel/git/stable/linux.git - Linux kernel stable tree (https://git.kernel.org/stable/c/ad2c8f25457ca9a81e7e958148cbc26600ce3071)
更新履歴

  • [2026年02月06日]
      掲載