In the Linux kernel, the following vulnerability has been resolved:
HID: apple: validate feature-report field count to prevent NULL pointer dereference
A malicious HID device with quirk APPLE_MAGIC_BACKLIGHT can trigger a NULL pointer dereference whilst the power feature-report is toggled and sent to the device in apple_magic_backlight_report_set(). The power feature-report is expected to have two data fields, but if the descriptor declares one field then accessing field[1] and dereferencing it in apple_magic_backlight_report_set() becomes invalid since field[1] will be NULL.
An example of a minimal descriptor which can cause the crash is something like the following where the report with ID 3 (power report) only references a single 1-byte field. When hid core parses the descriptor it will encounter the final feature tag, allocate a hid_report (all members of field[] will be zeroed out), create field structure and populate it, increasing the maxfield to 1. The subsequent field[1] access and dereference causes the crash.
Usage Page (Vendor Defined 0xFF00) Usage (0x0F) Collection (Application) Report ID (1) Usage (0x01) Logical Minimum (0) Logical Maximum (255) Report Size (8) Report Count (1) Feature (Data,Var,Abs)
Usage (0x02) Logical Maximum (32767) Report Size (16) Report Count (1) Feature (Data,Var,Abs)
Report ID (3) Usage (0x03) Logical Minimum (0) Logical Maximum (1) Report Size (8) Report Count (1) Feature (Data,Var,Abs) End Collection
Here we see the KASAN splat when the kernel dereferences the NULL pointer and crashes:
[ 15.164723] Oops: general protection fault, probably for non-canonical address 0xdffffc0000000006: 0000 [#1] SMP KASAN NOPTI [ 15.165691] KASAN: null-ptr-deref in range [0x0000000000000030-0x0000000000000037] [ 15.165691] CPU: 0 UID: 0 PID: 10 Comm: kworker/0:1 Not tainted 6.15.0 #31 PREEMPT(voluntary) [ 15.165691] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS 1.16.2-debian-1.16.2-1 04/01/2014 [ 15.165691] RIP: 0010:apple_magic_backlight_report_set+0xbf/0x210 [ 15.165691] Call Trace: [ 15.165691] <TASK> [ 15.165691] apple_probe+0x571/0xa20 [ 15.165691] hid_device_probe+0x2e2/0x6f0 [ 15.165691] really_probe+0x1ca/0x5c0 [ 15.165691] __driver_probe_device+0x24f/0x310 [ 15.165691] driver_probe_device+0x4a/0xd0 [ 15.165691] __device_attach_driver+0x169/0x220 [ 15.165691] bus_for_each_drv+0x118/0x1b0 [ 15.165691] __device_attach+0x1d5/0x380 [ 15.165691] device_initial_probe+0x12/0x20 [ 15.165691] bus_probe_device+0x13d/0x180 [ 15.165691] device_add+0xd87/0x1510 [...]
To fix this issue we should validate the number of fields that the backlight and power reports have and if they do not have the required number of fields then bail.
CVSS Details
- CVSS 3.1 Base Score: 5.5
- CVSS 3.1 Vector: (CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H)
Covered by Rapid7
| Product | Vendor Advisory | Solution File | Added | Published |
|---|---|---|---|---|
| Debian | — | Upgrade linux | Jul 23, 2026 | Jul 23, 2026 |
| Oracle_linux | — | Upgrade kernel-uek | Oct 16, 2025 | Aug 19, 2025 |
| Redhat_linux | — | No solution exists | Jul 17, 2026 | Aug 19, 2025 |
| Suse | — | Upgrade kernel-macrosUpgrade kernel-obs-buildUpgrade kernel-kvmsmall-develUpgrade dtb-lgUpgrade dtb-marvellUpgrade kernel-64kbUpgrade dlm-kmp-64kbUpgrade dtb-freescaleUpgrade kernel-kvmsmallUpgrade kernel-rtUpgrade dtb-qcomUpgrade kernel-rt-optionalUpgrade kernel-obs-qaUpgrade kernel-sourceUpgrade ocfs2-kmp-64kbUpgrade kernel-rt-livepatch-develUpgrade kernel-kvmsmall-vdsoUpgrade cluster-md-kmp-defaultUpgrade ocfs2-kmp-rtUpgrade kernel-default-extraUpgrade dtb-rockchipUpgrade dtb-broadcomUpgrade dtb-amlogicUpgrade kernel-docs-htmlUpgrade kernel-rt-extraUpgrade kernel-zfcpdumpUpgrade kselftests-kmp-defaultUpgrade gfs2-kmp-rtUpgrade kselftests-kmp-64kbUpgrade dtb-apmUpgrade kernel-default-develUpgrade gfs2-kmp-64kbUpgrade dtb-amazonUpgrade dtb-exynosUpgrade kernel-rt-vdsoUpgrade dtb-armUpgrade kernel-default-vdsoUpgrade kernel-defaultUpgrade kernel-default-livepatch-develUpgrade kernel-default-optionalUpgrade dtb-hisiliconUpgrade dtb-xilinxUpgrade dtb-alteraUpgrade dtb-allwinnerUpgrade kernel-default-livepatchUpgrade dtb-sprdUpgrade dtb-caviumUpgrade kselftests-kmp-rtUpgrade cluster-md-kmp-rtUpgrade kernel-docsUpgrade kernel-develUpgrade kernel-64kb-extraUpgrade dtb-mediatekUpgrade dlm-kmp-rtUpgrade kernel-64kb-optionalUpgrade kernel-64kb-develUpgrade ocfs2-kmp-defaultUpgrade kernel-source-vanillaUpgrade dtb-socionextUpgrade dtb-renesasUpgrade dtb-nvidiaUpgrade dtb-appleUpgrade dtb-amdUpgrade dlm-kmp-defaultUpgrade cluster-md-kmp-64kbUpgrade kernel-rt-develUpgrade kernel-symsUpgrade kernel-rt-livepatchUpgrade gfs2-kmp-default | Dec 5, 2025 | Nov 6, 2025 |
| Ubuntu | — | Upgrade linux-image-raspiUpgrade linux-image-6.14.0-1018-raspiUpgrade linux-image-generic-64k-hwe-24.04Upgrade linux-image-6.14.0-36-genericUpgrade linux-image-generic-6.14Upgrade linux-image-oracle-6.14Upgrade linux-image-generic-64k-6.14Upgrade linux-image-awsUpgrade linux-image-aws-64kUpgrade linux-image-6.14.0-1017-azureUpgrade linux-image-6.14.0-1017-awsUpgrade linux-image-azure-6.14Upgrade linux-image-oem-24.04Upgrade linux-image-6.14.0-1020-gcpUpgrade linux-image-aws-6.14Upgrade linux-image-gcp-64kUpgrade linux-image-realtime-6.14Upgrade linux-image-realtimeUpgrade linux-image-6.14.0-1020-gcp-64kUpgrade linux-image-6.14.0-1016-realtimeUpgrade linux-image-oracleUpgrade linux-image-gcp-6.14Upgrade linux-image-aws-64k-6.14Upgrade linux-image-gcp-64k-6.14Upgrade linux-image-generic-64kUpgrade linux-image-virtual-hwe-24.04Upgrade linux-image-6.14.0-1017-oracleUpgrade linux-image-oracle-64kUpgrade linux-image-6.14.0-1017-aws-64kUpgrade linux-image-oem-6.14Upgrade linux-image-genericUpgrade linux-image-6.14.0-1017-oracle-64kUpgrade linux-image-generic-hwe-24.04Upgrade linux-image-realtime-hwe-24.04Upgrade linux-image-virtualUpgrade linux-image-azureUpgrade linux-image-raspi-6.14Upgrade linux-image-6.14.0-1016-oemUpgrade linux-image-oem-24.04aUpgrade linux-image-virtual-6.14Upgrade linux-image-6.14.0-36-generic-64kUpgrade linux-image-oracle-64k-6.14Upgrade linux-image-gcp | Nov 25, 2025 | Nov 21, 2025 |
Prioritise with Active Threat Intelligence
With curated Threat Intelligence, you can see which vulnerabilities truly put you at risk, prioritize what matters most, and act before attackers do.
Explore Intelligence Hub