Oracle Linux 7 : resteasy-base (ELSA-2014-1011)

2014-08-06T00:00:00
ID ORACLELINUX_ELSA-2014-1011.NASL
Type nessus
Reporter This script is Copyright (C) 2014-2019 and is owned by Tenable, Inc. or an Affiliate thereof.
Modified 2019-11-02T00:00:00

Description

From Red Hat Security Advisory 2014:1011 :

Updated resteasy-base packages that fix one security issue are now available for Red Hat Enterprise Linux 7.

The Red Hat Security Response Team has rated this update as having Moderate security impact. A Common Vulnerability Scoring System (CVSS) base score, which gives a detailed severity rating, is available from the CVE link in the References section.

RESTEasy contains a JBoss project that provides frameworks to help build RESTful Web Services and RESTful Java applications. It is a fully certified and portable implementation of the JAX-RS specification.

It was found that the fix for CVE-2012-0818 was incomplete: external parameter entities were not disabled when the resteasy.document.expand.entity.references parameter was set to false. A remote attacker able to send XML requests to a RESTEasy endpoint could use this flaw to read files accessible to the user running the application server, and potentially perform other more advanced XXE attacks. (CVE-2014-3490)

This issue was discovered by David Jorm of Red Hat Product Security.

All resteasy-base users are advised to upgrade to these updated packages, which contain a backported patch to correct this issue.

                                        
                                            #
# (C) Tenable Network Security, Inc.
#
# The descriptive text and package checks in this plugin were
# extracted from Red Hat Security Advisory RHSA-2014:1011 and 
# Oracle Linux Security Advisory ELSA-2014-1011 respectively.
#

include("compat.inc");

if (description)
{
  script_id(77011);
  script_version("1.7");
  script_cvs_date("Date: 2019/09/30 10:58:19");

  script_cve_id("CVE-2014-3490");
  script_bugtraq_id(69058);
  script_xref(name:"RHSA", value:"2014:1011");

  script_name(english:"Oracle Linux 7 : resteasy-base (ELSA-2014-1011)");
  script_summary(english:"Checks rpm output for the updated packages");

  script_set_attribute(
    attribute:"synopsis", 
    value:"The remote Oracle Linux host is missing one or more security updates."
  );
  script_set_attribute(
    attribute:"description", 
    value:
"From Red Hat Security Advisory 2014:1011 :

Updated resteasy-base packages that fix one security issue are now
available for Red Hat Enterprise Linux 7.

The Red Hat Security Response Team has rated this update as having
Moderate security impact. A Common Vulnerability Scoring System (CVSS)
base score, which gives a detailed severity rating, is available from
the CVE link in the References section.

RESTEasy contains a JBoss project that provides frameworks to help
build RESTful Web Services and RESTful Java applications. It is a
fully certified and portable implementation of the JAX-RS
specification.

It was found that the fix for CVE-2012-0818 was incomplete: external
parameter entities were not disabled when the
resteasy.document.expand.entity.references parameter was set to false.
A remote attacker able to send XML requests to a RESTEasy endpoint
could use this flaw to read files accessible to the user running the
application server, and potentially perform other more advanced XXE
attacks. (CVE-2014-3490)

This issue was discovered by David Jorm of Red Hat Product Security.

All resteasy-base users are advised to upgrade to these updated
packages, which contain a backported patch to correct this issue."
  );
  script_set_attribute(
    attribute:"see_also",
    value:"https://oss.oracle.com/pipermail/el-errata/2014-August/004332.html"
  );
  script_set_attribute(
    attribute:"solution", 
    value:"Update the affected resteasy-base packages."
  );
  script_set_cvss_base_vector("CVSS2#AV:N/AC:L/Au:N/C:P/I:P/A:P");
  script_set_cvss_temporal_vector("CVSS2#E:U/RL:OF/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:oracle:linux:resteasy-base");
  script_set_attribute(attribute:"cpe", value:"p-cpe:/a:oracle:linux:resteasy-base-atom-provider");
  script_set_attribute(attribute:"cpe", value:"p-cpe:/a:oracle:linux:resteasy-base-jackson-provider");
  script_set_attribute(attribute:"cpe", value:"p-cpe:/a:oracle:linux:resteasy-base-javadoc");
  script_set_attribute(attribute:"cpe", value:"p-cpe:/a:oracle:linux:resteasy-base-jaxb-provider");
  script_set_attribute(attribute:"cpe", value:"p-cpe:/a:oracle:linux:resteasy-base-jaxrs");
  script_set_attribute(attribute:"cpe", value:"p-cpe:/a:oracle:linux:resteasy-base-jaxrs-all");
  script_set_attribute(attribute:"cpe", value:"p-cpe:/a:oracle:linux:resteasy-base-jaxrs-api");
  script_set_attribute(attribute:"cpe", value:"p-cpe:/a:oracle:linux:resteasy-base-jettison-provider");
  script_set_attribute(attribute:"cpe", value:"p-cpe:/a:oracle:linux:resteasy-base-providers-pom");
  script_set_attribute(attribute:"cpe", value:"p-cpe:/a:oracle:linux:resteasy-base-tjws");
  script_set_attribute(attribute:"cpe", value:"cpe:/o:oracle:linux:7");

  script_set_attribute(attribute:"vuln_publication_date", value:"2014/08/19");
  script_set_attribute(attribute:"patch_publication_date", value:"2014/08/05");
  script_set_attribute(attribute:"plugin_publication_date", value:"2014/08/06");
  script_set_attribute(attribute:"generated_plugin", value:"current");
  script_end_attributes();

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

  script_dependencies("ssh_get_info.nasl");
  script_require_keys("Host/local_checks_enabled", "Host/OracleLinux", "Host/RedHat/release", "Host/RedHat/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);
if (!get_kb_item("Host/OracleLinux")) audit(AUDIT_OS_NOT, "Oracle Linux");
release = get_kb_item("Host/RedHat/release");
if (isnull(release) || !pregmatch(pattern: "Oracle (?:Linux Server|Enterprise Linux)", string:release)) audit(AUDIT_OS_NOT, "Oracle Linux");
os_ver = pregmatch(pattern: "Oracle (?:Linux Server|Enterprise Linux) .*release ([0-9]+(\.[0-9]+)?)", string:release);
if (isnull(os_ver)) audit(AUDIT_UNKNOWN_APP_VER, "Oracle Linux");
os_ver = os_ver[1];
if (! preg(pattern:"^7([^0-9]|$)", string:os_ver)) audit(AUDIT_OS_NOT, "Oracle Linux 7", "Oracle Linux " + os_ver);

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

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

flag = 0;
if (rpm_check(release:"EL7", cpu:"x86_64", reference:"resteasy-base-2.3.5-3.el7_0")) flag++;
if (rpm_check(release:"EL7", cpu:"x86_64", reference:"resteasy-base-atom-provider-2.3.5-3.el7_0")) flag++;
if (rpm_check(release:"EL7", cpu:"x86_64", reference:"resteasy-base-jackson-provider-2.3.5-3.el7_0")) flag++;
if (rpm_check(release:"EL7", cpu:"x86_64", reference:"resteasy-base-javadoc-2.3.5-3.el7_0")) flag++;
if (rpm_check(release:"EL7", cpu:"x86_64", reference:"resteasy-base-jaxb-provider-2.3.5-3.el7_0")) flag++;
if (rpm_check(release:"EL7", cpu:"x86_64", reference:"resteasy-base-jaxrs-2.3.5-3.el7_0")) flag++;
if (rpm_check(release:"EL7", cpu:"x86_64", reference:"resteasy-base-jaxrs-all-2.3.5-3.el7_0")) flag++;
if (rpm_check(release:"EL7", cpu:"x86_64", reference:"resteasy-base-jaxrs-api-2.3.5-3.el7_0")) flag++;
if (rpm_check(release:"EL7", cpu:"x86_64", reference:"resteasy-base-jettison-provider-2.3.5-3.el7_0")) flag++;
if (rpm_check(release:"EL7", cpu:"x86_64", reference:"resteasy-base-providers-pom-2.3.5-3.el7_0")) flag++;
if (rpm_check(release:"EL7", cpu:"x86_64", reference:"resteasy-base-tjws-2.3.5-3.el7_0")) 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, "resteasy-base / resteasy-base-atom-provider / etc");
}