Debian DSA-3628-1 : perl - security update

High Nessus Plugin ID 92548

Synopsis

The remote Debian host is missing a security-related update.

Description

Multiple vulnerabilities were discovered in the implementation of the Perl programming language. The Common Vulnerabilities and Exposures project identifies the following problems :

- CVE-2016-1238 John Lightsey and Todd Rinaldo reported that the opportunistic loading of optional modules can make many programs unintentionally load code from the current working directory (which might be changed to another directory without the user realising) and potentially leading to privilege escalation, as demonstrated in Debian with certain combinations of installed packages.

The problem relates to Perl loading modules from the includes directory array ('@INC') in which the last element is the current directory ('.'). That means that, when 'perl' wants to load a module (during first compilation or during lazy loading of a module in run time), perl will look for the module in the current directory at the end, since '.' is the last include directory in its array of include directories to seek. The issue is with requiring libraries that are in '.' but are not otherwise installed.

With this update several modules which are known to be vulnerable are updated to not load modules from current directory.

Additionally the update allows configurable removal of '.' from @INC in /etc/perl/sitecustomize.pl for a transitional period. It is recommended to enable this setting if the possible breakage for a specific site has been evaluated. Problems in packages provided in Debian resulting from the switch to the removal of '.' from @INC should be reported to the Perl maintainers at [email protected] .

It is planned to switch to the default removal of '.' in @INC in a subsequent update to perl via a point release if possible, and in any case for the upcoming stable release Debian 9 (stretch).

- CVE-2016-6185 It was discovered that XSLoader, a core module from Perl to dynamically load C libraries into Perl code, could load shared library from incorrect location. XSLoader uses caller() information to locate the .so file to load. This can be incorrect if XSLoader::load() is called in a string eval. An attacker can take advantage of this flaw to execute arbitrary code.

Solution

Upgrade the perl packages.

For the stable distribution (jessie), these problems have been fixed in version 5.20.2-3+deb8u6. Additionally this update includes the following updated packages to address optional module loading vulnerabilities related to CVE-2016-1238, or to address build failures which occur when '.' is removed from @INC :

- cdbs 0.4.130+deb8u1
- debhelper 9.20150101+deb8u2

- devscripts 2.15.3+deb8u12

- exim4 4.84.2-2+deb8u12

- libintl-perl 1.23-1+deb8u12

- libmime-charset-perl 1.011.1-1+deb8u22

- libmime-encwords-perl 1.014.3-1+deb8u12

- libmodule-build-perl 0.421000-2+deb8u12

- libnet-dns-perl 0.81-2+deb8u12

- libsys-syslog-perl 0.33-1+deb8u12

- libunicode-linebreak-perl 0.0.20140601-2+deb8u22

See Also

https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=829578

https://security-tracker.debian.org/tracker/CVE-2016-1238

https://security-tracker.debian.org/tracker/CVE-2016-6185

https://security-tracker.debian.org/tracker/CVE-2016-1238

https://packages.debian.org/source/jessie/perl

https://www.debian.org/security/2016/dsa-3628

Plugin Details

Severity: High

ID: 92548

File Name: debian_DSA-3628.nasl

Version: 2.8

Type: local

Agent: unix

Published: 2016/07/26

Updated: 2019/07/15

Dependencies: 12634

Risk Information

Risk Factor: High

CVSS v2.0

Base Score: 7.2

Temporal Score: 5.3

Vector: CVSS2#AV:L/AC:L/Au:N/C:C/I:C/A:C

Temporal Vector: CVSS2#E:U/RL:OF/RC:C

CVSS v3.0

Base Score: 7.8

Temporal Score: 6.8

Vector: CVSS:3.0/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H

Temporal Vector: CVSS:3.0/E:U/RL:O/RC:C

Vulnerability Information

CPE: p-cpe:/a:debian:debian_linux:perl, cpe:/o:debian:debian_linux:8.0

Required KB Items: Host/local_checks_enabled, Host/Debian/release, Host/Debian/dpkg-l

Exploit Available: false

Exploit Ease: No known exploits are available

Patch Publication Date: 2016/07/25

Vulnerability Publication Date: 2016/08/02

Reference Information

CVE: CVE-2016-1238, CVE-2016-6185

DSA: 3628