Description (CNA)
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.
Affected (CNA)
| Vendor / product | Versions |
|---|---|
| Linux / Linux | affected 16116dac23396e73c01eeee97b102e4833a4b205 before e4236bf3ec8d6bb15d0d8d825dcf9933a7d6666b; affected 16116dac23396e73c01eeee97b102e4833a4b205 before 724a8eb4155669797c96b70d70e354284ae3b5a8; affected 16116dac23396e73c01eeee97b102e4833a4b205 before 211ea59988e1cba43cb0367ad65d379b56f9c3bd; affected 16116dac23396e73c01eeee97b102e4833a4b205 before 65a1e67339aa8c95ac544b796946af388930ee23; affected 16116dac23396e73c01eeee97b102e4833a4b205 before b4d4efd4e351593c81e9293d4b4408d244fa5ee7; affected 16116dac23396e73c01eeee97b102e4833a4b205 before 4cc85aec8d3c9ab4dc716dc9f1ed36fca16b227f; affected 16116dac23396e73c01eeee97b102e4833a4b205 before 9a9c859457bc440a55773e01ff18b1bb5bab6836; affected 16116dac23396e73c01eeee97b102e4833a4b205 before 94d27005016be15ffc638b2ecbc4d58805ad7b48; affected 3134c5a32810c510f1f447c135cec346acbb71c3; affected e861e03a1b5b615ad1b57b1802b17e260eedccfe; affected 0b81edc8818903c64c4d121bc51cd5825be8cc67; affected 90ae6475b1753f0c1a4c66034b5666de3189fac8; affected 3.16.60 before 3.17; affected 4.4.217 before 4.5; affected 4.9.217 before 4.10; affected 4.14.174 before 4.15 |
| Linux / Linux | affected 4.17; unaffected 0 before 4.17; unaffected 5.10.259 through 5.10.*; unaffected 5.15.210 through 5.15.*; unaffected 6.1.176 through 6.1.*; unaffected 6.6.143 through 6.6.*; unaffected 6.12.93 through 6.12.*; unaffected 6.18.34 through 6.18.*; unaffected 7.0.11 through 7.0.*; unaffected 7.1 through * |
CWE
No CWE identifiers supplied.
References
- https://git.kernel.org/stable/c/e4236bf3ec8d6bb15d0d8d825dcf9933a7d6666b
- https://git.kernel.org/stable/c/724a8eb4155669797c96b70d70e354284ae3b5a8
- https://git.kernel.org/stable/c/211ea59988e1cba43cb0367ad65d379b56f9c3bd
- https://git.kernel.org/stable/c/65a1e67339aa8c95ac544b796946af388930ee23
- https://git.kernel.org/stable/c/b4d4efd4e351593c81e9293d4b4408d244fa5ee7
- https://git.kernel.org/stable/c/4cc85aec8d3c9ab4dc716dc9f1ed36fca16b227f
- https://git.kernel.org/stable/c/9a9c859457bc440a55773e01ff18b1bb5bab6836
- https://git.kernel.org/stable/c/94d27005016be15ffc638b2ecbc4d58805ad7b48