Vulnerabilities > CVE-2017-0201 - Improper Restriction of Operations within the Bounds of a Memory Buffer vulnerability in Microsoft Internet Explorer 10/9

047910
CVSS 7.6 - HIGH
Attack vector
NETWORK
Attack complexity
HIGH
Privileges required
NONE
Confidentiality impact
COMPLETE
Integrity impact
COMPLETE
Availability impact
COMPLETE
network
high complexity
microsoft
CWE-119
nessus

Summary

A remote code execution vulnerability exists in Internet Explorer in the way that the JScript and VBScript engines render when handling objects in memory. The vulnerability could corrupt memory in such a way that an attacker could execute arbitrary code in the context of the current user, aka "Scripting Engine Memory Corruption Vulnerability." This CVE ID is unique from CVE-2017-0093.

Vulnerable Configurations

Part Description Count
Application
Microsoft
2

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.

Nessus

  • NASL familyWindows : Microsoft Bulletins
    NASL idSMB_NT_MS17_APR_INTERNET_EXPLORER.NASL
    descriptionThe Internet Explorer installation on the remote host is missing security updates. It is, therefore, affected by multiple vulnerabilities : - A remote code execution vulnerability exists when Internet Explorer improperly accesses objects in memory. The vulnerability could corrupt memory in such a way that an attacker could execute arbitrary code in the context of the current user. An attacker who successfully exploited the vulnerability could gain the same user rights as the current user. (CVE-2017-0202) - An elevation of privilege vulnerability exists when Internet Explorer does not properly enforce cross-domain policies, which could allow an attacker to access information from one domain and inject it into another domain. (CVE-2017-0210) - A remote code execution vulnerability exists in the way that the scripting engine handles objects in memory in Internet Explorer. The vulnerability could corrupt memory in such a way that an attacker could execute arbitrary code in the context of the current user. An attacker who successfully exploited the vulnerability could gain the same user rights as the current user. (CVE-2017-0201)
    last seen2020-06-01
    modified2020-06-02
    plugin id104889
    published2017-11-30
    reporterThis script is Copyright (C) 2017-2018 Tenable Network Security, Inc.
    sourcehttps://www.tenable.com/plugins/nessus/104889
    titleSecurity Updates for Internet Explorer (April 2017)
    code
    #
    # (C) Tenable Network Security, Inc.
    #
    # The descriptive text and package checks in this plugin were  
    # extracted from the Microsoft Security Updates API. The text
    # itself is copyright (C) Microsoft Corporation.
    #
    include("compat.inc");
    
    if (description)
    {
      script_id(104889);
      script_version("1.6");
      script_cvs_date("Date: 2018/08/03 11:35:09");
    
      script_cve_id(
        "CVE-2017-0201",
        "CVE-2017-0202",
        "CVE-2017-0210"
      );
      script_bugtraq_id(
        97441,
        97454,
        97512
      );
      script_xref(name:"MSKB", value:"4015549");
      script_xref(name:"MSKB", value:"4015551");
      script_xref(name:"MSKB", value:"4015550");
      script_xref(name:"MSKB", value:"4014661");
      script_xref(name:"MSFT", value:"MS17-4015549");
      script_xref(name:"MSFT", value:"MS17-4015551");
      script_xref(name:"MSFT", value:"MS17-4015550");
      script_xref(name:"MSFT", value:"MS17-4014661");
    
      script_name(english:"Security Updates for Internet Explorer (April 2017)");
      script_summary(english:"Checks for Microsoft security updates.");
    
      script_set_attribute(attribute:"synopsis", value:
    "The Internet Explorer installation on the remote host is affected by multiple vulnerabilities.");
      script_set_attribute(attribute:"description", value:
    "The Internet Explorer installation on the remote host is
    missing security updates. It is, therefore, affected by
    multiple vulnerabilities :
    
      - A remote code execution vulnerability exists when
        Internet Explorer improperly accesses objects in memory.
        The vulnerability could corrupt memory in such a way
        that an attacker could execute arbitrary code in the
        context of the current user. An attacker who
        successfully exploited the vulnerability could gain the
        same user rights as the current user.  (CVE-2017-0202)
    
      - An elevation of privilege vulnerability exists when
        Internet Explorer does not properly enforce cross-domain
        policies, which could allow an attacker to access
        information from one domain and inject it into another
        domain.  (CVE-2017-0210)
    
      - A remote code execution vulnerability exists in the way
        that the scripting engine handles objects in memory in
        Internet Explorer. The vulnerability could corrupt
        memory in such a way that an attacker could execute
        arbitrary code in the context of the current user. An
        attacker who successfully exploited the vulnerability
        could gain the same user rights as the current user.
        (CVE-2017-0201)");
      # https://support.microsoft.com/en-us/help/4015549/windows-7-windows-server-2008-r2-sp1-update-kb4015549
      script_set_attribute(attribute:"see_also", value:"http://www.nessus.org/u?e9bccd2b");
      # https://support.microsoft.com/en-us/help/4015551/windows-server-2012-update-kb4015551
      script_set_attribute(attribute:"see_also", value:"http://www.nessus.org/u?782139c0");
      # https://support.microsoft.com/en-us/help/4015550/windows-8-1-windows-server-2012-r2-update-kb4015550
      script_set_attribute(attribute:"see_also", value:"http://www.nessus.org/u?d871fd1d");
      # https://support.microsoft.com/en-us/help/4014661/cumulative-security-update-for-internet-explorer-april-11-2017
      script_set_attribute(attribute:"see_also", value:"http://www.nessus.org/u?2731a8f6");
      script_set_attribute(attribute:"solution", value:
    "Microsoft has released security updates for the affected versions of Internet Explorer.");
      script_set_cvss_base_vector("CVSS2#AV:N/AC:H/Au:N/C:C/I:C/A:C");
      script_set_cvss_temporal_vector("CVSS2#E:POC/RL:OF/RC:C");
      script_set_cvss3_base_vector("CVSS:3.0/AV:N/AC:H/PR:N/UI:R/S:U/C:H/I:H/A:H");
      script_set_cvss3_temporal_vector("CVSS:3.0/E:P/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:"vuln_publication_date", value:"2017/11/22");
      script_set_attribute(attribute:"patch_publication_date", value:"2017/11/22");
      script_set_attribute(attribute:"plugin_publication_date", value:"2017/11/30");
    
      script_set_attribute(attribute:"plugin_type", value:"local");
      script_set_attribute(attribute:"cpe", value:"cpe:/o:microsoft:windows");
      script_set_attribute(attribute:"cpe", value:"cpe:/a:microsoft:ie"); 
      script_end_attributes();
    
      script_category(ACT_GATHER_INFO);
      script_family(english:"Windows : Microsoft Bulletins");
      script_copyright(english:"This script is Copyright (C) 2017-2018 Tenable Network Security, Inc.");
      script_dependencies("smb_check_rollup.nasl", "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_hotfixes_fcheck.inc");
    include("smb_hotfixes.inc");
    include("smb_func.inc");
    include("misc_func.inc");
    
    get_kb_item_or_exit("SMB/MS_Bulletin_Checks/Possible");
    
    bulletin = 'MS17-04';
    kbs = make_list(
      '4015549',
      '4015551',
      '4015550',
      '4014661'
    );
    
    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");
    os = get_kb_item_or_exit("SMB/WindowsVersion", exit_code:1);
    
    if (hotfix_check_sp_range(vista:'2', win7:'1', win8:'0',  win81:'0') <= 0) audit(AUDIT_OS_SP_NOT_VULN);
    
    productname = get_kb_item_or_exit("SMB/ProductName", exit_code:1);
    if ("Windows 8" >< productname && "8.1" >!< productname)
     audit(AUDIT_OS_SP_NOT_VULN);
    
    if (hotfix_check_server_core() == 1) audit(AUDIT_WIN_SERVER_CORE);
    
    share = hotfix_get_systemdrive(as_share:TRUE, exit_on_fail:TRUE);
    if (!is_accessible_share(share:share)) audit(AUDIT_SHARE_FAIL, share);
    
    if (
      # Windows 8.1 / Windows Server 2012 R2
      # Internet Explorer 11
      hotfix_is_vulnerable(os:"6.3", sp:0, file:"mshtml.dll", version:"11.0.9600.18639", min_version:"11.0.9600.16000", dir:"\system32", bulletin:bulletin, kb:"4014661") ||
    
      # Windows Server 2012
      # Internet Explorer 10
      hotfix_is_vulnerable(os:"6.2", sp:0, file:"mshtml.dll", version:"10.0.9200.22121", min_version:"10.0.9200.16000", dir:"\system32", bulletin:bulletin, kb:"4014661") ||
    
      # Windows 7 / Server 2008 R2
      # Internet Explorer 11
      hotfix_is_vulnerable(os:"6.1", sp:1, file:"mshtml.dll", version:"11.0.9600.18639", min_version:"11.0.9600.16000", dir:"\system32", bulletin:bulletin, kb:"4014661") ||
    
      # Vista / Windows Server 2008
      # Internet Explorer 9
      hotfix_is_vulnerable(os:"6.0", sp:2, file:"mshtml.dll", version:"9.0.8112.20986", min_version:"9.0.8112.20000", dir:"\system32", bulletin:bulletin, kb:"4014661") ||
      hotfix_is_vulnerable(os:"6.0", sp:2, file:"mshtml.dll", version:"9.0.8112.16872", min_version:"9.0.8112.16000", dir:"\system32", bulletin:bulletin, kb:"4014661")
    )
    {
      report =  '\nNote: The fix for this issue is available in either of the following updates:\n';
      report += '  - KB4014661 : Cumulative Security Update for Internet Explorer\n';
      if(os == "6.3")
      {
        report += '  - KB4015550 : Windows 8.1 / Server 2012 R2 Monthly Rollup\n';
        hotfix_add_report(bulletin:'MS17-04', kb:'4015550', report);
      }
      else if(os == "6.2")
      {
        report += '  - KB4015551 : Windows Server 2012 Monthly Rollup\n';
        hotfix_add_report(bulletin:'MS17-04', kb:'4015551', report);
      }
      else if(os == "6.1")
      {
        report += '  - KB4015549 : Windows 7 / Server 2008 R2 Monthly Rollup\n';
        hotfix_add_report(bulletin:'MS17-04', kb:'4015549', report);
      }
      set_kb_item(name:'SMB/Missing/'+bulletin, value:TRUE);
      hotfix_security_hole();
      hotfix_check_fversion_end();
    }
    else
    {
      hotfix_check_fversion_end();
      audit(AUDIT_HOST_NOT, hotfix_get_audit_report());
    }
    
  • NASL familyWindows : Microsoft Bulletins
    NASL idSMB_NT_MS17-APR_4015551.NASL
    descriptionThe remote Windows host is missing security update 4015548 or cumulative update 4015551. It is, therefore, affected by multiple vulnerabilities : - An information disclosure vulnerability exists in the open-source libjpeg image processing library due to improper handling of objects in memory. An unauthenticated, remote attacker can exploit this to disclose sensitive information that can be utilized to bypass ASLR security protections. (CVE-2013-6629) - An information disclosure vulnerability exists in Windows DirectShow due to improper handling of objects in memory. Any unauthenticated, remote attacker can exploit this, by convincing a user to visit a website with specially crafted media content, to disclose sensitive information. (CVE-2017-0042) - Multiple information disclosure vulnerabilities exist in the win32k component due to improper handling of kernel information. A local attacker can exploit these vulnerabilities, via a specially crafted application, to disclose sensitive information. (CVE-2017-0058, CVE-2017-0188) - Multiple flaws exist in Windows Hyper-V Network Switch due to improper validation of input from the guest operating system. A local attacker can exploit these, via a specially crafted application on the guest, to execute arbitrary code on the host system. (CVE-2017-0163, CVE-2017-0180) - A flaw exists in LDAP due to buffer request lengths not being properly calculated. An unauthenticated, remote attacker can exploit this, via specially crafted traffic sent to a Domain Controller, to run processes with elevated privileges. (CVE-2017-0166) - Multiple information disclosure vulnerabilities exist in Windows Hyper-V Network Switch due to improper validation of user-supplied input. A guest attacker can exploit these to disclose sensitive information on the host server. (CVE-2017-0168, CVE-2017-0169) - Multiple denial of service vulnerabilities exist in Windows Hyper-V Network Switch due to improper validation of input from the guest operating system. A local attacker on the guest can exploit these vulnerabilities, via a specially crafted application, to crash the host system. (CVE-2017-0182, CVE-2017-0183, CVE-2017-0185, CVE-2017-0186) - Multiple denial of service vulnerabilities exist in Hyper-V due to improper validation of input from a privileged user on a guest operating system. A local attacker on the guest can exploit these, via a specially crafted application, to cause the host system to crash. (CVE-2017-0184) - A flaw exists in Windows due to improper handling of objects in memory that allows an attacker to cause a denial of service condition. (CVE-2017-0191) - An information disclosure vulnerability exists in the Adobe Type Manager Font Driver (ATMFD.dll) due to improper handling of objects in memory. An unauthenticated, remote attacker can exploit this, by convincing a user to open a specially crafted document or visit a malicious web page, to disclose sensitive information. (CVE-2017-0192) - An arbitrary code execution vulnerability exists in Microsoft Office and Windows WordPad due to improper handling of specially crafted files. An unauthenticated, remote attacker can exploit this, by convincing a user to open a malicious file, to execute arbitrary code in the context of the current user. Note that this vulnerability is being utilized to spread the Petya ransomware. (CVE-2017-0199) - A memory corruption issue exists in Internet Explorer in the JScript and VBScript engines due to improper validation of user-supplied input. An unauthenticated, remote attacker can exploit this, by convincing a user to visit a malicious website, to execute arbitrary code. (CVE-2017-0201) - A privilege escalation vulnerability exists in Internet Explorer due to a failure to properly enforce cross-domain policies. An unauthenticated, remote attacker can exploit this to inject arbitrary content and gain elevated privileges. (CVE-2017-0210) - A privilege escalation vulnerability exists in Microsoft Windows OLE due to an unspecified failure in integrity-level checks. An authenticated, remote attacker can exploit this to run an application with limited privileges at a medium integrity level. Note that this vulnerability by itself does not allow arbitrary code execution but can be used in conjunction other vulnerabilities. (CVE-2017-0211)
    last seen2020-06-01
    modified2020-06-02
    plugin id99285
    published2017-04-11
    reporterThis script is Copyright (C) 2017-2019 and is owned by Tenable, Inc. or an Affiliate thereof.
    sourcehttps://www.tenable.com/plugins/nessus/99285
    titleWindows Server 2012 April 2017 Security Updates (Petya)
    code
    #
    # (C) Tenable Network Security, Inc.
    #
    
    include("compat.inc");
    
    if (description)
    {
      script_id(99285);
      script_version("1.21");
      script_cvs_date("Date: 2019/03/04 15:01:02");
    
      script_cve_id(
        "CVE-2013-6629",
        "CVE-2017-0042",
        "CVE-2017-0158",
        "CVE-2017-0163",
        "CVE-2017-0166",
        "CVE-2017-0168",
        "CVE-2017-0169",
        "CVE-2017-0180",
        "CVE-2017-0182",
        "CVE-2017-0183",
        "CVE-2017-0184",
        "CVE-2017-0185",
        "CVE-2017-0186",
        "CVE-2017-0188",
        "CVE-2017-0191",
        "CVE-2017-0192",
        "CVE-2017-0199",
        "CVE-2017-0201",
        "CVE-2017-0210",
        "CVE-2017-0211"
      );
      script_bugtraq_id(
        63676,
        96098,
        97418,
        97427,
        97428,
        97435,
        97437,
        97438,
        97444,
        97446,
        97452,
        97454,
        97455,
        97459,
        97465,
        97466,
        97475,
        97498,
        97512,
        97514
      );
      script_xref(name:"CERT", value:"921560");
      script_xref(name:"EDB-ID", value:"41894");
      script_xref(name:"EDB-ID", value:"41934");
      script_xref(name:"MSKB", value:"4015548");
      script_xref(name:"MSFT", value:"MS17-4015548");
      script_xref(name:"IAVA", value:"2017-A-0110");
      script_xref(name:"IAVA", value:"2017-A-0111");
      script_xref(name:"MSKB", value:"4015551");
      script_xref(name:"MSFT", value:"MS17-4015551");
    
      script_name(english:"Windows Server 2012 April 2017 Security Updates (Petya)");
      script_summary(english:"Checks for rollup.");
    
      script_set_attribute(attribute:"synopsis", value:
    "The remote Windows host is affected by multiple vulnerabilities.");
      script_set_attribute(attribute:"description", value:
    "The remote Windows host is missing security update 4015548
    or cumulative update 4015551. It is, therefore, affected by
    multiple vulnerabilities :
    
      - An information disclosure vulnerability exists in the
        open-source libjpeg image processing library due to
        improper handling of objects in memory. An
        unauthenticated, remote attacker can exploit this to
        disclose sensitive information that can be utilized to
        bypass ASLR security protections. (CVE-2013-6629)
    
      - An information disclosure vulnerability exists in
        Windows DirectShow due to improper handling of objects
        in memory. Any unauthenticated, remote attacker can
        exploit this, by convincing a user to visit a website
        with specially crafted media content, to disclose
        sensitive information. (CVE-2017-0042)
    
      - Multiple information disclosure vulnerabilities exist in
        the win32k component due to improper handling of kernel
        information. A local attacker can exploit these
        vulnerabilities, via a specially crafted application, to
        disclose sensitive information. (CVE-2017-0058,
        CVE-2017-0188)
    
      - Multiple flaws exist in Windows Hyper-V Network Switch
        due to improper validation of input from the guest
        operating system. A local attacker can exploit these,
        via a specially crafted application on the guest, to
        execute arbitrary code on the host system.
        (CVE-2017-0163, CVE-2017-0180)
    
      - A flaw exists in LDAP due to buffer request lengths not
        being properly calculated. An unauthenticated, remote
        attacker can exploit this, via specially crafted traffic
        sent to a Domain Controller, to run processes with
        elevated privileges. (CVE-2017-0166)
    
      - Multiple information disclosure vulnerabilities exist in
        Windows Hyper-V Network Switch due to improper validation
        of user-supplied input. A guest attacker can exploit
        these to disclose sensitive information on the host
        server. (CVE-2017-0168, CVE-2017-0169)
    
      - Multiple denial of service vulnerabilities exist in
        Windows Hyper-V Network Switch due to improper
        validation of input from the guest operating system. A
        local attacker on the guest can exploit these
        vulnerabilities, via a specially crafted application, to
        crash the host system. (CVE-2017-0182, CVE-2017-0183,
        CVE-2017-0185, CVE-2017-0186)
    
      - Multiple denial of service vulnerabilities exist in
        Hyper-V due to improper validation of input from a
        privileged user on a guest operating system. A local
        attacker on the guest can exploit these, via a specially
        crafted application, to cause the host system to crash.
        (CVE-2017-0184)
    
      - A flaw exists in Windows due to improper handling of
        objects in memory that allows an attacker to cause a
        denial of service condition. (CVE-2017-0191)
    
      - An information disclosure vulnerability exists in the
        Adobe Type Manager Font Driver (ATMFD.dll) due to
        improper handling of objects in memory. An
        unauthenticated, remote attacker can exploit this, by
        convincing a user to open a specially crafted document
        or visit a malicious web page, to disclose sensitive
        information. (CVE-2017-0192)
    
      - An arbitrary code execution vulnerability exists in
        Microsoft Office and Windows WordPad due to improper
        handling of specially crafted files. An unauthenticated,
        remote attacker can exploit this, by convincing a user
        to open a malicious file, to execute arbitrary code in
        the context of the current user. Note that this
        vulnerability is being utilized to spread the Petya
        ransomware. (CVE-2017-0199)
    
      - A memory corruption issue exists in Internet
        Explorer in the JScript and VBScript engines due to
        improper validation of user-supplied input. An
        unauthenticated, remote attacker can exploit this, by
        convincing a user to visit a malicious website, to
        execute arbitrary code. (CVE-2017-0201)
    
      - A privilege escalation vulnerability exists in Internet
        Explorer due to a failure to properly enforce
        cross-domain policies. An unauthenticated, remote
        attacker can exploit this to inject arbitrary content
        and gain elevated privileges. (CVE-2017-0210)
    
      - A privilege escalation vulnerability exists in Microsoft
        Windows OLE due to an unspecified failure in
        integrity-level checks. An authenticated, remote
        attacker can exploit this to run an application with
        limited privileges at a medium integrity level. Note
        that this vulnerability by itself does not allow
        arbitrary code execution but can be used in conjunction
        other vulnerabilities. (CVE-2017-0211)");
      # https://support.microsoft.com/en-us/help/4015551/windows-server-2012-update-kb4015551
      script_set_attribute(attribute:"see_also", value:"http://www.nessus.org/u?782139c0");
      # https://www.tenable.com/blog/petyanotpetya-ransomware-detection-for-the-modern-enterprise
      script_set_attribute(attribute:"see_also", value:"http://www.nessus.org/u?59db5b5b");
      script_set_attribute(attribute:"solution", value:
    "Apply Security Only update KB4015548 or Cumulative update KB4015551.");
      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:L/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:"cvss_score_source", value:"CVE-2017-0199"); 
    
      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:'Microsoft Office Word Malicious Hta Execution');
      script_set_attribute(attribute:"exploit_framework_metasploit", value:"true");
    
      script_set_attribute(attribute:"vuln_publication_date", value:"2013/11/12");
      script_set_attribute(attribute:"patch_publication_date", value:"2017/04/11");
      script_set_attribute(attribute:"plugin_publication_date", value:"2017/04/11");
    
      script_set_attribute(attribute:"plugin_type", value:"local");
      script_set_attribute(attribute:"cpe", value:"cpe:/o:microsoft:windows");
    
      script_set_attribute(attribute:"stig_severity", value:"I");
      script_set_attribute(attribute:"in_the_news", value:"true");
      script_end_attributes();
    
      script_category(ACT_GATHER_INFO);
      script_family(english:"Windows : Microsoft Bulletins");
    
      script_copyright(english:"This script is Copyright (C) 2017-2019 and is owned by Tenable, Inc. or an Affiliate thereof.");
    
      script_dependencies("smb_hotfixes.nasl", "ms_bulletin_checks_possible.nasl", "smb_check_rollup.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_hotfixes_fcheck.inc");
    include("smb_hotfixes.inc");
    include("smb_func.inc");
    include("smb_reg_query.inc");
    include("misc_func.inc");
    
    get_kb_item_or_exit('SMB/MS_Bulletin_Checks/Possible');
    
    bulletin = 'MS17-04';
    kbs = make_list(
      '4015548', # 2012 Security Only
      '4015551'  # 2012 Monthly Rollup
    );
    
    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(win8:'0') <= 0) audit(AUDIT_OS_SP_NOT_VULN);
    
    # Windows 8 EOL
    productname = get_kb_item_or_exit("SMB/ProductName", exit_code:1);
    if ("Windows 8" >< productname && "8.1" >!< productname) audit(AUDIT_OS_SP_NOT_VULN);
    
    share = hotfix_get_systemdrive(exit_on_fail:TRUE, as_share:TRUE);
    if (!is_accessible_share(share:share)) audit(AUDIT_SHARE_FAIL, share);
    
    if ( smb_check_rollup(os:"6.2", sp:0, rollup_date: "04_2017", bulletin:bulletin, rollup_kb_list:[4015548, 4015551]) )
    {
      replace_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, hotfix_get_audit_report());
    }