thunderbolt: property: Cap recursion depth in __tb_property_parse_dir()
- 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
- 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: thunderbolt: property: Cap recursion depth in __tb_property_parse_dir() A DIRECTORY entry's value field is used as the dir_offset for a recursive call into __tb_property_parse_dir() with no depth counter. A crafted peer that chains DIRECTORY entries into a back-reference loop drives the parser until the kernel stack is exhausted and the guard page fires. Any untrusted XDomain peer (cable, dock, in-line inspector, adjacent host) that reaches the PROPERTIES_REQUEST control-plane exchange can trigger this without authentication. Thread a depth counter through tb_property_parse() and __tb_property_parse_dir(), and reject blocks that exceed TB_PROPERTY_MAX_DEPTH = 8. That is comfortably larger than any observed legitimate XDomain layout. Operators who do not need XDomain host-to-host discovery can disable the path entirely with thunderbolt.xdomain=0 on the kernel command line.
Timeline
- CVE published
Affected versions
- Linux Linux
Version range not reported
- Linux Linux
4.15
References 8
git.kernel.org
- stable/c/2b5f47a710172c962ef42d1b732b04d2ad0dce21
- stable/c/95839a67ea56ca35732aad7f711404a3127cfe2d
- stable/c/0a84ab9271936c11e84e511bb52fc5682f8b6726
- stable/c/b4621e5ef63405c317a84b711faf3bd75b3c6a94
- stable/c/f31c6d220f455b5af63590302b30e1b932d14599
- stable/c/830c8a9b467e7d3a158483d37fa7dc13892b293a
- stable/c/ed9455ef4bd9babc90f92e526abe3fb68c1a8709
- stable/c/928abe19fbf0127003abcb1ea69cabc1c897d0ab