Vulnerabilities > CVE-2007-2238 - Improper Restriction of Operations Within the Bounds of A Memory Buffer vulnerability in Microsoft Intelligent Application Gateway 2007

047910
CVSS 9.3 - CRITICAL
Attack vector
NETWORK
Attack complexity
MEDIUM
Privileges required
NONE
Confidentiality impact
COMPLETE
Integrity impact
COMPLETE
Availability impact
COMPLETE
network
microsoft
CWE-119
critical
nessus
exploit available
metasploit

Summary

Multiple stack-based buffer overflows in the Whale Client Components ActiveX control (WhlMgr.dll), as used in Microsoft Intelligent Application Gateway (IAG) before 3.7 SP2, allow remote attackers to execute arbitrary code via long arguments to the (1) CheckForUpdates or (2) UpdateComponents methods.

Vulnerable Configurations

Part Description Count
Application
Microsoft
1

Common Attack Pattern Enumeration and Classification (CAPEC)

  • Buffer Overflow via Environment Variables
    This attack pattern involves causing a buffer overflow through manipulation of environment variables. Once the attacker finds that they can modify an environment variable, they may try to overflow associated buffers. This attack leverages implicit trust often placed in environment variables.
  • Overflow Buffers
    Buffer Overflow attacks target improper or missing bounds checking on buffer operations, typically triggered by input injected by an attacker. As a consequence, an attacker is able to write past the boundaries of allocated buffer regions in memory, causing a program crash or potentially redirection of execution as per the attackers' choice.
  • Client-side Injection-induced Buffer Overflow
    This type of attack exploits a buffer overflow vulnerability in targeted client software through injection of malicious content from a custom-built hostile service.
  • Filter Failure through Buffer Overflow
    In this attack, the idea is to cause an active filter to fail by causing an oversized transaction. An attacker may try to feed overly long input strings to the program in an attempt to overwhelm the filter (by causing a buffer overflow) and hoping that the filter does not fail securely (i.e. the user input is let into the system unfiltered).
  • MIME Conversion
    An attacker exploits a weakness in the MIME conversion routine to cause a buffer overflow and gain control over the mail server machine. The MIME system is designed to allow various different information formats to be interpreted and sent via e-mail. Attack points exist when data are converted to MIME compatible format and back.

Exploit-Db

descriptionMicrosoft Whale Intelligent Application Gateway ActiveX Control Buffer Overflow. CVE-2007-2238. Remote exploit for windows platform
idEDB-ID:16608
last seen2016-02-02
modified2010-05-09
published2010-05-09
reportermetasploit
sourcehttps://www.exploit-db.com/download/16608/
titleMicrosoft Whale Intelligent Application Gateway ActiveX Control Buffer Overflow

Metasploit

descriptionThis module exploits a stack buffer overflow in Microsoft Whale Intelligent Application Gateway Whale Client. When sending an overly long string to CheckForUpdates() method of WhlMgr.dll (3.1.502.64) an attacker may be able to execute arbitrary code.
idMSF:EXPLOIT/WINDOWS/BROWSER/MSWHALE_CHECKFORUPDATES
last seen2020-06-10
modified2017-10-05
published2009-04-15
references
reporterRapid7
sourcehttps://github.com/rapid7/metasploit-framework/blob/master//modules/exploits/windows/browser/mswhale_checkforupdates.rb
titleMicrosoft Whale Intelligent Application Gateway ActiveX Control Buffer Overflow

Nessus

NASL familyWindows
NASL idWHALE_CLIENT_ACTIVEX_3_7_SP2_OVERFLOWS.NASL
descriptionThe version of the Whale Client Components ActiveX control, a component of Microsoft Whale Intelligent Application Gateway product and installed on the remote Windows host, reportedly contains multiple stack-based buffer overflows that can be triggered using long arguments to the
last seen2020-06-01
modified2020-06-02
plugin id38734
published2009-05-11
reporterThis script is Copyright (C) 2009-2018 Tenable Network Security, Inc.
sourcehttps://www.tenable.com/plugins/nessus/38734
titleMicrosoft Whale Client Components ActiveX (WhlMgr.dll) Multiple Method Overflows
code
#
# (C) Tenable Network Security, Inc.
#

include("compat.inc");

if (description)
{
  script_id(38734);
  script_version("1.10");
  script_cvs_date("Date: 2018/08/06 14:03:16");

  script_cve_id("CVE-2007-2238");
  script_bugtraq_id(34532);
  script_xref(name:"CERT", value:"789121");
  script_xref(name:"Secunia", value:"34725");

  script_name(english:"Microsoft Whale Client Components ActiveX (WhlMgr.dll) Multiple Method Overflows");
  script_summary(english:"Checks version of control");
 
  script_set_attribute(attribute:"synopsis", value:
"The remote Windows host has an ActiveX control that is affected by
multiple buffer overflows.");
  script_set_attribute(attribute:"description", value:
"The version of the Whale Client Components ActiveX control, a component
of Microsoft Whale Intelligent Application Gateway product and installed
on the remote Windows host, reportedly contains multiple stack-based
buffer overflows that can be triggered using long arguments to the
'CheckForUpdates' and 'UpdateComponents' 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:"see_also", value:"http://technet.microsoft.com/en-us/library/dd282918.aspx");
  script_set_attribute(attribute:"solution", value:"Upgrade to Microsoft Intelligent Application Gateway 3.7 SP2 or later.");
  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:'Microsoft Whale Intelligent Application Gateway ActiveX Control Buffer 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_cwe_id(119);

  script_set_attribute(attribute:"plugin_publication_date", value:"2009/05/11");

  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) 2009-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 = '{8D9563A9-8D5F-459B-87F2-BA842255CB9A}';
file = activex_get_filename(clsid:clsid);
if (file)
{
  version = activex_get_fileversion(clsid:clsid);

  if (version && activex_check_fileversion(clsid:clsid, fix:"3.7") == TRUE)
  {
    report = NULL;
    if (report_paranoia > 1)
      report = string(
        "\n",
        "Version ", version, " 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",
        "Version ", version, " 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 > 0) security_hole(port:kb_smb_transport(), extra:report);
      else security_hole(kb_smb_transport());
    }
  }
}
activex_end();

Packetstorm

data sourcehttps://packetstormsecurity.com/files/download/82980/mswhale_checkforupdates.rb.txt
idPACKETSTORM:82980
last seen2016-12-05
published2009-11-26
reporterMC
sourcehttps://packetstormsecurity.com/files/82980/Microsoft-Whale-Intelligent-Application-Gateway-ActiveX-Control-Buffer-Overflow.html
titleMicrosoft Whale Intelligent Application Gateway ActiveX Control Buffer Overflow

Seebug

  • bulletinFamilyexploit
    descriptionBUGTRAQ ID: 34532 CVE ID:CVE-2007-2238 CNCVE ID:CNCVE-20072238 Microsoft Intelligent Application Gateway是一款智能应用程序网关,提供SSL VPN功能。 Microsoft Whale Intelligent Application Gateway Whale客户端组件ActiveX控件存在缓冲区溢出,远程攻击者可以利用漏洞以应用程序权限执行任意指令。 WhlMgr.dll文件提供的控件处理CheckForUpdates()和UpdateComponents()方法存在栈缓冲区溢出,构建恶意WEB页,诱使用户访问,可导致以应用程序权限执行任意指令。 Microsoft Intelligent Application Gateway 2007 3.7 可下载使用如下安全补丁: Microsoft Intelligent Application Gateway 2007 3.7 Microsoft Microsoft Whale Communications Intelligent Application Gateway 2007 Service Pack 2 <a href=http://www.microsoft.com/downloads/details.aspx?FamilyID=e69dfd1d-d333 target=_blank rel=external nofollow>http://www.microsoft.com/downloads/details.aspx?FamilyID=e69dfd1d-d333</a> -4c27-9246-279ada224317&amp;displaylang=en
    idSSV:5070
    last seen2017-11-19
    modified2009-04-21
    published2009-04-21
    reporterRoot
    titleMicrosoft IAG 2007 ActiveX控件栈缓冲区溢出漏洞
  • bulletinFamilyexploit
    descriptionBUGTRAQ ID: 34532 CVE(CAN) ID: CVE-2007-2238 Microsoft的Intelligent Application Gateway(IAG)2007是全面的远程访问网关,提供基于SSL的应用程序访问、保护和端点安全管理。 IAG所使用的Whale客户端组件(由WhlMgr.dll文件提供)没有正确地验证对CheckForUpdates()和 UpdateComponents()方式所传送的输入参数。如果用户受骗访问了恶意网页并向上述方式提供了超长输入参数的话,就可以触发栈溢出,导致执行任意代码。 Microsoft Intelligent Application Gateway 2007 3.7 临时解决方法: * 在IE中禁用Whale客户端组件ActiveX控件,为以下CLSID设置kill bit: {8D9563A9-8D5F-459B-87F2-BA842255CB9A} 或将以下文本保存为.REG文件并导入: Windows Registry Editor Version 5.00 [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\ActiveX Compatibility\{8D9563A9-8D5F-459B-87F2-BA842255CB9A}] &quot;Compatibility Flags&quot;=dword:00000400 厂商补丁: Microsoft --------- 目前厂商已经发布了升级补丁以修复这个安全问题,请到厂商的主页下载: <a href=http://technet.microsoft.com/en-us/library/dd282918(printer).aspx target=_blank rel=external nofollow>http://technet.microsoft.com/en-us/library/dd282918(printer).aspx</a>
    idSSV:5062
    last seen2017-11-19
    modified2009-04-16
    published2009-04-16
    reporterRoot
    titleMicrosoft IAG 2007 ActiveX控件栈溢出漏洞