Description (CNA)
In the Linux kernel, the following vulnerability has been resolved: bpf: Mark sched_process_wait argument as nullable do_wait() passes wo->wo_pid to the sched_process_wait tracepoint. kernel_wait4() leaves wo_pid NULL for wait4(-1), and kernel_waitid_prepare() does likewise for waitid(P_ALL). btf_ctx_access() currently types argument 0 as PTR_TO_BTF_ID | PTR_TRUSTED. Without PTR_MAYBE_NULL, the verifier accepts an unchecked dereference. Trusted pointer loads have no fault protection, so a wait for any child can then cause a NULL pointer dereference in JITed BPF code. Add sched_process_wait to raw_tp_null_args[] with argument 0 marked nullable. The verifier rejects an unchecked dereference while preserving access after the program checks the pointer for NULL.
Affected (CNA)
| Vendor / product | Versions |
|---|---|
| Linux / Linux | affected b2fc4b17fc13810ef440fb323fad3981cd174985 before bee862c79cb7e0e5c33b2df2e3a31d164705120d; affected 838a10bd2ebfe11a60dd67687533a7cfc220cc86 before 3c03a1b8ded858685a73c1ba4080adef99db4544; affected 838a10bd2ebfe11a60dd67687533a7cfc220cc86 before b9205e936dde9a94e93376c8de6195b740bcd5d2; affected 838a10bd2ebfe11a60dd67687533a7cfc220cc86 before a453d6e3b8e8e1a321c8744d6189d763af9287d0; affected 6.12.6 before 6.12.111 |
| Linux / Linux | affected 6.13; unaffected 0 before 6.13; unaffected 6.12.111 through 6.12.*; unaffected 6.18.53 through 6.18.*; unaffected 7.2.7 through 7.2.*; unaffected 7.3 through * |
CWE
No CWE identifiers supplied.