SUSE SLES12 Security Update : docker (SUSE-SU-2015:0082-1)

2015-05-20T00:00:00
ID SUSE_SU-2015-0082-1.NASL
Type nessus
Reporter This script is Copyright (C) 2015-2021 and is owned by Tenable, Inc. or an Affiliate thereof.
Modified 2015-05-20T00:00:00

Description

This docker version upgrade fixes the following security and non security issues, and adds the also additional features :

  • Updated to 1.4.1 (2014-12-15) :

  • Runtime :

  • Fix issue with volumes-from and bind mounts not being honored after create (fixes bnc#913213)

  • Added e2fsprogs as runtime dependency, this is required when the devicemapper driver is used. (bnc#913211).

  • Fixed owner & group for docker.socket (thanks to Andrei Dziahel and https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=752555 #5)

  • Updated to 1.4.0 (2014-12-11) :

  • Notable Features since 1.3.0 :

  • Set key=value labels to the daemon (displayed in docker info), applied with new -label daemon flag

  • Add support for ENV in Dockerfile of the form: ENV name=value name2=value2...

  • New Overlayfs Storage Driver

  • docker info now returns an ID and Name field

  • Filter events by event name, container, or image

  • docker cp now supports copying from container volumes

  • Fixed docker tag, so it honors --force when overriding a tag for existing image.

  • Changes introduced by 1.3.3 (2014-12-11) :

  • Security :

  • Fix path traversal vulnerability in processing of absolute symbolic links (CVE-2014-9356) - (bnc#909709)

  • Fix decompression of xz image archives, preventing privilege escalation (CVE-2014-9357) - (bnc#909710)

  • Validate image IDs (CVE-2014-9358) - (bnc#909712)

  • Runtime :

  • Fix an issue when image archives are being read slowly

  • Client :

  • Fix a regression related to stdin redirection

  • Fix a regression with docker cp when destination is the current directory

Note that Tenable Network Security has extracted the preceding description block directly from the SUSE security advisory. Tenable has attempted to automatically clean and format it as much as possible without introducing additional issues.

                                        
                                            #%NASL_MIN_LEVEL 70300
#
# (C) Tenable Network Security, Inc.
#
# The descriptive text and package checks in this plugin were
# extracted from SUSE update advisory SUSE-SU-2015:0082-1.
# The text itself is copyright (C) SUSE.
#

include('deprecated_nasl_level.inc');
include('compat.inc');

if (description)
{
  script_id(83667);
  script_version("2.10");
  script_set_attribute(attribute:"plugin_modification_date", value:"2021/01/06");

  script_cve_id("CVE-2014-9356", "CVE-2014-9357", "CVE-2014-9358");
  script_bugtraq_id(71647, 71649, 71654);

  script_name(english:"SUSE SLES12 Security Update : docker (SUSE-SU-2015:0082-1)");
  script_summary(english:"Checks rpm output for the updated packages.");

  script_set_attribute(
    attribute:"synopsis", 
    value:"The remote SUSE host is missing one or more security updates."
  );
  script_set_attribute(
    attribute:"description", 
    value:
"This docker version upgrade fixes the following security and non
security issues, and adds the also additional features :

  - Updated to 1.4.1 (2014-12-15) :

  - Runtime :

  - Fix issue with volumes-from and bind mounts not being
    honored after create (fixes bnc#913213)

  - Added e2fsprogs as runtime dependency, this is required
    when the devicemapper driver is used. (bnc#913211).

  - Fixed owner & group for docker.socket (thanks to Andrei
    Dziahel and
    https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=752555
    #5)

  - Updated to 1.4.0 (2014-12-11) :

  - Notable Features since 1.3.0 :

  - Set key=value labels to the daemon (displayed in `docker
    info`), applied with new `-label` daemon flag

  - Add support for `ENV` in Dockerfile of the form: `ENV
    name=value name2=value2...`

  - New Overlayfs Storage Driver

  - `docker info` now returns an `ID` and `Name` field

  - Filter events by event name, container, or image

  - `docker cp` now supports copying from container volumes

  - Fixed `docker tag`, so it honors `--force` when
    overriding a tag for existing image.

  - Changes introduced by 1.3.3 (2014-12-11) :

  - Security :

  - Fix path traversal vulnerability in processing of
    absolute symbolic links (CVE-2014-9356) - (bnc#909709)

  - Fix decompression of xz image archives, preventing
    privilege escalation (CVE-2014-9357) - (bnc#909710)

  - Validate image IDs (CVE-2014-9358) - (bnc#909712)

  - Runtime :

  - Fix an issue when image archives are being read slowly

  - Client :

  - Fix a regression related to stdin redirection

  - Fix a regression with `docker cp` when destination is
    the current directory

Note that Tenable Network Security has extracted the preceding
description block directly from the SUSE security advisory. Tenable
has attempted to automatically clean and format it as much as possible
without introducing additional issues."
  );
  script_set_attribute(
    attribute:"see_also",
    value:"https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=752555#5"
  );
  script_set_attribute(
    attribute:"see_also",
    value:"https://bugzilla.suse.com/show_bug.cgi?id=909709"
  );
  script_set_attribute(
    attribute:"see_also",
    value:"https://bugzilla.suse.com/show_bug.cgi?id=909710"
  );
  script_set_attribute(
    attribute:"see_also",
    value:"https://bugzilla.suse.com/show_bug.cgi?id=909712"
  );
  script_set_attribute(
    attribute:"see_also",
    value:"https://bugzilla.suse.com/show_bug.cgi?id=913211"
  );
  script_set_attribute(
    attribute:"see_also",
    value:"https://bugzilla.suse.com/show_bug.cgi?id=913213"
  );
  script_set_attribute(
    attribute:"see_also",
    value:"https://www.suse.com/security/cve/CVE-2014-9356/"
  );
  script_set_attribute(
    attribute:"see_also",
    value:"https://www.suse.com/security/cve/CVE-2014-9357/"
  );
  script_set_attribute(
    attribute:"see_also",
    value:"https://www.suse.com/security/cve/CVE-2014-9358/"
  );
  # https://www.suse.com/support/update/announcement/2015/suse-su-20150082-1.html
  script_set_attribute(
    attribute:"see_also",
    value:"http://www.nessus.org/u?f0dd7c95"
  );
  script_set_attribute(
    attribute:"solution", 
    value:
"To install this SUSE Security Update use YaST online_update.
Alternatively you can run the command listed for your product :

SUSE Linux Enterprise Server 12 :

zypper in -t patch SUSE-SLE-SERVER-12-2015-28

To bring your system up-to-date, use 'zypper patch'."
  );
  script_set_cvss_base_vector("CVSS2#AV:N/AC:L/Au:N/C:C/I:C/A:C");
  script_set_cvss_temporal_vector("CVSS2#E:U/RL:OF/RC:C");
  script_set_cvss3_base_vector("CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:C/C:N/I:H/A:N");
  script_set_cvss3_temporal_vector("CVSS:3.0/E:U/RL:O/RC:C");
  script_set_attribute(attribute:"exploitability_ease", value:"No known exploits are available");
  script_set_attribute(attribute:"exploit_available", value:"false");

  script_set_attribute(attribute:"plugin_type", value:"local");
  script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:docker");
  script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:docker-debuginfo");
  script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:docker-debugsource");
  script_set_attribute(attribute:"cpe", value:"cpe:/o:novell:suse_linux:12");

  script_set_attribute(attribute:"vuln_publication_date", value:"2014/12/16");
  script_set_attribute(attribute:"patch_publication_date", value:"2015/01/19");
  script_set_attribute(attribute:"plugin_publication_date", value:"2015/05/20");
  script_set_attribute(attribute:"generated_plugin", value:"current");
  script_end_attributes();

  script_category(ACT_GATHER_INFO);
  script_copyright(english:"This script is Copyright (C) 2015-2021 and is owned by Tenable, Inc. or an Affiliate thereof.");
  script_family(english:"SuSE Local Security Checks");

  script_dependencies("ssh_get_info.nasl");
  script_require_keys("Host/local_checks_enabled", "Host/cpu", "Host/SuSE/release", "Host/SuSE/rpm-list");

  exit(0);
}


include("audit.inc");
include("global_settings.inc");
include("rpm.inc");


if (!get_kb_item("Host/local_checks_enabled")) audit(AUDIT_LOCAL_CHECKS_NOT_ENABLED);
release = get_kb_item("Host/SuSE/release");
if (isnull(release) || release !~ "^(SLED|SLES)") audit(AUDIT_OS_NOT, "SUSE");
os_ver = pregmatch(pattern: "^(SLE(S|D)\d+)", string:release);
if (isnull(os_ver)) audit(AUDIT_UNKNOWN_APP_VER, "SUSE");
os_ver = os_ver[1];
if (! preg(pattern:"^(SLES12)$", string:os_ver)) audit(AUDIT_OS_NOT, "SUSE SLES12", "SUSE " + os_ver);

if (!get_kb_item("Host/SuSE/rpm-list")) audit(AUDIT_PACKAGE_LIST_MISSING);

cpu = get_kb_item("Host/cpu");
if (isnull(cpu)) audit(AUDIT_UNKNOWN_ARCH);
if (cpu !~ "^i[3-6]86$" && "x86_64" >!< cpu && "s390x" >!< cpu) audit(AUDIT_LOCAL_CHECKS_NOT_IMPLEMENTED, "SUSE " + os_ver, cpu);
if (cpu >!< "x86_64") audit(AUDIT_ARCH_NOT, "x86_64", cpu);


sp = get_kb_item("Host/SuSE/patchlevel");
if (isnull(sp)) sp = "0";
if (os_ver == "SLES12" && (! preg(pattern:"^(0)$", string:sp))) audit(AUDIT_OS_NOT, "SLES12 SP0", os_ver + " SP" + sp);


flag = 0;
if (rpm_check(release:"SLES12", sp:"0", cpu:"x86_64", reference:"docker-1.4.1-16.1")) flag++;
if (rpm_check(release:"SLES12", sp:"0", cpu:"x86_64", reference:"docker-debuginfo-1.4.1-16.1")) flag++;
if (rpm_check(release:"SLES12", sp:"0", cpu:"x86_64", reference:"docker-debugsource-1.4.1-16.1")) flag++;


if (flag)
{
  if (report_verbosity > 0) security_hole(port:0, extra:rpm_report_get());
  else security_hole(0);
  exit(0);
}
else
{
  tested = pkg_tests_get();
  if (tested) audit(AUDIT_PACKAGE_NOT_AFFECTED, tested);
  else audit(AUDIT_PACKAGE_NOT_INSTALLED, "docker");
}