IBM Tivoli Provisioning Manager Express for Software Distribution Isig.isigCtl.1 ActiveX RunAndUploadFile Method Boundary Error Remote Overflow - Nessus

High   Plugin ID: 58389

This page contains detailed information about the IBM Tivoli Provisioning Manager Express for Software Distribution Isig.isigCtl.1 ActiveX RunAndUploadFile Method Boundary Error Remote Overflow Nessus plugin including available exploits and PoCs found on GitHub, in Metasploit or Exploit-DB for verifying of this vulnerability.

Plugin Overview


ID: 58389
Name: IBM Tivoli Provisioning Manager Express for Software Distribution Isig.isigCtl.1 ActiveX RunAndUploadFile Method Boundary Error Remote Overflow
Filename: tivoli_provisioning_manager_express_activex_runanduploadfile_bof.nasl
Vulnerability Published: 2012-03-01
This Plugin Published: 2012-03-19
Last Modification Time: 2018-11-15
Plugin Version: 1.15
Plugin Type: local
Plugin Family: Windows
Dependencies: smb_hotfixes.nasl
Required KB Items [?]: SMB/Registry/Enumerated, SMB/WindowsVersion

Vulnerability Information


Severity: High
Vulnerability Published: 2012-03-01
Patch Published: N/A
CVE [?]: CVE-2012-0198
CPE [?]: cpe:/a:ibm:tivoli_provisioning_manager_express
Exploited by Malware: True

Synopsis

The remote Windows host has an ActiveX control installed that is affected by a buffer overflow vulnerability.

Description

The remote host has the IBM Tivoli Provisioning Manager Express for Software Distribution Isig.isigCtl.1 ActiveX control installed. This control fails to properly parse data supplied to the 'RunAndUploadFile()' function due to an unsafe call to 'strcat', which can lead to a stack-based buffer overflow.

By tricking a user into opening a specially crafted web page, a remote, unauthenticated attacker could execute arbitrary code on the remote host subject to the user's privileges.

Solution

Remove or disable the control as fixes are not available.

Public Exploits


Target Network Port(s): 139, 445
Target Asset(s): N/A
Exploit Available: True (Metasploit Framework, Exploit-DB, Immunity Canvas, Core Impact)
Exploit Ease: Exploits are available

Here's the list of publicly known exploits and PoCs for verifying the IBM Tivoli Provisioning Manager Express for Software Distribution Isig.isigCtl.1 ActiveX RunAndUploadFile Method Boundary Error Remote Overflow vulnerability:

  1. Metasploit: exploit/windows/browser/ibm_tivoli_pme_activex_bof
    [IBM Tivoli Provisioning Manager Express for Software Distribution Isig.isigCtl.1 ActiveX RunAndUploadFile() Method Overflow]
  2. Exploit-DB: exploits/windows/remote/18727.rb
    [EDB-18727: IBM Tivoli Provisioning Manager Express for Software Distribution Isig.isigCtl.1 - ActiveX RunAndUploadFile() Method Overflow (Metasploit)]
  3. Immunity Canvas: D2ExploitPack

Before running any exploit against any system, make sure you are authorized by the owner of the target system(s) to perform such activity. In any other case, this would be considered as an illegal activity.

WARNING: Beware of using unverified exploits from sources such as GitHub or Exploit-DB. These exploits and PoCs could contain malware. For more information, see how to use exploits safely.

Risk Information


CVSS V2 Vector [?]: AV:N/AC:M/Au:N/C:C/I:C/A:C/E:H/RL:OF/RC:C
CVSS Base Score:9.3 (High)
Impact Subscore:10.0
Exploitability Subscore:8.6
CVSS Temporal Score:8.1 (High)
CVSS Environmental Score:NA (None)
Modified Impact Subscore:NA
Overall CVSS Score:8.1 (High)

Go back to menu.

Plugin Source


This is the tivoli_provisioning_manager_express_activex_runanduploadfile_bof.nasl nessus plugin source code. This script is Copyright (C) 2012-2018 Tenable Network Security, Inc.


# (C) Tenable Network Security, Inc.
#

include('compat.inc');

if (description)
{
  script_id(58389);
  script_version("1.15");
  script_cvs_date("Date: 2018/11/15 20:50:29");

  script_cve_id("CVE-2012-0198");
  script_bugtraq_id(52252);
  script_xref(name:"EDB-ID", value:"18727");

  script_name(english:"IBM Tivoli Provisioning Manager Express for Software Distribution Isig.isigCtl.1 ActiveX RunAndUploadFile Method Boundary Error Remote Overflow");
  script_summary(english:"Checks if the kill bit is set");

  script_set_attribute(attribute:"synopsis", value:
"The remote Windows host has an ActiveX control installed that is
affected by a buffer overflow vulnerability.");
  script_set_attribute(attribute:"description", value:
"The remote host has the IBM Tivoli Provisioning Manager Express for
Software Distribution Isig.isigCtl.1 ActiveX control installed.  This
control fails to properly parse data supplied to the
'RunAndUploadFile()' function due to an unsafe call to 'strcat', which
can lead to a stack-based buffer overflow.

By tricking a user into opening a specially crafted web page, a
remote, unauthenticated attacker could execute arbitrary code on the
remote host subject to the user's privileges.");
  script_set_attribute(attribute:"see_also", value:"https://www.zerodayinitiative.com/advisories/ZDI-12-040/");
  # http://www-01.ibm.com/common/ssi/cgi-bin/ssialias?subtype=ca&infotype=an&appname=iSource&supplier=897&letternum=ENUS911-055
  script_set_attribute(attribute:"see_also", value:"http://www.nessus.org/u?ffe4d481");
  script_set_attribute(attribute:"solution", value:"Remove or disable the control as fixes are not available.");
  script_set_cvss_base_vector("CVSS2#AV:N/AC:M/Au:N/C:C/I:C/A:C");
  script_set_cvss_temporal_vector("CVSS2#E:H/RL:OF/RC:C");
  script_set_attribute(attribute:"exploitability_ease", value:"Exploits are available");
  script_set_attribute(attribute:"exploit_available", value:"true");
  script_set_attribute(attribute:"exploit_framework_core", value:"true");
  script_set_attribute(attribute:"exploited_by_malware", value:"true");
  script_set_attribute(attribute:"metasploit_name", value:'IBM Tivoli Provisioning Manager Express for Software Distribution Isig.isigCtl.1 ActiveX RunAndUploadFile() Method Overflow');
  script_set_attribute(attribute:"exploit_framework_metasploit", value:"true");
  script_set_attribute(attribute:"exploit_framework_canvas", value:"true");
  script_set_attribute(attribute:"canvas_package", value:'D2ExploitPack');
script_set_attribute(attribute:"vuln_publication_date", value:"2012/03/01");
  script_set_attribute(attribute:"plugin_publication_date", value:"2012/03/19");

  script_set_attribute(attribute:"plugin_type", value:"local");
  script_set_attribute(attribute:"cpe", value:"cpe:/a:ibm:tivoli_provisioning_manager_express");
  script_end_attributes();

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

  script_copyright(english:"This script is Copyright (C) 2012-2018 Tenable Network Security, Inc.");

  script_dependencies("smb_hotfixes.nasl");
  script_require_keys("SMB/Registry/Enumerated", "SMB/WindowsVersion");
  script_require_ports(139, 445);

  exit(0);
}

include('smb_func.inc');
include('smb_activex_func.inc');
include('misc_func.inc');
include('global_settings.inc');

get_kb_item_or_exit('SMB/Registry/Enumerated');
get_kb_item_or_exit('SMB/WindowsVersion', exit_code:1);

if (activex_init() != ACX_OK) exit(1, 'activex_init() failed.');

clsid = '{84B74E82-3475-420E-9949-773B4FB91771}';

# Make sure the control is installed
file = activex_get_filename(clsid:clsid);
if (isnull(file))
{
  activex_end();
  exit(1, "activex_get_filename() returned NULL.");
}
if (!file)
{
  activex_end();
  exit(0, "The control is not installed since the class id '"+clsid+"' is not defined on the remote host.");
}

# Get its version
version = activex_get_fileversion(clsid:clsid);
if (!version) version = 'unknown';

info = "";
if (report_paranoia > 1 || activex_get_killbit(clsid:clsid) == 0)
{
  info +=
    '\n  Class identifier  : ' + clsid +
    '\n  Filename          : ' + file +
    '\n  Installed version : ' + version + '\n';
}
activex_end();

# Report findings.
if (info)
{
  if (report_paranoia > 1)
  {
    report = info +
      '\n' +
      'Note, though, that Nessus did not check whether the kill bit was\n' +
      "set for the control's CLSID because of the Report Paranoia setting" + '\n' +
      'in effect when this scan was run.\n';
  }
  else
  {
    report = info +
      '\n' +
      'Moreover, its kill bit is not set so it is accessible via Internet\n' +
      'Explorer.\n';
  }

  if (report_verbosity > 0) security_hole(port:kb_smb_transport(), extra:report);
  else security_hole(kb_smb_transport());

  exit(0);
}
else exit(0, "The control is installed, but its kill bit is set.");

The latest version of this script can be found in these locations depending on your platform:

  • Linux / Unix:
    /opt/nessus/lib/nessus/plugins/tivoli_provisioning_manager_express_activex_runanduploadfile_bof.nasl
  • Windows:
    C:\ProgramData\Tenable\Nessus\nessus\plugins\tivoli_provisioning_manager_express_activex_runanduploadfile_bof.nasl
  • Mac OS X:
    /Library/Nessus/run/lib/nessus/plugins/tivoli_provisioning_manager_express_activex_runanduploadfile_bof.nasl

Go back to menu.

How to Run


Here is how to run the IBM Tivoli Provisioning Manager Express for Software Distribution Isig.isigCtl.1 ActiveX RunAndUploadFile Method Boundary Error Remote Overflow as a standalone plugin via the Nessus web user interface (https://localhost:8834/):

  1. Click to start a New Scan.
  2. Select Advanced Scan.
  3. Navigate to the Plugins tab.
  4. On the top right corner click to Disable All plugins.
  5. On the left side table select Windows plugin family.
  6. On the right side table select IBM Tivoli Provisioning Manager Express for Software Distribution Isig.isigCtl.1 ActiveX RunAndUploadFile Method Boundary Error Remote Overflow plugin ID 58389.
  7. Specify the target on the Settings tab and click to Save the scan.
  8. Run the scan.

Here are a few examples of how to run the plugin in the command line. Note that the examples below demonstrate the usage on the Linux / Unix platform.

Basic usage:

/opt/nessus/bin/nasl tivoli_provisioning_manager_express_activex_runanduploadfile_bof.nasl -t <IP/HOST>

Run the plugin with audit trail message on the console:

/opt/nessus/bin/nasl -a tivoli_provisioning_manager_express_activex_runanduploadfile_bof.nasl -t <IP/HOST>

Run the plugin with trace script execution written to the console (useful for debugging):

/opt/nessus/bin/nasl -T - tivoli_provisioning_manager_express_activex_runanduploadfile_bof.nasl -t <IP/HOST>

Run the plugin with using a state file for the target and updating it (useful for running multiple plugins on the target):

/opt/nessus/bin/nasl -K /tmp/state tivoli_provisioning_manager_express_activex_runanduploadfile_bof.nasl -t <IP/HOST>

Go back to menu.

References


BID | SecurityFocus Bugtraq ID: See also: Similar and related Nessus plugins:
  • 53625 - IBM Tivoli Directory Server Vulnerabilities (credentialed check)
  • 80481 - IBM Tivoli Directory Server < 6.0.0.72 / 6.1.0.55 / 6.2.0.30 / 6.3.0.22 with GSKit < 7.0.4.45 / 8.0.14.27 TLS Side-Channel Timing Information Disclosure
  • 80482 - IBM Security Directory Server < 6.1.0.61 / 6.2.0.36 / 6.3.0.30 / 6.3.1.2 with GSKit < 7.0.4.50 / 8.0.50.20 SSL CPU Utilization DoS
  • 80479 - IBM Tivoli Access Manager for e-Business < 6.0.0.33 / 6.1.0.14 / 6.1.1.10 SSL Multiple Vulnerabilities
  • 54943 - IBM Tivoli Directory Server SASL Bind Request Buffer Overflow (uncredentialed check)
  • 54924 - IBM Tivoli Management Framework Endpoint addr URL Remote Buffer Overflow
  • 54987 - IBM Tivoli Management Framework Endpoint addr URL Default Credentials
  • 66270 - IBM Tivoli Endpoint Manager Server < 8.2.1372 Multiple Vulnerabilities
  • 79335 - IBM Tivoli Endpoint Manager Server 9.1.x < 9.1.1117.0 OpenSSL Security Bypass
  • 25005 - IBM Tivoli Provisioning Manager OS Deployment Multiple Unspecified Input Validation Vulnerabilities
  • 25149 - IBM Tivoli Provisioning Manager OS Deployment Multiple Stack Overflows
  • 26187 - IBM Tivoli Storage Manager Client Multiple Vulnerabilities (swg21268775)
  • 42824 - IBM Tivoli Storage Manager Client Multiple Vulnerabilities (swg21405562)
  • 25662 - IBM Tivoli Storage Manager Multiple Remote Overflows
  • 77116 - IBM Tivoli Storage Manager Server 5.5.x Multiple Vulnerabilities
  • 77117 - IBM Tivoli Storage Manager Server 6.1.x Multiple Vulnerabilities
  • 77118 - IBM Tivoli Storage Manager Server 6.2.x < 6.2.6.0 Multiple Vulnerabilities
  • 77120 - IBM Tivoli Storage Manager Server 6.3.x < 6.3.4.200 Information Disclosure

Version


This page has been produced using Nessus Professional 10.1.2 (#68) LINUX, Plugin set 202205072148.
Plugin file tivoli_provisioning_manager_express_activex_runanduploadfile_bof.nasl version 1.15. For more plugins, visit the Nessus Plugin Library.

Go back to menu.