code | #
# (C) Tenable Network Security, Inc.
#
# The descriptive text and package checks in this plugin were
# extracted from F5 Networks BIG-IP Solution K29149494.
#
# The text description of this plugin is (C) F5 Networks.
#
include("compat.inc");
if (description)
{
script_id(126401);
script_version("1.5");
script_set_attribute(attribute:"plugin_modification_date", value:"2020/03/09");
script_cve_id("CVE-2019-6637");
script_name(english:"F5 Networks BIG-IP : iControl REST vulnerability (K29149494)");
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:
"Application logic abuse of ASM REST endpoints can lead to instability
of BIG-IP system. Exploitation of this issue causes excessive memory
consumption which results in the Linux kernel triggering OOM killer on
arbitrary processes. The attack requires an authenticated user with
role of 'Guest' or greater privilege. Note: 'No Access' cannot login
so technically it's a role but a user with this access role cannot
perform the attack. (CVE-2019-6637)
Impact
BIG-IP ASM
When the vulnerability is exploited, the affected BIG-IP ASM system
may experience excessive memory consumption to the point where the
Linux kernel triggers OOM killer, resulting in a
possibledenial-of-service (DoS).
BIG-IP (LTM, AAM, AFM, Analytics, APM, DNS, Edge Gateway, FPS, GTM,
Link Controller, PEM, WebAccelerator) / BIG-IQ / Enterprise Manager /
F5 iWorkflow / Traffix SDC
There is no impact; these F5 products are not affected by this
vulnerability."
);
script_set_attribute(
attribute:"see_also",
value:"https://support.f5.com/csp/article/K29149494"
);
script_set_attribute(
attribute:"solution",
value:
"Upgrade to one of the non-vulnerable versions listed in the F5
Solution K29149494."
);
script_set_cvss_base_vector("CVSS2#AV:N/AC:L/Au:S/C:N/I:N/A:P");
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:L/UI:N/S:U/C:N/I:N/A:H");
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:"plugin_type", value:"local");
script_set_attribute(attribute:"cpe", value:"cpe:/a:f5:big-ip_application_security_manager");
script_set_attribute(attribute:"cpe", value:"cpe:/h:f5:big-ip");
script_set_attribute(attribute:"vuln_publication_date", value:"2019/07/03");
script_set_attribute(attribute:"patch_publication_date", value:"2019/07/01");
script_set_attribute(attribute:"plugin_publication_date", value:"2019/07/02");
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-2020 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");
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 = "K29149494";
vmatrix = make_array();
# ASM
vmatrix["ASM"] = make_array();
vmatrix["ASM"]["affected" ] = make_list("14.1.0","14.0.0","13.0.0-13.1.1","12.1.2-12.1.4");
vmatrix["ASM"]["unaffected"] = make_list("15.0.0","14.1.0.6","14.0.0.5","13.1.1.5","12.1.4.1");
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 the affected module ASM");
}
|