Vulnerabilities > CVE-2009-0950 - Improper Restriction of Operations Within the Bounds of A Memory Buffer vulnerability in Apple Itunes

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

Summary

Stack-based buffer overflow in Apple iTunes before 8.2 allows remote attackers to execute arbitrary code or cause a denial of service (application crash) via an itms: URL with a long URL component after a colon.

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

  • descriptionApple iTunes 8.1.1.10 (itms/itcp) Remote Buffer Overflow Exploit (win). CVE-2009-0950. Remote exploit for windows platform
    fileexploits/windows/remote/8934.py
    idEDB-ID:8934
    last seen2016-02-01
    modified2009-06-12
    platformwindows
    port
    published2009-06-12
    reporterryujin
    sourcehttps://www.exploit-db.com/download/8934/
    titleApple iTunes 8.1.1.10 - itms/itcp Remote Buffer Overflow Exploit win
    typeremote
  • descriptionApple iTunes 8.1.x (daap) Buffer overflow remote exploit (CVE-2009-0950). CVE-2009-0950. Remote exploit for windows platform
    idEDB-ID:11138
    last seen2016-02-01
    modified2010-01-14
    published2010-01-14
    reporterSimo36
    sourcehttps://www.exploit-db.com/download/11138/
    titleApple iTunes 8.1.x - daap Buffer Overflow Remote Exploit
  • descriptionApple iTunes 8.1.1 (ITMS) Multiple Protocol Handler BOF Exploit (meta). CVE-2009-0950. Remote exploit for osx platform
    fileexploits/osx/remote/8861.rb
    idEDB-ID:8861
    last seen2016-02-01
    modified2009-06-03
    platformosx
    port
    published2009-06-03
    reporterWill Drewry
    sourcehttps://www.exploit-db.com/download/8861/
    titleApple iTunes 8.1.1 - ITMS Multiple Protocol Handler BoF Exploit meta
    typeremote
  • descriptionApple OS X iTunes 8.1.1 ITMS Overflow. CVE-2009-0950. Remote exploit for osx platform
    idEDB-ID:16296
    last seen2016-02-01
    modified2010-11-11
    published2010-11-11
    reportermetasploit
    sourcehttps://www.exploit-db.com/download/16296/
    titleApple OS X iTunes 8.1.1 ITms Overflow

Metasploit

descriptionThis modules exploits a stack-based buffer overflow in iTunes itms:// URL parsing. It is accessible from the browser and in Safari, itms urls will be opened in iTunes automatically. Because iTunes is multithreaded, only vfork-based payloads should be used.
idMSF:EXPLOIT/MULTI/BROWSER/ITMS_OVERFLOW
last seen2020-06-10
modified2017-08-31
published2009-06-05
references
reporterRapid7
sourcehttps://github.com/rapid7/metasploit-framework/blob/master//modules/exploits/multi/browser/itms_overflow.rb
titleApple OS X iTunes 8.1.1 ITMS Overflow

Nessus

  • NASL familyWindows
    NASL idITUNES_8_2.NASL
    descriptionThe remote version of Apple iTunes is older than 8.2. Such versions are affected by a stack-based buffer overflow that can be triggered when parsing
    last seen2020-06-01
    modified2020-06-02
    plugin id38985
    published2009-06-02
    reporterThis script is Copyright (C) 2009-2018 Tenable Network Security, Inc.
    sourcehttps://www.tenable.com/plugins/nessus/38985
    titleApple iTunes < 8.2 itms: URI Handling Overflow (credentialed check)
    code
    #
    # (C) Tenable Network Security, Inc.
    #
    
    
    include("compat.inc");
    
    
    if (description)
    {
      script_id(38985);
      script_version("1.17");
    
      script_cve_id("CVE-2009-0950");
      script_bugtraq_id(35157);
    
      script_name(english:"Apple iTunes < 8.2 itms: URI Handling Overflow (credentialed check)");
      script_summary(english:"Checks version of iTunes on Windows");
    
      script_set_attribute( attribute:"synopsis", value:
    "The remote Windows host contains an application that is affected by a
    buffer overflow vulnerability."  );
      script_set_attribute( attribute:"description", value:
    "The remote version of Apple iTunes is older than 8.2. Such versions
    are affected by a stack-based buffer overflow that can be triggered
    when parsing 'itms:' URLs. If an attacker can trick a user on the
    affected host into clicking on a malicious link, he can leverage this
    issue to crash the affected application or to execute arbitrary code
    on the affected system subject to the user's privileges."  );
      script_set_attribute(
        attribute:"see_also", 
        value:"http://support.apple.com/kb/HT3592"
      );
      script_set_attribute(
        attribute:"see_also", 
        value:"http://lists.apple.com/archives/security-announce/2009/Jun/msg00001.html"
      );
      script_set_attribute(
        attribute:"solution",
        value:"Upgrade to Apple iTunes 8.2 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: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:'Apple OS X iTunes 8.1.1 ITMS Overflow');
      script_set_attribute(attribute:"exploit_framework_metasploit", value:"true");
      script_cwe_id(119);
     script_set_attribute(attribute:"plugin_publication_date", value: "2009/06/02");
     script_cvs_date("Date: 2018/07/13 15:08:46");
      script_set_attribute(attribute:"plugin_type", value:"local");
      script_set_attribute(attribute:"cpe", value:"cpe:/a:apple:itunes");
      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("itunes_detect.nasl");
      script_require_keys("SMB/iTunes/Version");
    
      exit(0);
    }
    
    
    include ("global_settings.inc");
    
    
    version = get_kb_item("SMB/iTunes/Version");
    if (isnull(version)) exit(0);
    
    ver = split(version, sep:'.', keep:FALSE);
    for (i=0; i<max_index(ver); i++)
      ver[i] = int(ver[i]);
    
    if(
      ver[0] < 8 ||
      (
        ver[0] == 8 &&
        (
          ver[1] < 2 ||
          (
            ver[1] == 2 && ver[2] == 0 && ver[3] < 23
          )
        )
      )
    )
    {
      if (report_verbosity > 0)
      {
        report = string(
          "\n",
          "iTunes ", version, " is installed on the remote host.\n"
        );
        security_hole(port:get_kb_item("SMB/transport"), extra:report);
      }
      else security_hole(get_kb_item("SMB/transport"));
    }
    
  • NASL familyMacOS X Local Security Checks
    NASL idMACOSX_ITUNES_8_2.NASL
    descriptionThe remote version of iTunes is older than 8.2. Such versions are affected by a stack-based buffer overflow that can be triggered when parsing
    last seen2020-06-01
    modified2020-06-02
    plugin id38987
    published2009-06-02
    reporterThis script is Copyright (C) 2009-2018 Tenable Network Security, Inc.
    sourcehttps://www.tenable.com/plugins/nessus/38987
    titleiTunes < 8.2 itms: URL Stack Overflow (Mac OS X)
    code
    #
    # (C) Tenable Network Security, Inc.
    #
    
    include("compat.inc");
    
    if (description)
    {
      script_id(38987);
      script_version("1.17");
      script_cvs_date("Date: 2018/07/16 12:48:31");
    
      script_cve_id("CVE-2009-0950");
      script_bugtraq_id(35157);
    
      script_name(english:"iTunes < 8.2 itms: URL Stack Overflow (Mac OS X)");
      script_summary(english:"Checks version of iTunes");
    
      script_set_attribute( attribute:"synopsis", value:
    "The remote Mac OS X host contains an application that is affected by a
    buffer overflow vulnerability."  );
      script_set_attribute( attribute:"description", value:
    "The remote version of iTunes is older than 8.2. Such versions are
    affected by a stack-based buffer overflow that can be triggered
    when parsing 'itms:' URLs.  If an attacker can trick a user on the
    affected host into clicking on a malicious link, he can leverage
    this issue to crash the affected application or to execute arbitrary
    code on the affected system subject to the user's privileges."  );
      script_set_attribute(
        attribute:"see_also",
        value:"http://support.apple.com/kb/HT3592"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"http://lists.apple.com/archives/security-announce/2009/Jun/msg00001.html"
      );
      script_set_attribute(
        attribute:"solution",
        value:"Upgrade to iTunes 8.2 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:H/RL:OF/RC:C");
      script_set_cvss3_base_vector("CVSS:3.0/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H");
      script_set_cvss3_temporal_vector("CVSS:3.0/E:H/RL:O/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:'Apple OS X iTunes 8.1.1 ITMS Overflow');
      script_set_attribute(attribute:"exploit_framework_metasploit", value:"true");
      script_cwe_id(119);
    
      script_set_attribute(attribute:"plugin_publication_date", value: "2009/06/02");
      script_set_attribute(attribute:"patch_publication_date", value: "2009/06/01");
    
      script_set_attribute(attribute:"plugin_type", value:"local");
      script_set_attribute(attribute:"cpe", value:"cpe:/a:apple:itunes");
      script_end_attributes();
    
      script_category(ACT_GATHER_INFO);
      script_family(english:"MacOS X Local Security Checks");
    
      script_copyright(english:"This script is Copyright (C) 2009-2018 Tenable Network Security, Inc.");
    
      script_dependencies("macosx_itunes_detect.nasl");
      script_require_keys("Host/MacOSX/Version", "installed_sw/iTunes");
    
      exit(0);
    }
    
    include("vcf.inc");
    
    os = get_kb_item("Host/MacOSX/Version");
    if (!os) audit(AUDIT_OS_NOT, "Mac OS X");
    
    app_info = vcf::get_app_info(app:"iTunes");
    
    constraints = [{"fixed_version" : "8.2"}];
    
    vcf::check_version_and_report(app_info:app_info, constraints:constraints, severity:SECURITY_HOLE);
    
  • NASL familyPeer-To-Peer File Sharing
    NASL idITUNES_8_2_BANNER.NASL
    descriptionThe version of Apple iTunes on the remote host is prior to version 8.2. It is, therefore, affected by a stack-based buffer overflow that can be triggered when parsing
    last seen2020-06-01
    modified2020-06-02
    plugin id38986
    published2009-06-02
    reporterThis script is Copyright (C) 2009-2018 Tenable Network Security, Inc.
    sourcehttps://www.tenable.com/plugins/nessus/38986
    titleApple iTunes < 8.2 itms: URI Handling Overflow (uncredentialed check)
    code
    #
    # (C) Tenable Network Security, Inc.
    #
    
    
    include("compat.inc");
    
    
    if (description)
    {
      script_id(38986);
      script_version("1.20");
      script_cvs_date("Date: 2018/07/13 15:08:46");
    
      script_cve_id("CVE-2009-0950");
      script_bugtraq_id(35157);
    
      script_name(english:"Apple iTunes < 8.2 itms: URI Handling Overflow (uncredentialed check)");
      script_summary(english:"Checks the version of iTunes.");
    
      script_set_attribute(attribute:"synopsis", value:
    "The remote host contains an application that is affected by a buffer
    overflow vulnerability.");
      script_set_attribute(attribute:"description", value:
    "The version of Apple iTunes on the remote host is prior to version
    8.2. It is, therefore, affected by a stack-based buffer overflow that
    can be triggered when parsing 'itms:' URLs. By convincing a user to
    click on a specially crafted link, a remote attacker can cause a
    denial of service or execute arbitrary code with the user's level of
    privileges.");
      script_set_attribute(attribute:"see_also", value:"http://support.apple.com/kb/HT3592");
      script_set_attribute(attribute:"see_also", value:"http://lists.apple.com/archives/security-announce/2009/Jun/msg00001.html");
      script_set_attribute(attribute:"solution", value:"Upgrade to Apple iTunes 8.2 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: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:'Apple OS X iTunes 8.1.1 ITMS Overflow');
      script_set_attribute(attribute:"exploit_framework_metasploit", value:"true");
      script_cwe_id(119);
    
      script_set_attribute(attribute:"vuln_publication_date", value:"2009/06/01");
      script_set_attribute(attribute:"patch_publication_date", value:"2009/06/01");
      script_set_attribute(attribute:"plugin_publication_date", value:"2009/06/02");
    
      script_set_attribute(attribute:"plugin_type", value:"remote");
      script_set_attribute(attribute:"cpe", value:"cpe:/a:apple:itunes");
      script_end_attributes();
    
      script_category(ACT_GATHER_INFO);
      script_family(english:"Peer-To-Peer File Sharing");
      script_copyright(english:"This script is Copyright (C) 2009-2018 Tenable Network Security, Inc.");
    
      script_dependencies("itunes_sharing.nasl");
      script_require_keys("iTunes/sharing");
      script_require_ports("Services/www", 3689);
    
      exit(0);
    }
    
    include("audit.inc");
    include("global_settings.inc");
    include("misc_func.inc");
    include("http.inc");
    
    port = get_http_port(default:3689, embedded:TRUE, ignore_broken:TRUE);
    
    get_kb_item_or_exit("iTunes/" + port + "/enabled");
    
    type = get_kb_item_or_exit("iTunes/" + port + "/type");
    source = get_kb_item_or_exit("iTunes/" + port + "/source");
    version = get_kb_item_or_exit("iTunes/" + port + "/version");
    
    if (type == 'AppleTV') audit(AUDIT_LISTEN_NOT_VULN, "iTunes on AppleTV", port, version);
    
    fixed_version = "8.2";
    
    if (ver_compare(ver:version, fix:fixed_version, strict:FALSE) == -1)
    {
      if (report_verbosity > 0)
      {
        report = '\n  Version source     : ' + source +
                 '\n  Installed version  : ' + version +
                 '\n  Fixed version      : ' + fixed_version + '\n';
        security_hole(port:port, extra:report);
      }
      else security_hole(port);
    }
    else audit(AUDIT_LISTEN_NOT_VULN, "iTunes", port, version);
    

Oval

accepted2015-06-22T04:00:18.854-04:00
classvulnerability
contributors
  • nameShane Shaffer
    organizationG2, Inc.
  • nameShane Shaffer
    organizationG2, Inc.
  • nameBernd Eggenmueller
    organizationbaramundi software
definition_extensions
commentApple iTunes is installed
ovaloval:org.mitre.oval:def:12353
descriptionStack-based buffer overflow in Apple iTunes before 8.2 allows remote attackers to execute arbitrary code or cause a denial of service (application crash) via an itms: URL with a long URL component after a colon.
familywindows
idoval:org.mitre.oval:def:17099
statusaccepted
submitted2013-07-30T11:32:03.685-04:00
titleStack-based buffer overflow in Apple iTunes before 8.2 allows remote attackers to execute arbitrary code or cause a denial of service (application crash) via an itms: URL with a long URL component after a colon
version7

Packetstorm

Saint

bid35157
descriptionApple iTunes itms: URL buffer overflow
idmisc_itunes
osvdb54833
titleitunes_itms
typeclient

Seebug

  • bulletinFamilyexploit
    descriptionBUGTRAQ ID: 35157 CVE(CAN) ID: CVE-2009-0950 Apple iTunes是一款媒体播放程序。 如果用户使用iTunes打开了恶意的itms: URL的话,就可能触发栈溢出,导致播放器崩溃或执行任意代码。 Apple iTunes &lt; 8.2 厂商补丁: Apple ----- 目前厂商已经发布了升级补丁以修复这个安全问题,请到厂商的主页下载: <a href="http://www.apple.com/itunes/download/" target="_blank" rel=external nofollow>http://www.apple.com/itunes/download/</a>
    idSSV:11511
    last seen2017-11-19
    modified2009-06-04
    published2009-06-04
    reporterRoot
    titleApple iTunes itms: URI栈溢出漏洞
  • bulletinFamilyexploit
    descriptionNo description provided by source.
    idSSV:11595
    last seen2017-11-19
    modified2009-06-13
    published2009-06-13
    reporterRoot
    sourcehttps://www.seebug.org/vuldb/ssvid-11595
    titleApple iTunes 8.1.1.10 (itms/itcp) Remote Buffer Overflow Exploit (win)
  • bulletinFamilyexploit
    descriptionNo description provided by source.
    idSSV:67488
    last seen2017-11-19
    modified2014-07-01
    published2014-07-01
    reporterRoot
    sourcehttps://www.seebug.org/vuldb/ssvid-67488
    titleApple iTunes 8.1.x - (daap) Buffer Overflow Remote Exploit
  • bulletinFamilyexploit
    descriptionNo description provided by source.
    idSSV:11506
    last seen2017-11-19
    modified2009-06-04
    published2009-06-04
    reporterRoot
    sourcehttps://www.seebug.org/vuldb/ssvid-11506
    titleApple iTunes 8.1.1 (ITMS) Multiple Protocol Handler BOF Exploit (meta)