Vulnerabilities > CVE-2018-15375 - Write-what-where Condition vulnerability in Cisco IOS 15.5(2.21)T/15.6(3)M

047910
CVSS 6.7 - MEDIUM
Attack vector
LOCAL
Attack complexity
LOW
Privileges required
HIGH
Confidentiality impact
HIGH
Integrity impact
HIGH
Availability impact
HIGH
local
low complexity
cisco
CWE-123
nessus

Summary

A vulnerability in the embedded test subsystem of Cisco IOS Software for Cisco 800 Series Industrial Integrated Services Routers could allow an authenticated, local attacker to write arbitrary values to arbitrary locations in the memory space of an affected device. The vulnerability is due to the presence of certain test commands that were intended to be available only in internal development builds of the affected software. An attacker could exploit this vulnerability by using these commands on an affected device. A successful exploit could allow the attacker to write arbitrary values to arbitrary locations in the memory space of the affected device.

Vulnerable Configurations

Part Description Count
OS
Cisco
2

Common Weakness Enumeration (CWE)

Nessus

NASL familyCISCO
NASL idCISCO-SA-20180926-IR800-MEMWRITE.NASL
descriptionAccording to its self-reported version, Cisco IOS is affected by arbitrary memory write vulnerabilities in the embedded test subsystem due to the presence of certain test commands that were intended to be available only in internal development builds of the affected software. An authenticated, local attacker can exploit this, by using these commands on an affected device, to write arbitrary values to arbitrary locations in the memory space of an affected device. Please see the included Cisco BIDs and Cisco Security Advisory for more information. Note that Nessus has not tested for this issue but has instead relied only on the application
last seen2020-06-01
modified2020-06-02
plugin id132074
published2019-12-16
reporterThis script is Copyright (C) 2019 and is owned by Tenable, Inc. or an Affiliate thereof.
sourcehttps://www.tenable.com/plugins/nessus/132074
titleCisco IOS Software for Cisco 800 Series Industrial Integrated Services Routers Arbitrary Memory Write (cisco-sa-20180926-ir800-memwrite)
code
#TRUSTED 8242dedcdb5eede55078eb9922d219949330ae5d58c38673dbe5399a41d30c4eaaa8abe4062f085612ab0a173818f961ef7814202c76adc57716add03b8cf84ad92d7607193617db793a59ba68abae64aaf8861ec025bcaba94bab98d245a39c4e675266498a4be70b6538cfea22a180764577ef09a4d734ce28bd59aa818e6436704d32e4704772372bebaff4a5554d45c7e6115582657487e7c366eb6a34f9138faf9c9096c57ce64025e48154da5cd8fa3dc704fcda31a861687d32bb2def821ddd1061bdbe126b5a1807c2df8cb895ba3ceb083e398132740f1862fd361d054f363fed8028fcb4bb982dccea721e82c9450ec9ef008c62c50516868176aa06237aef7f82cc5251e6396ca4f7ce312ab24ae56b94859f3ea9687544b47d2322c477892d2cdad20d2ca652d7285223eb58d2c991cdffb2c5d60b5f93ff07370a12d6e0f1d106f78f90b41e82c54b6b4447e7a020ba7111f07cc410cc89f95dbb18e484d12c7efdb9b1d7e4ee6f752511e03c29299da25dd7ab6384329a59451fca6b2230d7b740a6dad4b390259f4ac4ca7059605365be9690ebe4af154028eb53ce0044023e3d6f19d8a88f4403b0e8add23558e0961aab33183ca41eb9914aba5bbb5f8d479de47f2820da5e6c709dbe4ef0fbf0285f9b05774ad3cf01e02de0762350fd2a84896ec19dd90ac8cac5181881464036eab67268d27b699206
#
# (C) Tenable Network Security, Inc.
#

include('compat.inc');

if (description)
{
  script_id(132074);
  script_version("1.4");
  script_cvs_date("Date: 2019/12/17");

  script_cve_id("CVE-2018-15375", "CVE-2018-15376");
  script_xref(name:"CISCO-BUG-ID", value:"CSCuy10473");
  script_xref(name:"CISCO-BUG-ID", value:"CSCvc82464");
  script_xref(name:"CISCO-SA", value:"cisco-sa-20180926-ir800-memwrite");

  script_name(english:"Cisco IOS Software for Cisco 800 Series Industrial Integrated Services Routers Arbitrary Memory Write (cisco-sa-20180926-ir800-memwrite)");

  script_set_attribute(attribute:"synopsis", value:
"The remote device is missing a vendor-supplied security patch.");
  script_set_attribute(attribute:"description", value:
"According to its self-reported version, Cisco IOS is affected by arbitrary memory write vulnerabilities in the
embedded test subsystem due to the presence of certain test commands that were intended to be available only in
internal development builds of the affected software. An authenticated, local attacker can exploit this, by using these
commands on an affected device, to write arbitrary values to arbitrary locations in the memory space of an affected
device.

Please see the included Cisco BIDs and Cisco Security Advisory for more information.

Note that Nessus has not tested for this issue but has instead relied only on the application's self-reported version
number.");
  # https://tools.cisco.com/security/center/content/CiscoSecurityAdvisory/cisco-sa-20180926-ir800-memwrite
  script_set_attribute(attribute:"see_also", value:"http://www.nessus.org/u?729a4459");
  script_set_attribute(attribute:"see_also", value:"https://bst.cloudapps.cisco.com/bugsearch/bug/CSCuy10473");
  script_set_attribute(attribute:"see_also", value:"https://bst.cloudapps.cisco.com/bugsearch/bug/CSCvc82464");
  script_set_attribute(attribute:"solution", value:
"Upgrade to the relevant fixed version referenced in Cisco bug ID(s) CSCvc82464 and CSCuy10473.");
  script_set_cvss_base_vector("CVSS2#AV:L/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:L/AC:L/PR:H/UI:N/S:U/C:H/I:H/A:H");
  script_set_cvss3_temporal_vector("CVSS:3.0/E:U/RL:O/RC:C");
  script_set_attribute(attribute:"cvss_score_source", value:"CVE-2018-15376");

  script_set_attribute(attribute:"exploitability_ease", value:"No known exploits are available");

  script_set_attribute(attribute:"vuln_publication_date", value:"2018/09/26");
  script_set_attribute(attribute:"patch_publication_date", value:"2018/09/26");
  script_set_attribute(attribute:"plugin_publication_date", value:"2019/12/16");

  script_set_attribute(attribute:"plugin_type", value:"local");
  script_set_attribute(attribute:"cpe", value:"cpe:/o:cisco:ios");
  script_end_attributes();

  script_category(ACT_GATHER_INFO);
  script_family(english:"CISCO");

  script_copyright(english:"This script is Copyright (C) 2019 and is owned by Tenable, Inc. or an Affiliate thereof.");

  script_dependencies("cisco_ios_version.nasl");
  script_require_keys("Host/Cisco/IOS/Version", "Host/Cisco/IOS/Model");

  exit(0);
}

include('cisco_workarounds.inc');
include('ccf.inc');

product_info = cisco::get_product_info(name:'Cisco IOS');

# Vulnerable model list contains all the 800 series routers
if (product_info['model'] !~ "^ISR8\d{2}([^0-9]|$)")
  audit(AUDIT_HOST_NOT, 'affected');

version_list = make_list(
  '15.5(3)M',
  '15.5(3)M1',
  '15.5(3)M0a',
  '15.5(3)M2',
  '15.5(3)M2a',
  '15.5(3)M3',
  '15.5(3)M4',
  '15.5(3)M4a',
  '15.5(3)M5',
  '15.5(3)M4b',
  '15.5(3)M4c',
  '15.5(3)M6',
  '15.5(3)M5a',
  '15.5(3)M7',
  '15.5(3)M6a',
  '15.6(1)T',
  '15.6(2)T',
  '15.6(1)T0a',
  '15.6(1)T1',
  '15.6(2)T1',
  '15.6(1)T2',
  '15.6(2)T0a',
  '15.6(2)T2',
  '15.6(1)T3',
  '15.6(2)T3',
  '15.6(2)SP3b',
  '15.3(3)JD15',
  '15.6(3)M',
  '15.6(3)M1',
  '15.6(3)M0a',
  '15.6(3)M1a',
  '15.6(3)M1b',
  '15.3(3)JDA15',
  '15.3(3)JI',
  '12.2(6)I1'
);

workarounds = make_list(CISCO_WORKAROUNDS['no_workaround']);
workaround_params = make_list();

reporting = make_array(
  'port'     , 0,
  'severity' , SECURITY_HOLE,
  'version'  , product_info['version'],
  'bug_id'   , 'CSCuy10473, CSCvc82464'
);

cisco::check_and_report(
  product_info:product_info,
  workarounds:workarounds,
  workaround_params:workaround_params,
  reporting:reporting,
  vuln_versions:version_list,
  router_only:TRUE
);