Vulnerabilities > CVE-2018-0155 - Improper Handling of Exceptional Conditions vulnerability in Cisco IOS and IOS XE

047910
CVSS 7.8 - HIGH
Attack vector
NETWORK
Attack complexity
LOW
Privileges required
NONE
Confidentiality impact
NONE
Integrity impact
NONE
Availability impact
COMPLETE
network
low complexity
cisco
rockwellautomation
CWE-755
nessus

Summary

A vulnerability in the Bidirectional Forwarding Detection (BFD) offload implementation of Cisco Catalyst 4500 Series Switches and Cisco Catalyst 4500-X Series Switches could allow an unauthenticated, remote attacker to cause a crash of the iosd process, causing a denial of service (DoS) condition. The vulnerability is due to insufficient error handling when the BFD header in a BFD packet is incomplete. An attacker could exploit this vulnerability by sending a crafted BFD message to or across an affected switch. A successful exploit could allow the attacker to trigger a reload of the system. This vulnerability affects Catalyst 4500 Supervisor Engine 6-E (K5), Catalyst 4500 Supervisor Engine 6L-E (K10), Catalyst 4500 Supervisor Engine 7-E (K10), Catalyst 4500 Supervisor Engine 7L-E (K10), Catalyst 4500E Supervisor Engine 8-E (K10), Catalyst 4500E Supervisor Engine 8L-E (K10), Catalyst 4500E Supervisor Engine 9-E (K10), Catalyst 4500-X Series Switches (K10), Catalyst 4900M Switch (K5), Catalyst 4948E Ethernet Switch (K5). Cisco Bug IDs: CSCvc40729.

Nessus

  • NASL familyCISCO
    NASL idCISCO-SA-20180328.NASL
    descriptionA denial of service (DoS) vulnerability exists in the Bidirectional Forwarding Detection (BFD) offload implementation of Cisco Catalyst 4500 Series Switches and Cisco Catalyst 4500-X Series Switches due to insufficient error handling when the BFD header in a BFD packet is incomplete. An unauthenticated, remote attacker can exploit this issue by sending crafted BFD message to or across an affected switch. If the attacker is succesful then this could allow the attacker to trigger a reload of the system. Please see the included Cisco BIDs and Cisco Security Advisory for more information
    last seen2020-04-30
    modified2020-04-23
    plugin id135922
    published2020-04-23
    reporterThis script is Copyright (C) 2020 and is owned by Tenable, Inc. or an Affiliate thereof.
    sourcehttps://www.tenable.com/plugins/nessus/135922
    titleCisco IOS and IOS XE Software Denial of Service Vulnerability (cisco-sa-20180328-bfd)
    code
    #
    # (C) Tenable Network Security, Inc.
    #
    
    include('compat.inc');
    
    if (description)
    {
      script_id(135922);
      script_version("1.2");
      script_set_attribute(attribute:"plugin_modification_date", value:"2020/04/24");
    
      script_cve_id("CVE-2018-0155");
      script_bugtraq_id(103565);
      script_xref(name:"CISCO-BUG-ID", value:"CSCvc40729");
      script_xref(name:"CISCO-SA", value:"cisco-sa-20180328-bfd");
    
      script_name(english:"Cisco IOS and IOS XE Software Denial of Service Vulnerability (cisco-sa-20180328-bfd)");
    
      script_set_attribute(attribute:"synopsis", value:
    "The remote device is missing a vendor-supplied security patch");
      script_set_attribute(attribute:"description", value:
    "A denial of service (DoS) vulnerability exists in the Bidirectional Forwarding Detection (BFD) offload implementation of
    Cisco Catalyst 4500 Series Switches and Cisco Catalyst 4500-X Series Switches due to insufficient error handling when the
    BFD header in a BFD packet is incomplete. An unauthenticated, remote attacker can exploit this issue by sending crafted
    BFD message to or across an affected switch. If the attacker is succesful then this could allow the attacker to trigger
    a reload of the system.
    
    Please see the included Cisco BIDs and Cisco Security Advisory for more information");
      # https://tools.cisco.com/security/center/content/CiscoSecurityAdvisory/cisco-sa-20180328-bfd
      script_set_attribute(attribute:"see_also", value:"http://www.nessus.org/u?c66d9346");
      script_set_attribute(attribute:"see_also", value:"https://bst.cloudapps.cisco.com/bugsearch/bug/CSCvc40729");
      script_set_attribute(attribute:"solution", value:
    "Upgrade to the relevant fixed version referenced in Cisco bug IDs CSCvc40729");
      script_set_cvss_base_vector("CVSS2#AV:N/AC:L/Au:N/C:N/I:N/A:C");
      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:C/C:N/I:N/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-0155");
    
      script_set_attribute(attribute:"exploitability_ease", value:"No known exploits are available");
      script_cwe_id(388);
    
      script_set_attribute(attribute:"vuln_publication_date", value:"2018/03/28");
      script_set_attribute(attribute:"patch_publication_date", value:"2018/03/28");
      script_set_attribute(attribute:"plugin_publication_date", value:"2020/04/23");
    
      script_set_attribute(attribute:"plugin_type", value:"combined");
      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) 2020 and is owned by Tenable, Inc. or an Affiliate thereof.");
    
      script_dependencies("cisco_ios_version.nasl");
      script_require_keys("Host/Cisco/show_ver");
    
      exit(0);
    }
    
    include('ccf.inc');
    include('cisco_workarounds.inc');
    
    product_info = cisco::get_product_info(name:'Cisco IOS');
    
    if (product_info['model'] !~ "4(500(E|-X)?)|(9(00M|48E))")
      audit(AUDIT_DEVICE_NOT_VULN, 'The Model ' + product_info['model']);
    
    
    vuln_versions = [
      '15.1SG',
      '15.1(1)SG',
      '15.1(2)SG',
      '15.1(1)SG1',
      '15.1(1)SG2',
      '15.1(2)SG1',
      '15.1(2)SG2',
      '15.1(2)SG3',
      '15.1(2)SG4',
      '15.1(2)SG5',
      '15.1(2)SG6',
      '15.1(2)SG7',
      '15.1(2)SG8',
      '15.2E',
      '15.2(1)E',
      '15.2(2)E',
      '15.2(1)E1',
      '15.2(3)E',
      '15.2(1)E3',
      '15.2(2)E1',
      '15.2(2b)E',
      '15.2(4)E',
      '15.2(3)E1',
      '15.2(2)E2',
      '15.2(2)E3',
      '15.2(3)E2',
      '15.2(3)E3',
      '15.2(4)E1',
      '15.2(2)E4',
      '15.2(2)E5',
      '15.2(4)E2',
      '15.2(3)E4',
      '15.2(4)E3',
      '15.2(2)E6',
      '15.2(2)E5a',
      '15.2(3)E5',
      '15.2(2)E5b',
      '15.2(4)E4',
      '15.2(2)E7',
      '15.2(4)E5',
      '15.2(2)E7b',
      '15.2(4)E5a',
      '15.2(4s)E2'
    ];
    
    workarounds = make_list(CISCO_WORKAROUNDS['bfd']);
    workaround_params = [];
    
    reporting = make_array(
      'port'     , 0,
      'severity' , SECURITY_HOLE,
      'version'  , product_info['version']
    );
    
    cisco::check_and_report(
      product_info:product_info,
      workarounds       : workarounds,
      workaround_params : workaround_params,
      reporting         : reporting,
      vuln_versions     : vuln_versions
    );
    
  • NASL familyCISCO
    NASL idCISCO-SA-20180328-BFD.NASL
    descriptionAccording to its self-reported version, Cisco IOS is affected by a denial of service (DoS) vulnerability in the Bidirectional Forwarding Detection (BFD) offload implementation due to insufficient error handling when the BFD header in a BFD packet is incomplete. An unauthenticated, remote attacker could exploit this, by sending a crafted BFD message to or across an affected switch, in order to crash the iosd process and trigger a system reload. 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 id132680
    published2020-01-07
    reporterThis script is Copyright (C) 2020 and is owned by Tenable, Inc. or an Affiliate thereof.
    sourcehttps://www.tenable.com/plugins/nessus/132680
    titleCisco IOS Software Bidirectional Forwarding Detection DoS (cisco-sa-20180328-bfd)
    code
    #TRUSTED 96abbf4d08fc0e64a92c87ed64d3d03eab80d7068d36588fa6a0a0d90cc9b99029353cc0b6bbfb4d256a0824e7f441e629961e88e93142e5f5d959eba7ac074716d73ec5e512ec0d84df325e0f0535faa567fef060237d97c029f19472b2ab74b13a85ba4f2e2d4b28379884f1feef7f285e427112da4249c9bb794b19456048167cab356b20cf5a91c86a3c113ee9b002fcaaff762df32588b380eaeec09bacec177ab17827b9450971ba4979845b4d6589f9cfddc2dbc275279f62b57cf83c3268e3ec31c3604cf65310de5f4322439bf0e98a64ae6edb98c313d3c00648033a3bbb4391a2ddec9e69a6838b4550a9369cf762622db2d8062d2c091b1191765354f7bf76a44987ebe7b9667b4a677e0680bd9e08c88197910e48f315d46869b55def9e1e1596c08ae98362d23cb84cf1b103e11989514368537d7ffc95839d08e6f440a9f5f7dcad9404db254af02a0440ebe2df0939760dff80d89d04effe884906105316feb9afd8f34b6a0667c0af49cc4b969727a5b85aa4987d1c5389e182dfc8c0d45722706288d72e18f1f6cb7999bf5c596733b805b475ba0fad3d4c4651bf65d1fb751703f64e6d8b4073f50a456541359ab8c6626d7b8333ad852bfd22fe2914efa9127d0b5b84d3f43f6c018b1c19f7da8b276cbb191592fbe3fa4e54cfc23778670b0b36e6b4ea28a0605c9acb8fc61e888bfb165bbf682152
    #
    # (C) Tenable Network Security, Inc.
    #
    
    include('compat.inc');
    
    if (description)
    {
      script_id(132680);
      script_version("1.4");
      script_cvs_date("Date: 2020/01/09");
    
      script_cve_id("CVE-2018-0155");
      script_bugtraq_id(103565);
      script_xref(name:"CISCO-BUG-ID", value:"CSCvc40729");
      script_xref(name:"CISCO-SA", value:"cisco-sa-20180328-bfd");
      script_xref(name:"IAVA", value:"2018-A-0098");
    
      script_name(english:"Cisco IOS Software Bidirectional Forwarding Detection DoS (cisco-sa-20180328-bfd)");
    
      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 a denial of service (DoS) vulnerability in the
    Bidirectional Forwarding Detection (BFD) offload implementation due to insufficient error handling when the BFD header
    in a BFD packet is incomplete. An unauthenticated, remote attacker could exploit this, by sending a crafted BFD message
    to or across an affected switch, in order to crash the iosd process and trigger a system reload.
    
    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-20180328-bfd
      script_set_attribute(attribute:"see_also", value:"http://www.nessus.org/u?c66d9346");
      script_set_attribute(attribute:"see_also", value:"https://bst.cloudapps.cisco.com/bugsearch/bug/CSCvc40729");
      script_set_attribute(attribute:"solution", value:
    "Upgrade to the relevant fixed version referenced in Cisco bug ID(s) CSCvc40729.");
      script_set_cvss_base_vector("CVSS2#AV:N/AC:L/Au:N/C:N/I:N/A:C");
      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:C/C:N/I:N/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-0155");
    
      script_set_attribute(attribute:"exploitability_ease", value:"No known exploits are available");
    
      script_set_attribute(attribute:"vuln_publication_date", value:"2018/03/28");
      script_set_attribute(attribute:"patch_publication_date", value:"2018/03/28");
      script_set_attribute(attribute:"plugin_publication_date", value:"2020/01/07");
    
      script_set_attribute(attribute:"potential_vulnerability", value:"true");
      script_set_attribute(attribute:"plugin_type", value:"local");
      script_set_attribute(attribute:"cpe", value:"cpe:/o:cisco:ios");
      script_set_attribute(attribute:"stig_severity", value:"I");
      script_end_attributes();
    
      script_category(ACT_GATHER_INFO);
      script_family(english:"CISCO");
    
      script_copyright(english:"This script is Copyright (C) 2020 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", "Settings/ParanoidReport");
    
      exit(0);
    }
    
    include('audit.inc');
    include('cisco_workarounds.inc');
    include('ccf.inc');
    
    if (report_paranoia < 2) audit(AUDIT_PARANOID);
    
    product_info = cisco::get_product_info(name:'Cisco IOS');
    
    if ('catalyst' >!< tolower(product_info.model) || product_info.model !~ "4[59]\d\d(^\d|$)")
      audit(AUDIT_HOST_NOT, "affected");
    
    version_list = make_list(
      '15.1(1)SG',
      '15.1(2)SG',
      '15.1(1)SG1',
      '15.1(1)SG2',
      '15.1(2)SG1',
      '15.1(2)SG2',
      '15.1(2)SG3',
      '15.1(2)SG4',
      '15.1(2)SG5',
      '15.1(2)SG6',
      '15.1(2)SG7',
      '15.1(2)SG8',
      '15.2(1)E',
      '15.2(2)E',
      '15.2(1)E1',
      '15.2(3)E',
      '15.2(1)E3',
      '15.2(2)E1',
      '15.2(2b)E',
      '15.2(4)E',
      '15.2(3)E1',
      '15.2(2)E2',
      '15.2(2)E3',
      '15.2(3)E2',
      '15.2(3)E3',
      '15.2(4)E1',
      '15.2(2)E4',
      '15.2(2)E5',
      '15.2(4)E2',
      '15.2(3)E4',
      '15.2(4)E3',
      '15.2(2)E6',
      '15.2(2)E5a',
      '15.2(3)E5',
      '15.2(2)E5b',
      '15.2(4)E4',
      '15.2(2)E7',
      '15.2(4)E5',
      '15.2(2)E7b',
      '15.2(4)E5a',
      '15.2(4s)E2'
    );
    
    # Script is paranoid, so workarounds should be omitted
    workarounds = make_list(CISCO_WORKAROUNDS['no_workaround']);
    
    reporting = make_array(
      'port'     , 0,
      'severity' , SECURITY_HOLE,
      'version'  , product_info['version'],
      'bug_id'   , 'CSCvc40729'
    );
    
    cisco::check_and_report(
      product_info:product_info,
      workarounds:workarounds,
      reporting:reporting,
      vuln_versions:version_list
    );