Flex might generate code with a buffer overflow making applications using such scanners vulnerable to the execution of arbitrary code.
|Package||sys-devel/flex on all architectures|
|Affected versions||< 2.6.1|
|Unaffected versions||>= 2.6.1|
flex is a programming tool used to generate scanners (programs which recognize lexical patterns in text).
A heap-based buffer overflow in the yy_get_next_buffer function in Flex might allow context-dependent attackers to cause a denial of service or possibly execute arbitrary code via vectors involving num_to_read.
Context-dependent attackers could cause a Denial of Service condition or possibly execute arbitrary code with the privileges of the process.
There is no known workaround at this time.
All flex users should upgrade to the latest version:
# emerge --sync # emerge --ask --oneshot --verbose ">=sys-devel/flex-2.6.1"
Packages which depend on flex may need to be recompiled. Tools such as qdepends (included in app-portage/portage-utils) may assist in identifying these packages:
# emerge --oneshot --ask --verbose $(qdepends -CQ sys-devel/flex | sed 's/^/=/')
January 11, 2017
January 11, 2017: 1