Vulnerabilities > CVE-2013-3660 - Improper Restriction of Operations within the Bounds of a Memory Buffer vulnerability in Microsoft products

047910
CVSS 7.8 - HIGH
Attack vector
LOCAL
Attack complexity
LOW
Privileges required
NONE
Confidentiality impact
HIGH
Integrity impact
HIGH
Availability impact
HIGH
local
low complexity
microsoft
CWE-119
nessus
exploit available
metasploit

Summary

The EPATHOBJ::pprFlattenRec function in win32k.sys in the kernel-mode drivers in Microsoft Windows XP SP2 and SP3, Windows Server 2003 SP2, Windows Vista SP2, Windows Server 2008 SP2 and R2 SP1, Windows 7 SP1, Windows 8, and Windows Server 2012 does not properly initialize a pointer for the next object in a certain list, which allows local users to obtain write access to the PATHRECORD chain, and consequently gain privileges, by triggering excessive consumption of paged memory and then making many FlattenPath function calls, aka "Win32k Read AV Vulnerability."

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

  • descriptionWin32k!EPATHOBJ::pprFlattenRec Uninitialized Next Pointer Testcase. CVE-2013-3130,CVE-2013-3660,CVE-2013-3661. Dos exploit for windows platform
    fileexploits/windows/dos/25611.txt
    idEDB-ID:25611
    last seen2016-02-03
    modified2013-05-21
    platformwindows
    port
    published2013-05-21
    reporterTavis Ormandy
    sourcehttps://www.exploit-db.com/download/25611/
    titleWin32k!EPATHOBJ::pprFlattenRec Uninitialized Next Pointer Testcase
    typedos
  • descriptionWindows NT/2K/XP/2K3/Vista/2K8/7/8 - EPATHOBJ Local Ring Exploit. CVE-2013-3130,CVE-2013-3660,CVE-2013-3661. Local exploit for windows platform
    idEDB-ID:25912
    last seen2016-02-03
    modified2013-06-03
    published2013-06-03
    reporterTavis Ormandy
    sourcehttps://www.exploit-db.com/download/25912/
    titleWindows NT/2K/XP/2K3/Vista/2K8/7/8 - EPATHOBJ Local Ring Exploit
  • descriptionWindows EPATHOBJ::pprFlattenRec Local Privilege Escalation. CVE-2013-3130,CVE-2013-3660,CVE-2013-3661. Local exploit for windows platform
    idEDB-ID:26554
    last seen2016-02-03
    modified2013-07-02
    published2013-07-02
    reportermetasploit
    sourcehttps://www.exploit-db.com/download/26554/
    titleWindows EPATHOBJ::pprFlattenRec Local Privilege Escalation

Metasploit

descriptionThis module exploits a vulnerability on EPATHOBJ::pprFlattenRec due to the usage of uninitialized data which allows to corrupt memory. At the moment, the module has been tested successfully on Windows XP SP3, Windows 2003 SP1, and Windows 7 SP1.
idMSF:EXPLOIT/WINDOWS/LOCAL/PPR_FLATTEN_REC
last seen2020-06-04
modified2018-11-25
published2013-06-29
references
reporterRapid7
sourcehttps://github.com/rapid7/metasploit-framework/blob/master//modules/exploits/windows/local/ppr_flatten_rec.rb
titleWindows EPATHOBJ::pprFlattenRec Local Privilege Escalation

Msbulletin

bulletin_idMS13-053
bulletin_url
date2013-07-09T00:00:00
impactRemote Code Execution
knowledgebase_id2850851
knowledgebase_url
severityCritical
titleVulnerabilities in Windows Kernel-Mode Drivers Could Allow Remote Code Execution

Nessus

  • NASL familyWindows : Microsoft Bulletins
    NASL idSMB_NT_MS13-053.NASL
    descriptionThe Windows kernel on the remote host has the following vulnerabilities : - A memory allocation vulnerability exists. (CVE-2013-1300) - A dereference vulnerability exists. (CVE-2013-1340) - A privilege escalation vulnerability exists in the Windows kernel-mode driver. (CVE-2013-1345) - A TrueType Font parsing vulnerability exists. (CVE-2013-3129) - An information disclosure vulnerability exists. (CVE-2013-3167) - A buffer overflow vulnerability exists. (CVE-2013-3173) - A flaw exists in kernel-mode drivers in how linked lists pointers are handled in PATHREC objects. (CVE-2013-3660) A remote attacker could exploit any of these vulnerabilities to elevate privileges.
    last seen2020-06-01
    modified2020-06-02
    plugin id67210
    published2013-07-10
    reporterThis script is Copyright (C) 2013-2018 Tenable Network Security, Inc.
    sourcehttps://www.tenable.com/plugins/nessus/67210
    titleMS13-053: Vulnerabilities in Windows Kernel-Mode Driver Could Allow Remote Code Execution (2850851)
    code
    #
    # (C) Tenable Network Security, Inc.
    #
    
    include("compat.inc");
    
    if (description)
    {
      script_id(67210);
      script_version("1.13");
      script_cvs_date("Date: 2018/11/15 20:50:31");
    
      script_cve_id(
        "CVE-2013-1300",
        "CVE-2013-1340",
        "CVE-2013-1345",
        "CVE-2013-3129",
        "CVE-2013-3167",
        "CVE-2013-3172",
        "CVE-2013-3173",
        "CVE-2013-3660"
      );
      script_bugtraq_id(
        60051,
        60946,
        60947,
        60948,
        60949,
        60950,
        60951,
        60978
      );
      script_xref(name:"EDB-ID", value:"25611");
      script_xref(name:"EDB-ID", value:"25912");
      script_xref(name:"EDB-ID", value:"26554");
      script_xref(name:"EDB-ID", value:"33213");
      script_xref(name:"MSFT", value:"MS13-053");
      script_xref(name:"MSKB", value:"2850851");
    
      script_name(english:"MS13-053: Vulnerabilities in Windows Kernel-Mode Driver Could Allow Remote Code Execution (2850851)");
      script_summary(english:"Checks file version of Win32k.sys");
    
      script_set_attribute(
        attribute:"synopsis",
        value:
    "The Windows kernel on the remote host is affected by multiple
    vulnerabilities."
      );
      script_set_attribute(
        attribute:"description",
        value:
    "The Windows kernel on the remote host has the following
    vulnerabilities :
    
      - A memory allocation vulnerability exists.
        (CVE-2013-1300)
    
      - A dereference vulnerability exists. (CVE-2013-1340)
    
      - A privilege escalation vulnerability exists in the
        Windows kernel-mode driver. (CVE-2013-1345)
    
      - A TrueType Font parsing vulnerability exists.
        (CVE-2013-3129)
    
      - An information disclosure vulnerability exists.
        (CVE-2013-3167)
    
      - A buffer overflow vulnerability exists. (CVE-2013-3173)
    
      - A flaw exists in kernel-mode drivers in how linked lists
        pointers are handled in PATHREC objects. (CVE-2013-3660)
    
    A remote attacker could exploit any of these vulnerabilities to elevate
    privileges."
      );
      script_set_attribute(attribute:"see_also", value:"https://www.zerodayinitiative.com/advisories/ZDI-13-170/");
      script_set_attribute(attribute:"see_also", value:"https://www.zerodayinitiative.com/advisories/ZDI-13-171/");
      script_set_attribute(attribute:"see_also", value:"https://docs.microsoft.com/en-us/security-updates/SecurityBulletins/2013/ms13-053");
      script_set_attribute(
        attribute:"solution",
        value:
    "Microsoft has released a set of patches for Windows XP, 2003, Vista,
    2008, 7, 2008 R2, 8, and 2012."
      );
      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:'Windows EPATHOBJ::pprFlattenRec Local Privilege Escalation');
      script_set_attribute(attribute:"exploit_framework_metasploit", value:"true");
    
      script_set_attribute(attribute:"vuln_publication_date", value:"2013/05/17");
      script_set_attribute(attribute:"patch_publication_date", value:"2013/07/09");
      script_set_attribute(attribute:"plugin_publication_date", value:"2013/07/10");
    
      script_set_attribute(attribute:"plugin_type", value:"local");
      script_set_attribute(attribute:"cpe", value:"cpe:/o:microsoft:windows");
      script_end_attributes();
    
      script_category(ACT_GATHER_INFO);
      script_family(english:"Windows : Microsoft Bulletins");
    
      script_copyright(english:"This script is Copyright (C) 2013-2018 Tenable Network Security, Inc.");
    
      script_dependencies("smb_hotfixes.nasl", "ms_bulletin_checks_possible.nasl");
      script_require_keys("SMB/MS_Bulletin_Checks/Possible");
      script_require_ports(139, 445, "Host/patch_management_checks");
    
      exit(0);
    }
    
    include("audit.inc");
    include("smb_func.inc");
    include("smb_hotfixes.inc");
    include("smb_hotfixes_fcheck.inc");
    include("misc_func.inc");
    
    get_kb_item_or_exit('SMB/MS_Bulletin_Checks/Possible');
    
    bulletin = 'MS13-053';
    kb = '2850851';
    
    kbs = make_list(kb);
    if (get_kb_item('Host/patch_management_checks')) hotfix_check_3rd_party(bulletin:bulletin, kbs:kbs, severity:SECURITY_HOLE);
    
    get_kb_item_or_exit("SMB/Registry/Enumerated");
    get_kb_item_or_exit('SMB/WindowsVersion', exit_code:1);
    if (hotfix_check_sp_range(xp:'3', win2003:'2', vista:'2', win7:'1', win8:'0') <= 0) audit(AUDIT_OS_SP_NOT_VULN);
    
    rootfile = hotfix_get_systemroot();
    if (!rootfile) exit(1, "Failed to get the system root.");
    
    share = hotfix_path2share(path:rootfile);
    if (!is_accessible_share(share:share)) audit(AUDIT_SHARE_FAIL, share);
    
    ########## KB2850851 ###########
    #  Windows XP SP3,             #
    #  Windows XP SP2 x64,         #
    #  Windows 2003 SP2,           #
    #  Windows Vista SP2,          #
    #  Windows 7,                  #
    #  Windows Server 2008 SP2,    #
    #  Windows Server 2008 R2      #
    #  Windows Server 8            #
    #  Windows Server 2012         #
    ################################
    if (
      # Windows 8 / Windows Server 2012
      hotfix_is_vulnerable(os:"6.2", sp:0, file:"Win32k.sys", version:"6.2.9200.20732", min_version:"6.2.9200.20000", dir:"\system32", bulletin:bulletin, kb:kb) ||
      hotfix_is_vulnerable(os:"6.2", sp:0, file:"Win32k.sys", version:"6.2.9200.16627", min_version:"6.2.9200.16000", dir:"\system32", bulletin:bulletin, kb:kb) ||
    
      # Windows 7 and Windows Server 2008 R2
      hotfix_is_vulnerable(os:"6.1", sp:1, file:"Win32k.sys", version:"6.1.7601.22348", min_version:"6.1.7601.21000", dir:"\system32", bulletin:bulletin, kb:kb) ||
      hotfix_is_vulnerable(os:"6.1", sp:1, file:"Win32k.sys", version:"6.1.7601.18176", min_version:"6.1.7600.17000", dir:"\system32", bulletin:bulletin, kb:kb) ||
    
      # Vista / Windows 2008
      hotfix_is_vulnerable(os:"6.0", sp:2, file:"Win32k.sys", version:"6.0.6002.23132", min_version:"6.0.6002.22000", dir:"\system32", bulletin:bulletin, kb:kb) ||
      hotfix_is_vulnerable(os:"6.0", sp:2, file:"Win32k.sys", version:"6.0.6002.18861", min_version:"6.0.6002.18000", dir:"\system32", bulletin:bulletin, kb:kb) ||
    
      # Windows 2003 / XP x64
      hotfix_is_vulnerable(os:"5.2", sp:2, file:"Win32k.sys", version:"5.2.3790.5174",  dir:"\system32", bulletin:bulletin, kb:kb) ||
    
      # Windows XP x86
      hotfix_is_vulnerable(os:"5.1", sp:3, arch:"x86", file:"Win32k.sys", version:"5.1.2600.6404", dir:"\system32", bulletin:bulletin, kb:kb)
    )
    {
      set_kb_item(name:'SMB/Missing/'+bulletin, value:TRUE);
      hotfix_security_hole();
      hotfix_check_fversion_end();
      exit(0);
    }
    else
    {
      hotfix_check_fversion_end();
      audit(AUDIT_HOST_NOT, 'affected');
    }
    
  • NASL familyWindows
    NASL idSMB_NT_CVE-2013-3660.NASL
    descriptionThe Microsoft Windows host has a flaw in Win32k.sys which can be exploited by local users to gain elevated privileges or trigger a denial of service condition. The issue is due to a flaw in how linked list pointers are handled in PATHREC objects.
    last seen2017-10-29
    modified2013-09-28
    plugin id66878
    published2013-06-12
    reporterTenable
    sourcehttps://www.tenable.com/plugins/index.php?view=single&id=66878
    titleMicrosoft Windows Kernel Win32k.sys PATHRECORD chain Multiple Vulnerabilities
    code
    #%NASL_MIN_LEVEL 999999
    
    #
    # (C) Tenable Network Security, Inc.
    #
    # @DEPRECATED@
    #
    # Disabled on 2013/07/10. Deprecated by smb_nt_ms13-053.nasl.
    
    include("compat.inc");
    
    if (description)
    {
      script_id(66878);
      script_version("1.12");
      script_cvs_date("Date: 2018/07/27 18:38:15");
    
      script_cve_id("CVE-2013-3660", "CVE-2013-3661");
      script_bugtraq_id(60051);
      script_xref(name:"EDB-ID", value:"25611");
      script_xref(name:"EDB-ID", value:"25912");
    
      script_name(english:"Microsoft Windows Kernel Win32k.sys PATHRECORD chain Multiple Vulnerabilities");
      script_summary(english:"Checks Operating System version");
    
      script_set_attribute(attribute:"synopsis", value:"The remote host is affected by multiple vulnerabilities.");
      script_set_attribute(
        attribute:"description",
        value:
    "The Microsoft Windows host has a flaw in Win32k.sys which can be
    exploited by local users to gain elevated privileges or trigger a denial
    of service condition.  The issue is due to a flaw in how linked list
    pointers are handled in PATHREC objects."
      );
      script_set_attribute(attribute:"see_also", value:"http://seclists.org/fulldisclosure/2013/May/91");
      script_set_attribute(attribute:"see_also", value:"http://seclists.org/fulldisclosure/2013/Jun/5");
      script_set_attribute(attribute:"solution", value:"There is currently no known solution for this vulnerability.");
      script_set_cvss_base_vector("CVSS2#AV:L/AC:M/Au:N/C:C/I:C/A:C");
      script_set_cvss_temporal_vector("CVSS2#E:H/RL:U/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:'Windows EPATHOBJ::pprFlattenRec Local Privilege Escalation');
      script_set_attribute(attribute:"exploit_framework_metasploit", value:"true");
      script_set_attribute(attribute:"exploit_framework_core", value:"true");
    
      script_set_attribute(attribute:"vuln_publication_date", value:"2013/05/17");
      script_set_attribute(attribute:"plugin_publication_date", value:"2013/06/12");
      script_set_attribute(attribute:"plugin_type", value:"local");
    
      script_set_attribute(attribute:"cpe", value:"cpe:/o:microsoft:windows");
      script_end_attributes();
    
      script_category(ACT_GATHER_INFO);
      script_family(english:"Windows");
    
      script_copyright(english:"This script is Copyright (C) 2013-2018 Tenable Network Security, Inc.");
    
      script_dependencies("smb_hotfixes.nasl");
      script_require_ports(139, 445);
    
      exit(0);
    }
    
    # Deprecated
    exit(0, "This plugin has been deprecated. Use smb_nt_ms13-053.nasl (plugin #67210) instead.");
    
    include("audit.inc");
    include("smb_func.inc");
    include("smb_hotfixes.inc");
    include("smb_hotfixes_fcheck.inc");
    include("misc_func.inc");
    
    port = kb_smb_transport();
    if (!get_port_state(port)) audit(AUDIT_PORT_CLOSED, port);
    
    get_kb_item_or_exit("SMB/Registry/Enumerated");
    
    get_kb_item_or_exit('SMB/WindowsVersion', exit_code:1);
    if (hotfix_check_sp_range(xp:'3', win2003:'2', vista:'2', win7:'1', win8:'0') <= 0) audit(AUDIT_OS_SP_NOT_VULN);
    
    security_warning(port);
    

Oval

accepted2013-08-26T04:00:28.729-04:00
classvulnerability
contributors
nameSecPod Team
organizationSecPod Technologies
definition_extensions
  • commentMicrosoft Windows XP (x86) SP3 is installed
    ovaloval:org.mitre.oval:def:5631
  • commentMicrosoft Windows XP x64 Edition SP2 is installed
    ovaloval:org.mitre.oval:def:4193
  • commentMicrosoft Windows Server 2003 (ia64) SP2 is installed
    ovaloval:org.mitre.oval:def:1442
  • commentMicrosoft Windows Server 2003 SP2 (x86) is installed
    ovaloval:org.mitre.oval:def:1935
  • commentMicrosoft Windows Server 2003 SP2 (x64) is installed
    ovaloval:org.mitre.oval:def:2161
  • commentMicrosoft Windows Vista (32-bit) Service Pack 2 is installed
    ovaloval:org.mitre.oval:def:6124
  • commentMicrosoft Windows Vista x64 Edition Service Pack 2 is installed
    ovaloval:org.mitre.oval:def:5594
  • commentMicrosoft Windows Server 2008 (32-bit) Service Pack 2 is installed
    ovaloval:org.mitre.oval:def:5653
  • commentMicrosoft Windows Server 2008 Itanium-Based Edition Service Pack 2 is installed
    ovaloval:org.mitre.oval:def:6150
  • commentMicrosoft Windows Server 2008 x64 Edition Service Pack 2 is installed
    ovaloval:org.mitre.oval:def:6216
  • commentMicrosoft Windows 7 x64 Service Pack 1 is installed
    ovaloval:org.mitre.oval:def:12627
  • commentMicrosoft Windows 7 (32-bit) Service Pack 1 is installed
    ovaloval:org.mitre.oval:def:12292
  • commentMicrosoft Windows Server 2008 R2 Itanium-Based Edition Service Pack 1 is installed
    ovaloval:org.mitre.oval:def:12583
  • commentMicrosoft Windows Server 2008 R2 x64 Service Pack 1 is installed
    ovaloval:org.mitre.oval:def:12567
  • commentMicrosoft Windows Server 2012 (64-bit) is installed
    ovaloval:org.mitre.oval:def:15585
  • commentMicrosoft Windows 8 (x64) is installed
    ovaloval:org.mitre.oval:def:15571
  • commentMicrosoft Windows 8 (x86) is installed
    ovaloval:org.mitre.oval:def:14914
descriptionThe EPATHOBJ::pprFlattenRec function in win32k.sys in the kernel-mode drivers in Microsoft Windows XP SP2 and SP3, Windows Server 2003 SP2, Windows Vista SP2, Windows Server 2008 SP2 and R2 SP1, Windows 7 SP1, Windows 8, and Windows Server 2012 does not properly initialize a pointer for the next object in a certain list, which allows local users to obtain write access to the PATHRECORD chain, and consequently gain privileges, by triggering excessive consumption of paged memory and then making many FlattenPath function calls, aka "Win32k Read AV Vulnerability."
familywindows
idoval:org.mitre.oval:def:17360
statusaccepted
submitted2013-07-15T19:34:20
titleWin32k Read AV Vulnerability - CVE-2013-3660 (MS13-053)
version72

Packetstorm

data sourcehttps://packetstormsecurity.com/files/download/122246/ppr_flatten_rec.rb.txt
idPACKETSTORM:122246
last seen2016-12-05
published2013-07-01
reporterTavis Ormandy
sourcehttps://packetstormsecurity.com/files/122246/Windows-EPATHOBJ-pprFlattenRec-Local-Privilege-Escalation.html
titleWindows EPATHOBJ::pprFlattenRec Local Privilege Escalation

Seebug

bulletinFamilyexploit
descriptionNo description provided by source.
idSSV:80185
last seen2017-11-19
modified2014-07-01
published2014-07-01
reporterRoot
sourcehttps://www.seebug.org/vuldb/ssvid-80185
titleWindows EPATHOBJ::pprFlattenRec Local Privilege Escalation

The Hacker News

References