Lucene search

K
nessusThis script is Copyright (C) 2008-2018 Tenable Network Security, Inc.LPVIEWER_ACTIVEX_OVERFLOWS.NASL
HistoryOct 22, 2008 - 12:00 a.m.

LPViewer ActiveX Control Multiple Buffer Overflow Vulnerabilities

2008-10-2200:00:00
This script is Copyright (C) 2008-2018 Tenable Network Security, Inc.
www.tenable.com
13

The remote host contains the LPViewer ActiveX control, initially created by MGI Software but later taken over by Roxio and then again by iseemedia.

This control reportedly has stack-based buffer overflows in its β€˜url()’, β€˜toolbar()’, and β€˜enableZoomPastMax()’ methods. If an attacker can trick a user on the affected host into viewing a specially crafted HTML document, he can leverage these issues to execute arbitrary code on the affected system subject to the user’s privileges.

#
#  (C) Tenable Network Security, Inc.
#



include("compat.inc");

if (description)
{
  script_id(34472);
  script_version("1.13");

  script_cve_id("CVE-2008-4384");
  script_bugtraq_id(31604);
  script_xref(name:"CERT", value:"848873");
  script_xref(name:"Secunia", value:"32140");

  script_name(english:"LPViewer ActiveX Control Multiple Buffer Overflow Vulnerabilities");
  script_summary(english:"Checks for LPViewer control");

 script_set_attribute(attribute:"synopsis", value:
"The remote Windows host has an ActiveX control that is affected by
multiple remote buffer overflows." );
 script_set_attribute(attribute:"description", value:
"The remote host contains the LPViewer ActiveX control, initially
created by MGI Software but later taken over by Roxio and then again
by iseemedia.

This control reportedly has stack-based buffer overflows in its
'url()', 'toolbar()', and 'enableZoomPastMax()' methods.  If an
attacker can trick a user on the affected host into viewing a
specially crafted HTML document, he can leverage these issues to
execute arbitrary code on the affected system subject to the user's
privileges." );
 script_set_attribute(attribute:"solution", value:
"Unknown at this time." );
 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:F/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:"metasploit_name", value:'iseemedia / Roxio / MGI Software LPViewer ActiveX Control Buffer Overflow');
 script_set_attribute(attribute:"exploit_framework_metasploit", value:"true");
 script_cwe_id(119);
 script_set_attribute(attribute:"plugin_publication_date", value: "2008/10/22");
 script_cvs_date("Date: 2018/07/14  1:59:37");
script_set_attribute(attribute:"plugin_type", value:"local");
script_end_attributes();


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

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

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

  exit(0);
}


include("global_settings.inc");
include("smb_func.inc");
include("smb_activex_func.inc");


if (!get_kb_item("SMB/Registry/Enumerated")) exit(0);


# Locate the file used by the controls.
if (activex_init() != ACX_OK) exit(0);

clsid = '{3F0EECCE-E138-11D1-8712-0060083D83F5}';
file = activex_get_filename(clsid:clsid);
if (file)
{
  ver = activex_get_fileversion(clsid:clsid);

  if (ver) ver = string("Version ", ver);
  else ver = string("An unknown version");

  report = NULL;
  if (report_paranoia > 1)
    report = string(
      "\n",
      ver, " of the vulnerable control is installed as :\n",
      "\n",
      "  ", file, "\n",
      "\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 if (activex_get_killbit(clsid:clsid) == 0)
    report = string(
      "\n",
      ver, " of the vulnerable control is installed as :\n",
      "\n",
      "  ", file, "\n",
      "\n",
      "Moreover, its kill bit is not set so it is accessible via Internet\n",
      "Explorer.\n"
    );
  if (report)
  {
    if (report_verbosity) security_hole(port:kb_smb_transport(), extra:report);
    else security_hole(kb_smb_transport());
  }
}
activex_end();