Goal Reached Thanks to every supporter — we hit 100%!

Goal: 1000 CNY · Raised: 1000 CNY

100.0%

CVE-2025-38557— HID: apple: validate feature-report field count to prevent NULL pointer dereference

EPSS 0.03% · P7
Get alerts for future matching vulnerabilitiesLog in to subscribe

I. Basic Information for CVE-2025-38557

Vulnerability Information

Have questions about the vulnerability? See if Shenlong's analysis helps!
View Shenlong Deep Dive ↗

Although we use advanced large model technology, its output may still contain inaccurate or outdated information.Shenlong tries to ensure data accuracy, but please verify and judge based on the actual situation.

Vulnerability Title
HID: apple: validate feature-report field count to prevent NULL pointer dereference
Source: NVD (National Vulnerability Database)
Vulnerability Description
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.
Source: NVD (National Vulnerability Database)
CVSS Information
N/A
Source: NVD (National Vulnerability Database)
Vulnerability Type
N/A
Source: NVD (National Vulnerability Database)
Vulnerability Title
Linux kernel 安全漏洞
Source: CNNVD (China National Vulnerability Database)
Vulnerability Description
Linux kernel是美国Linux基金会的开源操作系统Linux所使用的内核。 Linux kernel存在安全漏洞,该漏洞源于未验证feature-report字段数量,可能导致空指针取消引用。
Source: CNNVD (China National Vulnerability Database)
CVSS Information
N/A
Source: CNNVD (China National Vulnerability Database)
Vulnerability Type
N/A
Source: CNNVD (China National Vulnerability Database)

Affected Products

VendorProductAffected VersionsCPESubscribe
LinuxLinux 394ba612f9419ec5bfebbffb72212fd3b2094986 ~ ba08cc6801ec5fb98f2d02b5f0c614c931845325 -
LinuxLinux 6.11 -

II. Public POCs for CVE-2025-38557

#POC DescriptionSource LinkShenlong Link
AI-Generated POCPremium

No public POC found.

Login to generate AI POC

III. Intelligence Information for CVE-2025-38557

登录查看更多情报信息。

Same Patch Batch · Linux · 2025-08-19 · 60 CVEs total

CVE-2025-38594iommu/vt-d: Fix UAF on sva unbind with pending IOPFs
CVE-2025-38614eventpoll: Fix semi-unbounded recursion
CVE-2025-38610powercap: dtpm_cpu: Fix NULL pointer dereference in get_pd_power_uw()
CVE-2025-38609PM / devfreq: Check governor before using governor->name
CVE-2025-38608bpf, ktls: Fix data corruption when using bpf_msg_pop_data() in ktls
CVE-2025-38612staging: fbtft: fix potential memory leak in fbtft_framebuffer_alloc()
CVE-2025-38598drm/amdgpu: fix use-after-free in amdgpu_userq_suspend+0x51a/0x5a0
CVE-2025-38597drm/rockchip: vop2: fail cleanly if missing a primary plane for a video-port
CVE-2025-38595xen: fix UAF in dmabuf_exp_from_pages()
CVE-2025-38596drm/panthor: Fix UAF in panthor_gem_create_with_handle() debugfs code
CVE-2025-38599wifi: mt76: mt7996: Fix possible OOB access in mt7996_tx()
CVE-2025-38593Bluetooth: hci_sync: fix double free in 'hci_discovery_filter_clear()'
CVE-2025-38592Bluetooth: hci_devcd_dump: fix out-of-bounds via dev_coredumpv
CVE-2025-38591bpf: Reject narrower access to pointer ctx fields
CVE-2025-38590net/mlx5e: Remove skb secpath if xfrm state is not found
CVE-2025-38589neighbour: Fix null-ptr-deref in neigh_flush_dev().
CVE-2025-38588ipv6: prevent infinite loop in rt6_nlmsg_size()
CVE-2025-38587ipv6: fix possible infinite loop in fib6_info_uses_dev()
CVE-2025-38586bpf, arm64: Fix fp initialization for exception boundary
CVE-2025-38585staging: media: atomisp: Fix stack buffer overflow in gmin_get_var_int()

Showing top 20 of 60 CVEs. View all on vendor page &rarr; →

IV. Related Vulnerabilities

V. Comments for CVE-2025-38557

No comments yet


Leave a comment