Vulnerabilities > CVE-2019-6651 - Information Exposure Through Discrepancy vulnerability in F5 products

047910
CVSS 5.3 - MEDIUM
Attack vector
NETWORK
Attack complexity
LOW
Privileges required
NONE
Confidentiality impact
LOW
Integrity impact
NONE
Availability impact
NONE
network
low complexity
f5
CWE-203
nessus

Summary

In BIG-IP 15.0.0, 14.1.0-14.1.0.6, 14.0.0-14.0.0.5, 13.0.0-13.1.1.5, 12.1.0-12.1.4.1, 11.5.1-11.6.4, BIG-IQ 7.0.0, 6.0.0-6.1.0,5.2.0-5.4.0, iWorkflow 2.3.0, and Enterprise Manager 3.1.1, the Configuration utility login page may not follow best security practices when handling a malicious request.

Vulnerable Configurations

Part Description Count
Application
F5
1095

Common Weakness Enumeration (CWE)

Nessus

NASL familyF5 Networks Local Security Checks
NASL idF5_BIGIP_SOL89509323.NASL
descriptionThe BIG-IP/BIG-IQ Configuration utility login page may not follow best security practices when handling a malicious request.(CVE-2019-6651) Impact The Configuration utility login page returns an inconsistent HTTP response when processing modified requests which may provide clues to an attacker looking to exploit vulnerabilities on the system.
last seen2020-06-01
modified2020-06-02
plugin id129317
published2019-09-25
reporterThis script is Copyright (C) 2019 and is owned by Tenable, Inc. or an Affiliate thereof.
sourcehttps://www.tenable.com/plugins/nessus/129317
titleF5 Networks BIG-IP : REST Framework vulnerability (K89509323)
code
#
# (C) Tenable Network Security, Inc.
#
# The descriptive text and package checks in this plugin were
# extracted from F5 Networks BIG-IP Solution K89509323.
#
# The text description of this plugin is (C) F5 Networks.
#

include("compat.inc");

if (description)
{
  script_id(129317);
  script_version("1.5");
  script_cvs_date("Date: 2019/12/31");

  script_cve_id("CVE-2019-6651");

  script_name(english:"F5 Networks BIG-IP : REST Framework vulnerability (K89509323)");
  script_summary(english:"Checks the BIG-IP version.");

  script_set_attribute(
    attribute:"synopsis", 
    value:"The remote device is missing a vendor-supplied security patch."
  );
  script_set_attribute(
    attribute:"description", 
    value:
"The BIG-IP/BIG-IQ Configuration utility login page may not follow best
security practices when handling a malicious request.(CVE-2019-6651)

Impact

The Configuration utility login page returns an inconsistent HTTP
response when processing modified requests which may provide clues to
an attacker looking to exploit vulnerabilities on the system."
  );
  script_set_attribute(
    attribute:"see_also",
    value:"https://support.f5.com/csp/article/K89509323"
  );
  script_set_attribute(
    attribute:"solution", 
    value:
"Upgrade to one of the non-vulnerable versions listed in the F5
Solution K89509323."
  );
  script_set_cvss_base_vector("CVSS2#AV:N/AC:L/Au:N/C:P/I:N/A:N");
  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:U/C:L/I:N/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:"potential_vulnerability", value:"true");
  script_set_attribute(attribute:"plugin_type", value:"local");
  script_set_attribute(attribute:"cpe", value:"cpe:/a:f5:big-ip_access_policy_manager");
  script_set_attribute(attribute:"cpe", value:"cpe:/a:f5:big-ip_advanced_firewall_manager");
  script_set_attribute(attribute:"cpe", value:"cpe:/a:f5:big-ip_application_acceleration_manager");
  script_set_attribute(attribute:"cpe", value:"cpe:/a:f5:big-ip_application_security_manager");
  script_set_attribute(attribute:"cpe", value:"cpe:/a:f5:big-ip_application_visibility_and_reporting");
  script_set_attribute(attribute:"cpe", value:"cpe:/a:f5:big-ip_global_traffic_manager");
  script_set_attribute(attribute:"cpe", value:"cpe:/a:f5:big-ip_link_controller");
  script_set_attribute(attribute:"cpe", value:"cpe:/a:f5:big-ip_local_traffic_manager");
  script_set_attribute(attribute:"cpe", value:"cpe:/a:f5:big-ip_policy_enforcement_manager");
  script_set_attribute(attribute:"cpe", value:"cpe:/a:f5:big-ip_webaccelerator");
  script_set_attribute(attribute:"cpe", value:"cpe:/h:f5:big-ip");

  script_set_attribute(attribute:"vuln_publication_date", value:"2019/09/25");
  script_set_attribute(attribute:"patch_publication_date", value:"2019/09/24");
  script_set_attribute(attribute:"plugin_publication_date", value:"2019/09/25");
  script_set_attribute(attribute:"generated_plugin", value:"current");
  script_end_attributes();

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

  script_dependencies("f5_bigip_detect.nbin");
  script_require_keys("Host/local_checks_enabled", "Host/BIG-IP/hotfix", "Host/BIG-IP/modules", "Host/BIG-IP/version", "Settings/ParanoidReport");

  exit(0);
}


include("f5_func.inc");

if ( ! get_kb_item("Host/local_checks_enabled") ) audit(AUDIT_LOCAL_CHECKS_NOT_ENABLED);
version = get_kb_item("Host/BIG-IP/version");
if ( ! version ) audit(AUDIT_OS_NOT, "F5 Networks BIG-IP");
if ( isnull(get_kb_item("Host/BIG-IP/hotfix")) ) audit(AUDIT_KB_MISSING, "Host/BIG-IP/hotfix");
if ( ! get_kb_item("Host/BIG-IP/modules") ) audit(AUDIT_KB_MISSING, "Host/BIG-IP/modules");

sol = "K89509323";
vmatrix = make_array();

if (report_paranoia < 2) audit(AUDIT_PARANOID);

# AFM
vmatrix["AFM"] = make_array();
vmatrix["AFM"]["affected"  ] = make_list("15.0.0","14.0.0-14.1.0","13.1.0-13.1.1","12.1.0-12.1.4","11.5.2-11.6.4");
vmatrix["AFM"]["unaffected"] = make_list("15.1.0","15.0.1","14.1.2","14.0.1","13.1.3","12.1.5","11.6.5");

# AM
vmatrix["AM"] = make_array();
vmatrix["AM"]["affected"  ] = make_list("15.0.0","14.0.0-14.1.0","13.1.0-13.1.1","12.1.0-12.1.4","11.5.2-11.6.4");
vmatrix["AM"]["unaffected"] = make_list("15.1.0","15.0.1","14.1.2","14.0.1","13.1.3","12.1.5","11.6.5");

# APM
vmatrix["APM"] = make_array();
vmatrix["APM"]["affected"  ] = make_list("15.0.0","14.0.0-14.1.0","13.1.0-13.1.1","12.1.0-12.1.4","11.5.2-11.6.4");
vmatrix["APM"]["unaffected"] = make_list("15.1.0","15.0.1","14.1.2","14.0.1","13.1.3","12.1.5","11.6.5");

# ASM
vmatrix["ASM"] = make_array();
vmatrix["ASM"]["affected"  ] = make_list("15.0.0","14.0.0-14.1.0","13.1.0-13.1.1","12.1.0-12.1.4","11.5.2-11.6.4");
vmatrix["ASM"]["unaffected"] = make_list("15.1.0","15.0.1","14.1.2","14.0.1","13.1.3","12.1.5","11.6.5");

# AVR
vmatrix["AVR"] = make_array();
vmatrix["AVR"]["affected"  ] = make_list("15.0.0","14.0.0-14.1.0","13.1.0-13.1.1","12.1.0-12.1.4","11.5.2-11.6.4");
vmatrix["AVR"]["unaffected"] = make_list("15.1.0","15.0.1","14.1.2","14.0.1","13.1.3","12.1.5","11.6.5");

# GTM
vmatrix["GTM"] = make_array();
vmatrix["GTM"]["affected"  ] = make_list("15.0.0","14.0.0-14.1.0","13.1.0-13.1.1","12.1.0-12.1.4","11.5.2-11.6.4");
vmatrix["GTM"]["unaffected"] = make_list("15.1.0","15.0.1","14.1.2","14.0.1","13.1.3","12.1.5","11.6.5");

# LC
vmatrix["LC"] = make_array();
vmatrix["LC"]["affected"  ] = make_list("15.0.0","14.0.0-14.1.0","13.1.0-13.1.1","12.1.0-12.1.4","11.5.2-11.6.4");
vmatrix["LC"]["unaffected"] = make_list("15.1.0","15.0.1","14.1.2","14.0.1","13.1.3","12.1.5","11.6.5");

# LTM
vmatrix["LTM"] = make_array();
vmatrix["LTM"]["affected"  ] = make_list("15.0.0","14.0.0-14.1.0","13.1.0-13.1.1","12.1.0-12.1.4","11.5.2-11.6.4");
vmatrix["LTM"]["unaffected"] = make_list("15.1.0","15.0.1","14.1.2","14.0.1","13.1.3","12.1.5","11.6.5");

# PEM
vmatrix["PEM"] = make_array();
vmatrix["PEM"]["affected"  ] = make_list("15.0.0","14.0.0-14.1.0","13.1.0-13.1.1","12.1.0-12.1.4","11.5.2-11.6.4");
vmatrix["PEM"]["unaffected"] = make_list("15.1.0","15.0.1","14.1.2","14.0.1","13.1.3","12.1.5","11.6.5");

# WAM
vmatrix["WAM"] = make_array();
vmatrix["WAM"]["affected"  ] = make_list("15.0.0","14.0.0-14.1.0","13.1.0-13.1.1","12.1.0-12.1.4","11.5.2-11.6.4");
vmatrix["WAM"]["unaffected"] = make_list("15.1.0","15.0.1","14.1.2","14.0.1","13.1.3","12.1.5","11.6.5");


if (bigip_is_affected(vmatrix:vmatrix, sol:sol))
{
  if (report_verbosity > 0) security_warning(port:0, extra:bigip_report_get());
  else security_warning(0);
  exit(0);
}
else
{
  tested = bigip_get_tested_modules();
  audit_extra = "For BIG-IP module(s) " + tested + ",";
  if (tested) audit(AUDIT_INST_VER_NOT_VULN, audit_extra, version);
  else audit(AUDIT_HOST_NOT, "running any of the affected modules");
}