Debian Security Advisory DSA 3653-1 (flex - security update)

2016-08-25T00:00:00
ID OPENVAS:1361412562310703653
Type openvas
Reporter Copyright (c) 2016 Greenbone Networks GmbH http://greenbone.net
Modified 2017-12-15T00:00:00

Description

Alexander Sulfrian discovered a buffer overflow in the yy_get_next_buffer() function generated by Flex, which may result in denial of service and potentially the execution of code if operating on data from untrusted sources.

Affected applications need to be rebuild. bogofilter will be rebuild against the updated flex in a followup update. Further affected applications should be reported at the bug referenced above.

                                        
                                            # OpenVAS Vulnerability Test
# $Id: deb_3653.nasl 8131 2017-12-15 07:30:28Z teissa $
# Auto-generated from advisory DSA 3653-1 using nvtgen 1.0
# Script version: 1.0
#
# Author:
# Greenbone Networks
#
# Copyright:
# Copyright (c) 2016 Greenbone Networks GmbH http://greenbone.net
# Text descriptions are largely excerpted from the referenced
# advisory, and are Copyright (c) the respective author(s)
#
# This program is free software; you can redistribute it and/or
# modify it under the terms of the GNU General Public License
# as published by the Free Software Foundation; either version 2
# of the License, or (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
#


if(description)
{
    script_oid("1.3.6.1.4.1.25623.1.0.703653");
    script_version("$Revision: 8131 $");
    script_cve_id("CVE-2016-6354");
    script_name("Debian Security Advisory DSA 3653-1 (flex - security update)");
    script_tag(name: "last_modification", value: "$Date: 2017-12-15 08:30:28 +0100 (Fri, 15 Dec 2017) $");
    script_tag(name: "creation_date", value: "2016-08-25 00:00:00 +0200 (Thu, 25 Aug 2016)");
    script_tag(name:"cvss_base", value:"7.5");
    script_tag(name:"cvss_base_vector", value:"AV:N/AC:L/Au:N/C:P/I:P/A:P");
    script_tag(name: "solution_type", value: "VendorFix");
    script_tag(name: "qod_type", value: "package");

    script_xref(name: "URL", value: "http://www.debian.org/security/2016/dsa-3653.html");


    script_category(ACT_GATHER_INFO);

    script_copyright("Copyright (c) 2016 Greenbone Networks GmbH http://greenbone.net");
    script_family("Debian Local Security Checks");
    script_dependencies("gather-package-list.nasl");
    script_mandatory_keys("ssh/login/debian_linux", "ssh/login/packages");
    script_tag(name: "affected",  value: "flex on Debian Linux");
    script_tag(name: "insight",   value: "Flex is a tool for generating scanners:
programs which recognized lexical patterns in text. It reads the given input files
for a description of a scanner to generate. The description is in the form of pairs
of regular expressions and C code, called rules. Flex generates as output a C source
file, lex.yy.c, which defines a routine yylex(). This file is compiled
and linked with the -lfl library to produce an executable. When the
executable is run, it analyzes its input for occurrences of the regular
expressions. Whenever it finds one, it executes the corresponding C code.");
    script_tag(name: "solution",  value: "For the stable distribution (jessie),
this problem has been fixed in version 2.5.39-8+deb8u1.

For the testing distribution (stretch), this problem has been fixed
in version 2.6.1-1.

For the unstable distribution (sid), this problem has been fixed in
version 2.6.1-1.

We recommend that you upgrade your flex packages.");
    script_tag(name: "summary",   value: "Alexander Sulfrian discovered a buffer
overflow in the yy_get_next_buffer() function generated by Flex, which may result
in denial of service and potentially the execution of code if operating on
data from untrusted sources.

Affected applications need to be rebuild. bogofilter will be rebuild
against the updated flex in a followup update. Further affected
applications should be reported at the bug referenced above.");
    script_tag(name: "vuldetect", value: "This check tests the installed software
version using the apt package manager.");
    exit(0);
}

include("revisions-lib.inc");
include("pkg-lib-deb.inc");

res = "";
report = "";
if ((res = isdpkgvuln(pkg:"flex", ver:"2.6.1-1", rls_regex:"DEB9.[0-9]+")) != NULL) {
    report += res;
}
if ((res = isdpkgvuln(pkg:"flex-doc", ver:"2.6.1-1", rls_regex:"DEB9.[0-9]+")) != NULL) {
    report += res;
}
if ((res = isdpkgvuln(pkg:"libfl-dev:amd64", ver:"2.6.1-1", rls_regex:"DEB9.[0-9]+")) != NULL) {
    report += res;
}
if ((res = isdpkgvuln(pkg:"libfl-dev:i386", ver:"2.6.1-1", rls_regex:"DEB9.[0-9]+")) != NULL) {
    report += res;
}

if ((res = isdpkgvuln(pkg:"flex", ver:"2.5.39-8+deb8u1", rls_regex:"DEB8.[0-9]+")) != NULL) {
    report += res;
}
if ((res = isdpkgvuln(pkg:"flex-doc", ver:"2.5.39-8+deb8u1", rls_regex:"DEB8.[0-9]+")) != NULL) {
    report += res;
}
if ((res = isdpkgvuln(pkg:"libfl-dev:amd64", ver:"2.5.39-8+deb8u1", rls_regex:"DEB8.[0-9]+")) != NULL) {
    report += res;
}
if ((res = isdpkgvuln(pkg:"libfl-dev:i386", ver:"2.5.39-8+deb8u1", rls_regex:"DEB8.[0-9]+")) != NULL) {
    report += res;
}


if (report != "") {
    security_message(data:report);
} else if (__pkg_match) {
    exit(99); # Not vulnerable.
}