tracing: Avoid NULL return from hist_field_name() on truncation
- Published
- Last modified
- Where the record stands: published, rejected by its publisher, or superseded by another id.What do these mean? →
- published
- Whether CISA lists it in its Known Exploited Vulnerabilities catalog: proof that attackers are using it.What do these mean? →
- Not listed in CISA KEV
- Fix
- Fixed in 6.6.142, 6.12.92, 6.18.34, 7.0.11
- Whether working attack code is public (Exploit-DB, Metasploit, Nuclei or GitHub). Public code makes attacks easier.What do these mean? →
- None on Exploit-DB, Metasploit or GitHub
Summary
In the Linux kernel, the following vulnerability has been resolved: tracing: Avoid NULL return from hist_field_name() on truncation hist_field_name() returns "" everywhere except the fully-qualified VAR_REF/EXPR case, where snprintf() truncation returns NULL early and bypasses the bottom NULL->"" guard. Callers don't expect NULL: strcat(expr, hist_field_name(field, 0)) at trace_events_hist.c:1758 and the strcmp() in the sort-key match loop at :4804 both deref it. system and event_name are bounded by MAX_EVENT_NAME_LEN, but the field name on a VAR_REF is kstrdup'd from a histogram variable name parsed out of the trigger string and has no length cap, so a long enough var name in a fully qualified reference can reach the truncation path. Keep the length check but leave field_name as "" on overflow.
Timeline
- CVE published
Affected versions
- Linux Linux
Version range not reported
- Linux Linux
From 6.6.141 · fixed in 6.6.142; From 6.12.91 · fixed in 6.12.92; From 6.18.33 · fixed in 6.18.34; From 7.0.10 · fixed in 7.0.11
References 8
git.kernel.org
- stable/c/e3f5d42cdc2f167719564693675f1eead81378ea
- stable/c/37377b39ff86dacbc533275c1155210d4fd5dc91
- stable/c/0402a1d3ddec565132867337ed44514a09d84728
- stable/c/e91687643c440ca3997d67646e6f80b92edc6703
- stable/c/be4e99038c1603fa6b329d8ee3e364825e17c353
- stable/c/d6c8b3ebdcdb12b59ad4212acb137cc56cae453d
- stable/c/915c1254fe0788abddc31095b360e9dc98907a34
- stable/c/576ec047d20b368b43c4d5db98c4f2e0f3c101ec