flex: Potential insecure code generation — GLSA 200603-07

flex might generate code with a buffer overflow, making applications using such scanners vulnerable to the execution of arbitrary code.

Affected packages

sys-devel/flex on all architectures
Affected versions < 2.5.33-r1
Unaffected versions >= 2.5.33-r1

Background

flex is a programming tool used to generate scanners (programs which recognize lexical patterns in text).

Description

Chris Moore discovered a buffer overflow in a special class of lexicographical scanners generated by flex. Only scanners generated by grammars which use either REJECT, or rules with a "variable trailing context" might be at risk.

Impact

An attacker could feed malicious input to an application making use of an affected scanner and trigger the buffer overflow, potentially resulting in the execution of arbitrary code.

Workaround

Avoid using vulnerable grammar in your flex scanners.

Resolution

All flex users should upgrade to the latest version:

 # emerge --sync
 # emerge --ask --oneshot --verbose ">=sys-devel/flex-2.5.33-r1"

References

Release date
March 10, 2006

Latest revision
March 10, 2006: 01

Severity
normal

Exploitable
remote and local

Bugzilla entries