CVE-2022-49478·Kernel vulnerability
In the Linux kernel, the following vulnerability has been resolved: media: pvrusb2: fix array-index-out-of-bounds in pvr2_i2c_core_init Syzbot reported that -1 is used as array index. The problem was in missing validation check. hdw->unit_number is initialized with -1 and then if init table walk fails this value remains unchanged. Since code blindly uses this member for array indexing adding sanity check is the easiest fix for that. hdw->workpoll initialization moved upper to prevent warning in __flush_work.
- Severity
- high
- Software
- Kernel
- Fixed in
- 5.18.3
- Published
How likely is exploitation
FIRST's Exploit Prediction Scoring System puts the probability of this CVE being exploited in the next 30 days at <0.1% — higher than 8% of all published CVEs. EPSS is an independent forecast of exploitation, not a severity rating: it says nothing about how much damage a successful attack does, which is what a CVSS score measures.
Read the two together. CVE-2022-49478 scores 7.8 on CVSS, so a successful attack would be serious — but at <0.1%, almost nobody is currently attempting it. That is a different situation from a flaw under mass exploitation, and it is usually the difference between patching on your next maintenance window and patching tonight.
Affected versions
From: 5.18
Until: 5.18.3
Fixed in: 5.18.3
How to fix this CVE
Update your Linux kernel to version 5.18.3 or later to patch an array indexing vulnerability in the pvrusb2 media driver. This vulnerability allows local attackers with limited privileges to trigger memory corruption through improper validation of the device unit number during initialization. Ensure your kernel and all related packages are updated immediately.
sudo dnf update kernel kernel-develDefensia detects this vulnerability
How to check if you are affected
- Run 'uname -r' to check your current kernel version; if it is between 5.18 and 5.18.2, your system is vulnerable
- Check if the pvrusb2 module is loaded with 'lsmod | grep pvrusb2'; if present, the vulnerable component is active on your system
- Search kernel logs for initialization errors with 'dmesg | grep -i pvr' or 'journalctl -k | grep -i pvr' to identify failed device initialization attempts
- After applying the patch, verify the new kernel is running with 'uname -r' and confirm it shows version 5.18.3 or higher
FAQ
What is CVE-2022-49478?
CVE-2022-49478 is a kernel vulnerability in the pvrusb2 media driver where an uninitialized unit number (-1) is used as an array index without validation, allowing local privilege holders to cause memory corruption and potential system compromise.
Is CVE-2022-49478 being actively exploited?
No, there are currently no known active exploits or public exploit code available for CVE-2022-49478, and it is not listed on the CISA Known Exploited Vulnerabilities catalog.
What versions of Kernel are affected by CVE-2022-49478?
Linux kernel versions 5.18 through 5.18.2 are affected; the vulnerability was patched in version 5.18.3 and later releases.
How do I check if my server is vulnerable to CVE-2022-49478?
Run 'uname -r' to display your kernel version; if the output shows 5.18 through 5.18.2, your system is vulnerable and requires immediate patching.
Does Defensia detect CVE-2022-49478?
Yes — Defensia's CVE advisory scanner compares installed package versions against the NVD database. If Kernel is installed on a monitored server, CVE-2022-49478 will appear in your dashboard with remediation steps.
Related Kernel CVEs
References
- https://git.kernel.org/stable/c/1310fc3538dcc375a2f46ef0a438512c2ca32827
- https://git.kernel.org/stable/c/24e807541e4a9263ed928e6ae3498de3ad43bd1e
- https://git.kernel.org/stable/c/2e004fe914b243db41fa96f9e583385f360ea58e
- https://git.kernel.org/stable/c/3309c2c574e13b21b44729f5bdbf21f60189b79a
- https://git.kernel.org/stable/c/4351bfe36aba9fa7dc9d68d498d25d41a0f45e67
Track CVEs across your fleet automatically
Defensia scans your Linux servers and tells you exactly which ones are running vulnerable versions — including CVE-2022-49478. Free for 1 server.
Get started free