Vulnerabilities > CVE-2014-3691 - Cryptographic Issues vulnerability in multiple products

047910
CVSS 0.0 - NONE
Attack vector
UNKNOWN
Attack complexity
UNKNOWN
Privileges required
UNKNOWN
Confidentiality impact
UNKNOWN
Integrity impact
UNKNOWN
Availability impact
UNKNOWN

Summary

Smart Proxy (aka Smart-Proxy and foreman-proxy) in Foreman before 1.5.4 and 1.6.x before 1.6.2 does not validate SSL certificates, which allows remote attackers to bypass intended authentication and execute arbitrary API requests via a request without a certificate.

Common Weakness Enumeration (CWE)

Common Attack Pattern Enumeration and Classification (CAPEC)

  • Signature Spoofing by Key Recreation
    An attacker obtains an authoritative or reputable signer's private signature key by exploiting a cryptographic weakness in the signature algorithm or pseudorandom number generation and then uses this key to forge signatures from the original signer to mislead a victim into performing actions that benefit the attacker.

Nessus

NASL familyFreeBSD Local Security Checks
NASL idFREEBSD_PKG_C30C3A2E4FB111E4B27514DAE9D210B8.NASL
descriptionForeman Security reports : The smart proxy when running in an SSL-secured mode permits incoming API calls to any endpoint without requiring, or performing any verification of an SSL client certificate. This permits any client with access to the API to make requests and perform actions permitting control of Puppet CA, DHCP, DNS etc.)
last seen2020-06-01
modified2020-06-02
plugin id78114
published2014-10-10
reporterThis script is Copyright (C) 2014-2018 and is owned by Tenable, Inc. or an Affiliate thereof.
sourcehttps://www.tenable.com/plugins/nessus/78114
titleFreeBSD : foreman-proxy SSL verification issue (c30c3a2e-4fb1-11e4-b275-14dae9d210b8)
code
#
# (C) Tenable Network Security, Inc.
#
# The descriptive text and package checks in this plugin were  
# extracted from the FreeBSD VuXML database :
#
# Copyright 2003-2018 Jacques Vidrine and contributors
#
# Redistribution and use in source (VuXML) and 'compiled' forms (SGML,
# HTML, PDF, PostScript, RTF and so forth) with or without modification,
# are permitted provided that the following conditions are met:
# 1. Redistributions of source code (VuXML) must retain the above
#    copyright notice, this list of conditions and the following
#    disclaimer as the first lines of this file unmodified.
# 2. Redistributions in compiled form (transformed to other DTDs,
#    published online in any format, converted to PDF, PostScript,
#    RTF and other formats) must reproduce the above copyright
#    notice, this list of conditions and the following disclaimer
#    in the documentation and/or other materials provided with the
#    distribution.
# 
# THIS DOCUMENTATION IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS "AS IS"
# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
# THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
# PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS
# BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
# OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
# OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
# BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
# OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS DOCUMENTATION,
# EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#

include("compat.inc");

if (description)
{
  script_id(78114);
  script_version("1.3");
  script_cvs_date("Date: 2018/11/10 11:49:44");

  script_cve_id("CVE-2014-3691");

  script_name(english:"FreeBSD : foreman-proxy SSL verification issue (c30c3a2e-4fb1-11e4-b275-14dae9d210b8)");
  script_summary(english:"Checks for updated package in pkg_info output");

  script_set_attribute(
    attribute:"synopsis", 
    value:"The remote FreeBSD host is missing a security-related update."
  );
  script_set_attribute(
    attribute:"description", 
    value:
"Foreman Security reports :

The smart proxy when running in an SSL-secured mode permits incoming
API calls to any endpoint without requiring, or performing any
verification of an SSL client certificate. This permits any client
with access to the API to make requests and perform actions permitting
control of Puppet CA, DHCP, DNS etc.)"
  );
  script_set_attribute(
    attribute:"see_also",
    value:"https://groups.google.com/forum/#!topic/foreman-announce/LcjZx25Bl7U"
  );
  # https://vuxml.freebsd.org/freebsd/c30c3a2e-4fb1-11e4-b275-14dae9d210b8.html
  script_set_attribute(
    attribute:"see_also",
    value:"http://www.nessus.org/u?0acceccd"
  );
  script_set_attribute(attribute:"solution", value:"Update the affected package.");
  script_set_cvss_base_vector("CVSS2#AV:N/AC:L/Au:N/C:P/I:P/A:P");

  script_set_attribute(attribute:"plugin_type", value:"local");
  script_set_attribute(attribute:"cpe", value:"p-cpe:/a:freebsd:freebsd:foreman-proxy");
  script_set_attribute(attribute:"cpe", value:"cpe:/o:freebsd:freebsd");

  script_set_attribute(attribute:"vuln_publication_date", value:"2014/05/09");
  script_set_attribute(attribute:"patch_publication_date", value:"2014/10/09");
  script_set_attribute(attribute:"plugin_publication_date", value:"2014/10/10");
  script_end_attributes();

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

  script_dependencies("ssh_get_info.nasl");
  script_require_keys("Host/local_checks_enabled", "Host/FreeBSD/release", "Host/FreeBSD/pkg_info");

  exit(0);
}


include("audit.inc");
include("freebsd_package.inc");


if (!get_kb_item("Host/local_checks_enabled")) audit(AUDIT_LOCAL_CHECKS_NOT_ENABLED);
if (!get_kb_item("Host/FreeBSD/release")) audit(AUDIT_OS_NOT, "FreeBSD");
if (!get_kb_item("Host/FreeBSD/pkg_info")) audit(AUDIT_PACKAGE_LIST_MISSING);


flag = 0;

if (pkg_test(save_report:TRUE, pkg:"foreman-proxy<1.6.2")) flag++;

if (flag)
{
  if (report_verbosity > 0) security_hole(port:0, extra:pkg_report_get());
  else security_hole(0);
  exit(0);
}
else audit(AUDIT_HOST_NOT, "affected");

Redhat

advisories
  • rhsa
    idRHSA-2015:0287
  • rhsa
    idRHSA-2015:0288
rpms
  • foreman-0:1.6.0.51-1.el6sat
  • foreman-0:1.6.0.51-1.el7sat
  • foreman-compute-0:1.6.0.51-1.el6sat
  • foreman-compute-0:1.6.0.51-1.el7sat
  • foreman-gce-0:1.6.0.51-1.el6sat
  • foreman-gce-0:1.6.0.51-1.el7sat
  • foreman-libvirt-0:1.6.0.51-1.el6sat
  • foreman-libvirt-0:1.6.0.51-1.el7sat
  • foreman-ovirt-0:1.6.0.51-1.el6sat
  • foreman-ovirt-0:1.6.0.51-1.el7sat
  • foreman-postgresql-0:1.6.0.51-1.el6sat
  • foreman-postgresql-0:1.6.0.51-1.el7sat
  • foreman-proxy-0:1.6.0.33-1.el6sat
  • foreman-proxy-0:1.6.0.33-1.el7sat
  • foreman-vmware-0:1.6.0.51-1.el6sat
  • foreman-vmware-0:1.6.0.51-1.el7sat
  • katello-agent-0:1.5.3-7.el6sat
  • katello-agent-0:1.5.3-7.el7sat
  • katello-installer-0:0.0.67-1.el6sat
  • katello-installer-0:0.0.67-1.el7sat
  • pulp-admin-client-0:2.4.4-1.el6sat
  • pulp-admin-client-0:2.4.4-1.el7sat
  • pulp-nodes-child-0:2.4.4-1.el6sat
  • pulp-nodes-child-0:2.4.4-1.el7sat
  • pulp-nodes-common-0:2.4.4-1.el6sat
  • pulp-nodes-common-0:2.4.4-1.el7sat
  • pulp-nodes-parent-0:2.4.4-1.el6sat
  • pulp-nodes-parent-0:2.4.4-1.el7sat
  • pulp-puppet-admin-extensions-0:2.4.4-1.el6sat
  • pulp-puppet-admin-extensions-0:2.4.4-1.el7sat
  • pulp-puppet-plugins-0:2.4.4-1.el6sat
  • pulp-puppet-plugins-0:2.4.4-1.el7sat
  • pulp-puppet-tools-0:2.4.4-1.el6sat
  • pulp-puppet-tools-0:2.4.4-1.el7sat
  • pulp-rpm-admin-extensions-0:2.4.4-1.1.el6sat
  • pulp-rpm-admin-extensions-0:2.4.4-1.1.el7sat
  • pulp-rpm-handlers-0:2.4.4-1.1.el6sat
  • pulp-rpm-handlers-0:2.4.4-1.1.el7sat
  • pulp-rpm-plugins-0:2.4.4-1.1.el6sat
  • pulp-rpm-plugins-0:2.4.4-1.1.el7sat
  • pulp-selinux-0:2.4.4-1.el6sat
  • pulp-selinux-0:2.4.4-1.el7sat
  • pulp-server-0:2.4.4-1.el6sat
  • pulp-server-0:2.4.4-1.el7sat
  • python-pulp-agent-lib-0:2.4.4-1.el6sat
  • python-pulp-agent-lib-0:2.4.4-1.el7sat
  • python-pulp-bindings-0:2.4.4-1.el6sat
  • python-pulp-bindings-0:2.4.4-1.el7sat
  • python-pulp-client-lib-0:2.4.4-1.el6sat
  • python-pulp-client-lib-0:2.4.4-1.el7sat
  • python-pulp-common-0:2.4.4-1.el6sat
  • python-pulp-common-0:2.4.4-1.el7sat
  • python-pulp-puppet-common-0:2.4.4-1.el6sat
  • python-pulp-puppet-common-0:2.4.4-1.el7sat
  • python-pulp-rpm-common-0:2.4.4-1.1.el6sat
  • python-pulp-rpm-common-0:2.4.4-1.1.el7sat
  • ruby193-rubygem-fog-0:1.21.0-3.2.el6sat
  • ruby193-rubygem-fog-0:1.21.0-3.2.el7sat
  • ruby193-rubygem-foreman-tasks-0:0.6.9-1.2.el6sat
  • ruby193-rubygem-foreman-tasks-0:0.6.9-1.2.el7sat
  • foreman-proxy-0:1.6.0.33-2.el6ost
  • foreman-proxy-0:1.3.0-7.el6ost