CVE-2026-46011
概要

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

media: mtk-jpeg: fix use-after-free in release path due to uncancelled work

The mtk_jpeg_release() function frees the context structure (ctx) without
first cancelling any pending or running work in ctx->jpeg_work. This
creates a race window where the workqueue callback may still be accessing
the context memory after it has been freed.

Race condition:

CPU 0 (release) CPU 1 (workqueue)
---------------- ------------------
close()
mtk_jpeg_release()
mtk_jpegenc_worker()
ctx = work->data
// accessing ctx

kfree(ctx) // freed!
access ctx // UAF!

The work is queued via queue_work() during JPEG encode/decode operations
(via mtk_jpeg_device_run). If the device is closed while work is pending
or running, the work handler will access freed memory.

Fix this by calling cancel_work_sync() BEFORE acquiring the mutex. This
ordering is critical: if cancel_work_sync() is called after mutex_lock(),
and the work handler also tries to acquire the same mutex, it would cause
a deadlock.

Note: The open error path does NOT need cancel_work_sync() because
INIT_WORK() only initializes the work structure - it does not schedule
it. Work is only scheduled later during ioctl operations.

公表日 2026年5月27日23:17
登録日 2026年5月28日4:12
最終更新日 2026年5月30日20:17
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)
関連情報、対策とツール
共通脆弱性一覧

JVN脆弱性情報
LinuxのLinux Kernelにおける解放済みメモリの使用に関する脆弱性
タイトル LinuxのLinux Kernelにおける解放済みメモリの使用に関する脆弱性
概要

Linuxカーネルのmedia: mtk-jpegドライバにおいて、mtk_jpeg_release()関数が取り消されていない作業による解放パスのuse-after-freeの脆弱性を修正しました。この関数はctx-jpeg_work内の未完了の作業をキャンセルせずにctx構造体を解放していたため、作業キューのコールバックが解放後のメモリにアクセスし、競合状態が発生する可能性がありました。問題の原因は、作業ワーカーがctxを参照している間にkfree(ctx)が呼ばれることでuse-after-freeが生じる点です。この脆弱性は、mtk_jpeg_release()内でmutex_lock()を取得する前にcancel_work_sync()を呼び出して作業をキャンセルすることで修正されました。この修正により、解放前に保留中の作業が適切にキャンセルされ、解放後の不正アクセスを防止します。なお、cancel_work_sync()の呼び出し順序は重要で、mutex_lock()の前に呼ぶ必要があります。なぜなら、逆の場合にデッドロックが発生する可能性があるためです。

想定される影響 ・当該ソフトウェアが扱う全ての情報が外部に漏れる可能性があります。 ・当該ソフトウェアが扱う全ての情報が書き換えられる可能性があります。 ・当該ソフトウェアが完全に停止する可能性があります。 
対策

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

公表日 2026年5月27日0:00
登録日 2026年6月17日15:42
最終更新日 2026年6月17日15:42
影響を受けるシステム
Linux
Linux Kernel 6.13 以上 6.18.27 未満
Linux Kernel 6.19 以上 7.0.4 未満
Linux Kernel 6.2 以上 6.6.140 未満
Linux Kernel 6.7 以上 6.12.86 未満
CVE (情報セキュリティ 共通脆弱性識別子)
CWE (共通脆弱性タイプ一覧)
その他
変更履歴
No 変更内容 変更日
1 [2026年06月17日]
  掲載
2026年6月17日15:42