CVE-2026-31599
N/A
Summary
In the Linux kernel, the following vulnerability has been resolved:
media: vidtv: fix NULL pointer dereference in vidtv_channel_pmt_match_sections
syzbot reported a general protection fault in vidtv_psi_desc_assign [1].
vidtv_psi_pmt_stream_init() can return NULL on memory allocation failure, but vidtv_channel_pmt_match_sections() does not check for this. When tail is NULL, the subsequent call to vidtv_psi_desc_assign(&tail->descriptor, desc) dereferences a NULL pointer offset, causing a general protection fault.
Add a NULL check after vidtv_psi_pmt_stream_init(). On failure, clean up the already-allocated stream chain and return.
[1] Oops: general protection fault, probably for non-canonical address 0xdffffc0000000000: 0000 [#1] SMP KASAN PTI KASAN: null-ptr-deref in range [0x0000000000000000-0x0000000000000007] RIP: 0010:vidtv_psi_desc_assign+0x24/0x90 drivers/media/test-drivers/vidtv/vidtv_psi.c:629 Call Trace: <TASK> vidtv_channel_pmt_match_sections drivers/media/test-drivers/vidtv/vidtv_channel.c:349 [inline] vidtv_channel_si_init+0x1445/0x1a50 drivers/media/test-drivers/vidtv/vidtv_channel.c:479 vidtv_mux_init+0x526/0xbe0 drivers/media/test-drivers/vidtv/vidtv_mux.c:519 vidtv_start_streaming drivers/media/test-drivers/vidtv/vidtv_bridge.c:194 [inline] vidtv_start_feed+0x33e/0x4d0 drivers/media/test-drivers/vidtv/vidtv_bridge.c:239
Affected Software
| Vendor | Product | Version Range | Status |
|---|---|---|---|
| Linux | Linux | f90cf6079bf67988f8b1ad1ade70fc89d0080905 < 54e18a23e62e81b8335cec3e8e9c5cb33fd88665 | affected |
| Linux | Linux | f90cf6079bf67988f8b1ad1ade70fc89d0080905 < 5c986b77200b5ea754ba6636deacc7e0942fec9b | affected |
| Linux | Linux | f90cf6079bf67988f8b1ad1ade70fc89d0080905 < 93d9e747a9e8a5ca9e3c5e37dcff76b40399139f | affected |
| Linux | Linux | f90cf6079bf67988f8b1ad1ade70fc89d0080905 < b7efb4c94797c504a1c678edb48c2aa311d3309f | affected |
| Linux | Linux | f90cf6079bf67988f8b1ad1ade70fc89d0080905 < e589de36da106ef739ba98f66f5a5c2023370706 | affected |
| Linux | Linux | f90cf6079bf67988f8b1ad1ade70fc89d0080905 < 2dff11fb5098ae453651f8f77e94ad499c078022 | affected |
| Linux | Linux | f90cf6079bf67988f8b1ad1ade70fc89d0080905 < b832cfd516b8504e95884622cee60bf9a39b7945 | affected |
| Linux | Linux | f90cf6079bf67988f8b1ad1ade70fc89d0080905 < 07c1e474cf9acf777f09d14a8f8dfcef5b84e46f | affected |
| Linux | Linux | f90cf6079bf67988f8b1ad1ade70fc89d0080905 < f8e1fc918a9fe67103bcda01d20d745f264d00a7 | affected |
| Linux | Linux | 5.10 | affected |
| Linux | Linux | 0 < 5.10 | unaffected |
| Linux | Linux | 5.10.258 <= 5.10.* | unaffected |
| Linux | Linux | 5.15.209 <= 5.15.* | unaffected |
| Linux | Linux | 6.1.175 <= 6.1.* | unaffected |
| Linux | Linux | 6.6.136 <= 6.6.* | unaffected |
| Linux | Linux | 6.12.83 <= 6.12.* | unaffected |
| Linux | Linux | 6.18.24 <= 6.18.* | unaffected |
| Linux | Linux | 6.19.14 <= 6.19.* | unaffected |
| Linux | Linux | 7.0.1 <= 7.0.* | unaffected |
| Linux | Linux | 7.1 <= * | unaffected |
Weaknesses
References
- https://git.kernel.org/stable/c/54e18a23e62e81b8335cec3e8e9c5cb33fd88665
- https://git.kernel.org/stable/c/5c986b77200b5ea754ba6636deacc7e0942fec9b
- https://git.kernel.org/stable/c/93d9e747a9e8a5ca9e3c5e37dcff76b40399139f
- https://git.kernel.org/stable/c/b7efb4c94797c504a1c678edb48c2aa311d3309f
- https://git.kernel.org/stable/c/e589de36da106ef739ba98f66f5a5c2023370706
- https://git.kernel.org/stable/c/2dff11fb5098ae453651f8f77e94ad499c078022
- https://git.kernel.org/stable/c/b832cfd516b8504e95884622cee60bf9a39b7945
- https://git.kernel.org/stable/c/07c1e474cf9acf777f09d14a8f8dfcef5b84e46f
- https://git.kernel.org/stable/c/f8e1fc918a9fe67103bcda01d20d745f264d00a7
Feedback
Was this page helpful?
Glad to hear it! Please tell us how we can improve.
Sorry to hear that. Please tell us how we can improve.