Lucene search
K

Microsoft Windows CryptoAPI X.509 Spoofing Vulnerabilities (974571)

🗓️ 14 Oct 2009 00:00:00Reported by Copyright (C) 2009 SecPodType 
openvas
 openvas
🔗 plugins.openvas.org👁 37 Views

Microsoft Windows CryptoAPI X.509 Spoofing Vulnerabilities (974571). This host is missing a critical security update. Impact Level: System. Run Windows Update or download mentioned hotfixes from the advisory

Related
Refs
Code
###############################################################################
# OpenVAS Vulnerability Test
# $Id: secpod_ms09-056.nasl 8724 2018-02-08 15:02:56Z cfischer $
#
# Microsoft Windows CryptoAPI X.509 Spoofing Vulnerabilities (974571)
#
# Authors:
# Sharath S <[email protected]>
#
# Updated By: Madhuri D <[email protected]> on 2010-11-25
#      - To detect file version 'msasn1.dll' on vista, win 2008 and win 7
# 
# Copyright:
# Copyright (c) 2009 SecPod, http://www.secpod.com
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License version 2
# (or any later version), as published by the Free Software Foundation.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
###############################################################################

if(description)
{
  script_id(900876);
  script_version("$Revision: 8724 $");
  script_tag(name:"last_modification", value:"$Date: 2018-02-08 16:02:56 +0100 (Thu, 08 Feb 2018) $");
  script_tag(name:"creation_date", value:"2009-10-14 16:47:08 +0200 (Wed, 14 Oct 2009)");
  script_tag(name:"cvss_base", value:"7.5");
  script_tag(name:"cvss_base_vector", value:"AV:N/AC:L/Au:N/C:P/I:P/A:P");
  script_cve_id("CVE-2009-2510", "CVE-2009-2511");
  script_bugtraq_id(36475, 36577);
  script_name("Microsoft Windows CryptoAPI X.509 Spoofing Vulnerabilities (974571)");
  script_xref(name : "URL" , value : "http://support.microsoft.com/kb/974571");
  script_xref(name : "URL" , value : "http://www.vupen.com/english/advisories/2009/2891");
  script_xref(name : "URL" , value : "http://www.microsoft.com/technet/security/bulletin/MS09-056.mspx");

  script_category(ACT_GATHER_INFO);
  script_copyright("Copyright (C) 2009 SecPod");
  script_family("Windows : Microsoft Bulletins");
  script_dependencies("secpod_reg_enum.nasl");
  script_require_ports(139, 445);
  script_mandatory_keys("SMB/WindowsVersion");

  script_tag(name : "impact" , value : "Successful exploitation will allow attacker to conduct spoofing attacks on
  the affected system.

  Impact Level: System");
  script_tag(name : "affected" , value : "Microsoft Windows 7

  Microsoft Windows 2K  Service Pack 4 and prior.

  Microsoft Windows XP  Service Pack 3 and prior.

  Microsoft Windows 2K3 Service Pack 2 and prior.

  Microsoft Windows Vista Service Pack 1/2 and prior.

  Microsoft Windows Server 2008 Service Pack 1/2 and prior.");
  script_tag(name : "insight" , value : "- The issue is due to the Windows CryptoAPI incorrectly parsing a null
    terminator as the end of any values identified by an Object Identifier (OID)
    when processing ASN.1 information from X.509 certificates.

  - An integer overflow error in the Windows CryptoAPI when parsing ASN.1 object
    identifiers from X.509 certificates, which could allow an attacker to
    generate a malicious certificate that would be parsed incorrectly by the
    Windows CryptoAPI.");
  script_tag(name : "solution" , value : "Run Windows Update and update the listed hotfixes or download and
  update mentioned hotfixes in the advisory from the below link.

  http://www.microsoft.com/technet/security/bulletin/ms09-056.mspx");
  script_tag(name : "summary" , value : "This host is missing a critical security update according to
  Microsoft Bulletin MS09-056.");
  script_tag(name:"qod_type", value:"registry");
  script_tag(name:"solution_type", value:"VendorFix");
  exit(0);
}


include("smb_nt.inc");
include("secpod_reg.inc");
include("version_func.inc");
include("secpod_smb_func.inc");

if(hotfix_check_sp(xp:4, win2k:5, win2003:3, winVista:3, win7:1, win2008:3) <= 0){
  exit(0);
}

# MS09-056 Hotfix check
if(hotfix_missing(name:"974571") == 0){
  exit(0);
}

## Get System32 path
sysPath = smb_get_system32root();
if(sysPath)
{
  dllVer = fetch_file_version(sysPath, file_name:"msasn1.dll");
  if(!dllVer){
    exit(0);
  }
}

# Windows 2K
if(hotfix_check_sp(win2k:5) > 0)
{
  # Grep for msasn1.dll version < 5.0.2195.7334
  if(version_is_less(version:dllVer, test_version:"5.0.2195.7334")){
    security_message(0);
  }
}

#  Windows XP
else if(hotfix_check_sp(xp:4) > 0)
{
  SP = get_kb_item("SMB/WinXP/ServicePack");
  if("Service Pack 2" >< SP)
  {
    # Grep for msasn1.dll < 5.1.2600.3624
    if(version_is_less(version:dllVer, test_version:"5.1.2600.3624")){
      security_message(0);
    }
    exit(0);
  }
  else if("Service Pack 3" >< SP)
  {
    # Grep for msasn1.dll < 5.1.2600.5875
    if(version_is_less(version:dllVer, test_version:"5.1.2600.5875")){
      security_message(0);
    }
    exit(0);
  }
  security_message(0);
}

# Windows 2003
else if(hotfix_check_sp(win2003:3) > 0)
{
  SP = get_kb_item("SMB/Win2003/ServicePack");
  if("Service Pack 2" >< SP)
  {
    # Grep for msasn1.dll version < 5.2.3790.4584
    if(version_is_less(version:dllVer, test_version:"5.2.3790.4584")){
      security_message(0);
    }
     exit(0);
  }
  security_message(0);
}

## Get System32 path
sysPath = smb_get_system32root();
if(sysPath)
{
  dllVer = fetch_file_version(sysPath, file_name:"msasn1.dll");
  if(!dllVer){
    exit(0);
  }
}

# Windows Vista
if(hotfix_check_sp(winVista:3) > 0)
{
  SP = get_kb_item("SMB/WinVista/ServicePack");
  if("Service Pack 1" >< SP)
  {
    # Grep for msasn1.dll version < 6.0.6001.18326
    if(version_is_less(version:dllVer, test_version:"6.0.6001.18326")){
      security_message(0);
    }
     exit(0);
  }

  if("Service Pack 2" >< SP)
  {
    # Grep for msasn1.dll version < 6.0.6002.18106
      if(version_is_less(version:dllVer, test_version:"6.0.6002.18106")){
      security_message(0);
    }
     exit(0);
  }
  security_message(0);
}

# Windows Server 2008
else if(hotfix_check_sp(win2008:3) > 0)
{
  SP = get_kb_item("SMB/Win2008/ServicePack");
  if("Service Pack 1" >< SP)
  {
    # Grep for msasn1.dll version < 6.0.6001.18326
    if(version_is_less(version:dllVer, test_version:"6.0.6001.18326")){
      security_message(0);
    }
     exit(0);
  }

  if("Service Pack 2" >< SP)
  {
    # Grep for msasn1.dll version < 6.0.6002.18106
    if(version_is_less(version:dllVer, test_version:"6.0.6002.18106")){
      security_message(0);
    }
     exit(0);
  }
 security_message(0);
}

# Windows 7
else if(hotfix_check_sp(win7:1) > 0)
{
  # Grep for msasn1.dll version < 6.1.7600.16415
  if(version_is_less(version:dllVer, test_version:"6.1.7600.16415")){
     security_message(0);
  }
}

Data

Build on a solid foundation with Vulners data

We provide the essential building blocks for cybersecurity solutions with comprehensive, structured, and constantly updated vulnerability and exploits data

Api

Power your application with Vulners API

The Vulners REST API offers reliable, high-performance access to vulnerability intelligence, with 99.9% SLA uptime and CDN-backed data delivery for seamless global access

App

Assess and manage vulnerabilities with Vulners tools

Built on top of Vulners' database and SDK, end-user solutions give security professionals and developers lightweight and powerful tools for vulnerability remediation