batman-adv: tt: fix TOCTOU race for reported vlans
- 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 3.17, 4.5, 4.10, 4.15
- 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: batman-adv: tt: fix TOCTOU race for reported vlans The local TT based TVLV is generated by first checking the number of VLANs which have at least one TT entry. A new buffer with the correct size for the VLANs is then allocated. Only then, the list of VLANs s used to fill the VLAN entries in the buffer. During this time, the meshif_vlan_list_lock is held. But the actual number of TT entries of each VLAN can still increase during this time - just not the number of VLANs in the list. But the prefilter used in the buffer size calculation might still cause an increase of the number of VLANs which need to be stored. Simply because a VLAN might now suddenly have at least one entry when it had none in the pre-alloc check - and then needs to occupy space which was not allocated. It is better to overestimate the buffer size at the beginning and then fill the buffer only with the VLANs which are not empty.
Timeline
- CVE published
- Record last updated
Affected versions
- Linux Linux
From 3.16.60 · fixed in 3.17; From 4.4.217 · fixed in 4.5; From 4.9.217 · fixed in 4.10; From 4.14.174 · fixed in 4.15
- Linux Linux
4.17
References 8
git.kernel.org
- stable/c/e4236bf3ec8d6bb15d0d8d825dcf9933a7d6666b
- stable/c/724a8eb4155669797c96b70d70e354284ae3b5a8
- stable/c/211ea59988e1cba43cb0367ad65d379b56f9c3bd
- stable/c/65a1e67339aa8c95ac544b796946af388930ee23
- stable/c/b4d4efd4e351593c81e9293d4b4408d244fa5ee7
- stable/c/4cc85aec8d3c9ab4dc716dc9f1ed36fca16b227f
- stable/c/9a9c859457bc440a55773e01ff18b1bb5bab6836
- stable/c/94d27005016be15ffc638b2ecbc4d58805ad7b48