Vulnerabilities > CVE-2017-0295 - Unspecified vulnerability in Microsoft Windows 10 and Windows Server 2016

047910
CVSS 5.5 - MEDIUM
Attack vector
LOCAL
Attack complexity
LOW
Privileges required
LOW
Confidentiality impact
NONE
Integrity impact
HIGH
Availability impact
NONE
local
low complexity
microsoft
nessus

Summary

Microsoft Windows 10 1607 and 1703, and Windows Server 2016 allow an authenticated attacker to modify the C:\Users\DEFAULT folder structure, aka "Windows Default Folder Tampering Vulnerability".

Vulnerable Configurations

Part Description Count
OS
Microsoft
3

Nessus

  • NASL familyWindows : Microsoft Bulletins
    NASL idSMB_NT_MS17_JUN_4022715.NASL
    descriptionThe remote Windows host is missing security update KB4022715. It is, therefore, affected by multiple vulnerabilities : - Multiple security bypass vulnerabilities exist in Device Guard. A local attacker can exploit these, via a specially crafted script, to bypass the Device Guard Code Integrity policy and inject arbitrary code into a trusted PowerShell process. (CVE-2017-0173, CVE-2017-0215, CVE-2017-0216, CVE-2017-0218, CVE-2017-0219) - An elevation of privilege vulnerability exists in Windows Hyper-V instruction emulation due to a failure to properly enforce privilege levels. An attacker on a guest operating system can exploit this to gain elevated privileges on the guest. Note that the host operating system is not vulnerable. (CVE-2017-0193) - Multiple information disclosure vulnerabilities exist in Windows Uniscribe due to improper handling of objects in memory. An unauthenticated, remote attacker can exploit these, by convincing a user to visit a specially crafted website or open a specially crafted document, to disclose the contents of memory. (CVE-2017-0282, CVE-2017-0284, CVE-2017-0285) - A remote code execution vulnerability exists in Windows Uniscribe software due to improper handling of objects in memory. An unauthenticated, remote attacker can exploit this, by convincing a user to visit a specially crafted website or to open a specially crafted document, to execute arbitrary code in the context of the current user. (CVE-2017-0283) - Multiple information disclosure vulnerabilities exist in the Windows GDI component due to improper handling of objects in memory. An unauthenticated, remote attacker can exploit these, by convincing a user to visit a specially crafted website or open a specially crafted document, to disclose the contents of memory. (CVE-2017-0287, CVE-2017-0288, CVE-2017-0289, CVE-2017-8531, CVE-2017-8532, CVE-2017-8533) - Multiple remote code execution vulnerabilities exist in Microsoft Windows due to improper parsing of PDF files. An unauthenticated, remote attacker can exploit these, by convincing a user to open a specially crafted PDF file, to execute arbitrary code in the context of the current user. (CVE-2017-0291, CVE-2017-0292) - A remote code execution vulnerability exists in Microsoft Windows due to improper handling of cabinet files. An unauthenticated, remote attacker can exploit this, by convincing a user to open a specially crafted cabinet file, to execute arbitrary code in the context of the current user. (CVE-2017-0294) - A flaw exists in Microsoft Windows due to incorrect permissions being set on folders inside the DEFAULT folder structure. An authenticated, remote attacker can exploit this, by logging in to the affected system before the user can log in, to modify the user
    last seen2020-05-31
    modified2017-06-13
    plugin id100760
    published2017-06-13
    reporterThis script is Copyright (C) 2017-2020 and is owned by Tenable, Inc. or an Affiliate thereof.
    sourcehttps://www.tenable.com/plugins/nessus/100760
    titleKB4022715: Windows 10 Version 1607 and Windows Server 2016 June 2017 Cumulative Update
    code
    #
    # (C) Tenable Network Security, Inc.
    #
    
    include("compat.inc");
    
    if (description)
    {
      script_id(100760);
      script_version("1.28");
      script_set_attribute(attribute:"plugin_modification_date", value:"2020/05/28");
    
      script_cve_id(
        "CVE-2017-0173",
        "CVE-2017-0193",
        "CVE-2017-0215",
        "CVE-2017-0216",
        "CVE-2017-0218",
        "CVE-2017-0219",
        "CVE-2017-0282",
        "CVE-2017-0283",
        "CVE-2017-0284",
        "CVE-2017-0285",
        "CVE-2017-0287",
        "CVE-2017-0288",
        "CVE-2017-0289",
        "CVE-2017-0291",
        "CVE-2017-0292",
        "CVE-2017-0294",
        "CVE-2017-0295",
        "CVE-2017-0296",
        "CVE-2017-0297",
        "CVE-2017-0298",
        "CVE-2017-0299",
        "CVE-2017-0300",
        "CVE-2017-8460",
        "CVE-2017-8462",
        "CVE-2017-8464",
        "CVE-2017-8465",
        "CVE-2017-8466",
        "CVE-2017-8468",
        "CVE-2017-8470",
        "CVE-2017-8471",
        "CVE-2017-8473",
        "CVE-2017-8474",
        "CVE-2017-8475",
        "CVE-2017-8476",
        "CVE-2017-8477",
        "CVE-2017-8478",
        "CVE-2017-8479",
        "CVE-2017-8480",
        "CVE-2017-8481",
        "CVE-2017-8482",
        "CVE-2017-8483",
        "CVE-2017-8484",
        "CVE-2017-8485",
        "CVE-2017-8489",
        "CVE-2017-8490",
        "CVE-2017-8491",
        "CVE-2017-8492",
        "CVE-2017-8493",
        "CVE-2017-8494",
        "CVE-2017-8496",
        "CVE-2017-8497",
        "CVE-2017-8498",
        "CVE-2017-8504",
        "CVE-2017-8515",
        "CVE-2017-8517",
        "CVE-2017-8518",
        "CVE-2017-8522",
        "CVE-2017-8523",
        "CVE-2017-8524",
        "CVE-2017-8527",
        "CVE-2017-8530",
        "CVE-2017-8531",
        "CVE-2017-8532",
        "CVE-2017-8533",
        "CVE-2017-8543",
        "CVE-2017-8544",
        "CVE-2017-8547",
        "CVE-2017-8548",
        "CVE-2017-8549",
        "CVE-2017-8553",
        "CVE-2017-8554",
        "CVE-2017-8575",
        "CVE-2017-8576",
        "CVE-2017-8579"
      );
      script_bugtraq_id(
        98818,
        98819,
        98820,
        98821,
        98824,
        98826,
        98833,
        98835,
        98836,
        98837,
        98839,
        98840,
        98843,
        98844,
        98845,
        98846,
        98847,
        98848,
        98849,
        98850,
        98852,
        98853,
        98854,
        98855,
        98856,
        98857,
        98858,
        98859,
        98860,
        98862,
        98863,
        98865,
        98867,
        98869,
        98870,
        98873,
        98878,
        98879,
        98880,
        98882,
        98884,
        98885,
        98886,
        98887,
        98892,
        98895,
        98896,
        98897,
        98898,
        98900,
        98901,
        98902,
        98903,
        98904,
        98914,
        98918,
        98920,
        98922,
        98923,
        98926,
        98928,
        98929,
        98930,
        98932,
        98933,
        98940,
        98942,
        98954,
        98955,
        99210,
        99212,
        99215
      );
      script_xref(name:"MSKB", value:"4022715");
      script_xref(name:"MSFT", value:"MS17-4022715");
    
      script_name(english:"KB4022715: Windows 10 Version 1607 and Windows Server 2016 June 2017 Cumulative Update");
      script_summary(english:"Checks for presence of the patch 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 KB4022715. It is,
    therefore, affected by multiple vulnerabilities :
    
      - Multiple security bypass vulnerabilities exist in
        Device Guard. A local attacker can exploit these, via a
        specially crafted script, to bypass the Device Guard
        Code Integrity policy and inject arbitrary code into a
        trusted PowerShell process. (CVE-2017-0173,
        CVE-2017-0215, CVE-2017-0216, CVE-2017-0218,
        CVE-2017-0219)
    
      - An elevation of privilege vulnerability exists in
        Windows Hyper-V instruction emulation due to a failure
        to properly enforce privilege levels. An attacker on a
        guest operating system can exploit this to gain elevated
        privileges on the guest. Note that the host operating
        system is not vulnerable. (CVE-2017-0193)
    
      - Multiple information disclosure vulnerabilities exist in
        Windows Uniscribe due to improper handling of objects in
        memory. An unauthenticated, remote attacker can exploit
        these, by convincing a user to visit a specially crafted
        website or open a specially crafted document, to
        disclose the contents of memory. (CVE-2017-0282,
        CVE-2017-0284, CVE-2017-0285)
    
      - A remote code execution vulnerability exists in
        Windows Uniscribe software due to improper handling of
        objects in memory. An unauthenticated, remote attacker
        can exploit this, by convincing a user to visit a
        specially crafted website or to open a specially crafted
        document, to execute arbitrary code in the context
        of the current user. (CVE-2017-0283)
    
      - Multiple information disclosure vulnerabilities exist in
        the Windows GDI component due to improper handling of
        objects in memory. An unauthenticated, remote attacker
        can exploit these, by convincing a user to visit a
        specially crafted website or open a specially crafted
        document, to disclose the contents of memory.
        (CVE-2017-0287, CVE-2017-0288, CVE-2017-0289,
        CVE-2017-8531, CVE-2017-8532, CVE-2017-8533)
    
      - Multiple remote code execution vulnerabilities exist in
        Microsoft Windows due to improper parsing of PDF files.
        An unauthenticated, remote attacker can exploit these,
        by convincing a user to open a specially crafted PDF
        file, to execute arbitrary code in the context of the
        current user. (CVE-2017-0291, CVE-2017-0292)
    
      - A remote code execution vulnerability exists in
        Microsoft Windows due to improper handling of cabinet
        files. An unauthenticated, remote attacker can exploit
        this, by convincing a user to open a specially crafted
        cabinet file, to execute arbitrary code in the context
        of the current user. (CVE-2017-0294)
    
      - A flaw exists in Microsoft Windows due to incorrect
        permissions being set on folders inside the DEFAULT
        folder structure. An authenticated, remote attacker can
        exploit this, by logging in to the affected system
        before the user can log in, to modify the user's DEFAULT
        folder contents. (CVE-2017-0295)
    
      - An elevation of privilege vulnerability exists in
        tdx.sys due to a failure to check the length of a buffer
        prior to copying memory to it. A local attacker can
        exploit this, via a specially crafted application, to
        execute arbitrary code in an elevated context.
        (CVE-2017-0296)
    
      - An elevation of privilege vulnerability exists in the
        Windows kernel due to improper handling of objects in
        memory. A local attacker can exploit this, via a
        specially crafted application, to execute arbitrary code
        with elevated permissions. (CVE-2017-0297)
    
      - An elevation of privilege vulnerability exists in the
        DCOM object in Helppane.exe, when configured to run as
        the interactive user, due to a failure to properly
        authenticate the client. An authenticated, remote
        attacker can exploit this, via a specially crafted
        application, to run arbitrary code in another user's
        session after that user has logged on to the same system
        using Terminal Services or Fast User Switching.
        (CVE-2017-0298)
    
      - Multiple information disclosure vulnerabilities exist in
        the Windows kernel due to improper initialization of
        objects in memory. An authenticated, remote attacker can
        exploit these, via a specially crafted application, to
        disclose the base address of the kernel driver.
        (CVE-2017-0299, CVE-2017-0300, CVE-2017-8462,
        CVE-2017-8485)
    
      - An information disclosure vulnerability exists in
        Microsoft Windows due to improper parsing of PDF files.
        An unauthenticated, remote attacker can exploit this, by
        convincing a user to open a specially crafted PDF file,
        to disclose the contents of memory. (CVE-2017-8460)
    
      - A remote code execution vulnerability exists in Windows
        due to improper handling of shortcuts. An
        unauthenticated, remote attacker can exploit this, by
        convincing a user to insert a removable drive containing
        a malicious shortcut and binary, to automatically
        execute arbitrary code in the context of the current
        user. (CVE-2017-8464)
    
      - Multiple elevation of privilege vulnerabilities exist in
        the Windows kernel-mode driver due to improper handling
        of objects in memory. A local attacker can exploit
        these, via a specially crafted application, to run
        processes in an elevated context. (CVE-2017-8465,
        CVE-2017-8466, CVE-2017-8468)
    
      - Multiple information disclosure vulnerabilities exist in
        the Windows kernel due to improper initialization of
        objects in memory. An authenticated, remote attacker can
        exploit these, via a specially crafted application, to
        disclose sensitive information. (CVE-2017-8470,
        CVE-2017-8471, CVE-2017-8473, CVE-2017-8474,
        CVE-2017-8475, CVE-2017-8476, CVE-2017-8477,
        CVE-2017-8478, CVE-2017-8479, CVE-2017-8480,
        CVE-2017-8481, CVE-2017-8482, CVE-2017-8483,
        CVE-2017-8484, CVE-2017-8489, CVE-2017-8490,
        CVE-2017-8491, CVE-2017-8492)
    
      - A security bypass vulnerability exists due to a failure
        to enforce case sensitivity for certain variable checks.
        A local attacker can exploit this, via a specially
        crafted application, to bypass Unified Extensible
        Firmware Interface (UEFI) variable security.
        (CVE-2017-8493)
    
      - An elevation of privilege vulnerability exists in the
        Windows Secure Kernel Mode feature due to a failure to
        properly handle objects in memory. A local attacker can
        exploit this, via a specially crafted application, to
        bypass virtual trust levels (VTL). (CVE-2017-8494)
    
      - Multiple remote code execution vulnerabilities exist in
        Microsoft Edge due to improper handling of objects in
        memory. An unauthenticated, remote attacker can exploit
        these, by convincing a user to visit a specially crafted
        website, to execute arbitrary code in the context of the
        current user. (CVE-2017-8496, CVE-2017-8497)
    
      - An information disclosure vulnerability exists in
        Microsoft Edge due to improper handling of JavaScript
        XML DOM objects. An unauthenticated, remote attacker can
        exploit this, by convincing a user to visit a specially
        crafted website, to disclose sensitive information.
        (CVE-2017-8498)
    
      - An information disclosure vulnerability exists in
        Microsoft Edge in the Fetch API due to improper handling
        of filtered response types. An unauthenticated, remote
        attacker can exploit this, by convincing a user to visit
        a specially crafted website, to disclose sensitive
        information in the URL of a cross-origin request.
        (CVE-2017-8504)
    
      - A denial of service vulnerability exists in Windows due
        to improper handling of kernel mode requests. An
        unauthenticated, remote attacker can exploit this, via a
        specially crafted kernel mode request, to cause the
        machine to stop responding or rebooting. (CVE-2017-8515)
    
      - Multiple remote code execution vulnerabilities exist in
        Microsoft browsers in the JavaScript engines due to
        improper handling of objects in memory. An
        unauthenticated, remote attacker can exploit these, by
        convincing a user to visit a specially crafted website,
        to execute arbitrary code in the context of the current
        user. (CVE-2017-8517, CVE-2017-8522, CVE-2017-8524,
        CVE-2017-8548)
    
      - A same-origin policy bypass vulnerability exists in
        Microsoft Edge due to a failure to properly apply the
        Same Origin Policy for HTML elements. An
        unauthenticated, remote attacker can exploit this, by
        convincing a user to follow a link, to load a page with
        malicious content. (CVE-2017-8523)
    
      - A remote code execution vulnerability exists in the
        Windows font library due to improper handling of
        embedded fonts. An unauthenticated, remote attacker can
        exploit this, by convincing a user to visit a specially
        crafted website or open a specially crafted Microsoft
        document, to execute arbitrary code in the context of
        the current user. (CVE-2017-8527)
    
      - A same-origin policy bypass vulnerability exists in
        Microsoft Edge due to a failure to properly enforce
        same-origin policies. An unauthenticated, remote
        attacker can exploit this, by convincing a user to visit
        a specially crafted website, to disclose information
        from origins outside the current one. (CVE-2017-8530)
    
      - A remote code execution vulnerability exists in the
        Windows Search functionality due to improper handling of
        objects in memory. An unauthenticated, remote attacker
        can exploit this, via a specially crafted SMB message,
        to execute arbitrary code. (CVE-2017-8543)
    
      - An information disclosure vulnerability exists in the
        Windows Search functionality due to improper handling of
        objects in memory. An unauthenticated, remote attacker
        can exploit this, via a specially crafted SMB message,
        to disclose sensitive information. (CVE-2017-8544)
    
      - A remote code execution vulnerability exists in Internet
        Explorer due to improper handling of objects in memory.
        An unauthenticated, remote attacker can exploit this, by
        convincing a user to visit a specially crafted website,
        to execute arbitrary code in the context of the current
        user. (CVE-2017-8547)
    
      - A remote code execution vulnerability exists in
        Microsoft Edge in the JavaScript scripting engine due to
        improper handling of objects in memory. An
        unauthenticated, remote attacker can exploit this, by
        convincing a user to visit a specially crafted website,
        to execute arbitrary code in the context of the current
        user. (CVE-2017-8549)
    
      - Multiple information disclosure vulnerabilities exist in
        the Windows kernel due to improper handling of objects
        in memory. An authenticated, remote attacker can exploit
        these, via a specially crafted application, to disclose
        the contents of memory. (CVE-2017-8553, CVE-2017-8554)
    
      - An information disclosure vulnerability exists in the
        Windows Graphics component due to improper handling of
        objects in memory. An authenticated, remote attacker can
        exploit this, via a specially crafted application, to
        disclose sensitive information. (CVE-2017-8575)
    
      - An elevation of privilege vulnerability exists in the
        Windows Graphics component due to improper
        initialization of objects in memory. A local attacker
        can exploit this, via a specially crafted application,
        to execute arbitrary code in kernel mode.
        (CVE-2017-8576)
    
      - An elevation of privilege vulnerability exists DirectX
        due to improper handling of objects in memory. A local
        attacker can exploit this, via a specially crafted
        application, to execute arbitrary code in kernel mode.
        (CVE-2017-8576)
    ");
      # https://support.microsoft.com/en-us/help/4022715/windows-10-update-kb4022715
      script_set_attribute(attribute:"see_also", value:"http://www.nessus.org/u?4ac6572f");
      script_set_attribute(attribute:"solution", value:
    "Apply security update KB4022715 as well as refer to the KB article for additional information.");
      script_set_cvss_base_vector("CVSS2#AV:N/AC:L/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:N/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-8543");
    
      script_set_attribute(attribute:"exploitability_ease", value:"Exploits are available");
      script_set_attribute(attribute:"exploit_available", value:"true");
      script_set_attribute(attribute:"exploited_by_malware", value:"true");
      script_set_attribute(attribute:"metasploit_name", value:'LNK Code Execution Vulnerability');
      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:'CANVAS');
    
      script_set_attribute(attribute:"vuln_publication_date", value:"2017/06/13");
      script_set_attribute(attribute:"patch_publication_date", value:"2017/06/13");
      script_set_attribute(attribute:"plugin_publication_date", value:"2017/06/13");
    
      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) 2017-2020 and is owned by Tenable, Inc. or an Affiliate thereof.");
    
      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_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");
    
    ## NB: Microsoft 
    bulletin = 'MS17-06';
    kbs = make_list('4022715');
    
    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);
    
    # Update only applies to Window 10 1607 / Server 2016
    if (hotfix_check_sp_range(win10:'0') <= 0) 
      audit(AUDIT_OS_SP_NOT_VULN);
    
    if (hotfix_check_server_nano() == 1) audit(AUDIT_OS_NOT, "a currently supported OS (Windows Nano Server)");
    
    
    share = hotfix_get_systemdrive(as_share:TRUE, exit_on_fail:TRUE);
    if (!is_accessible_share(share:share)) audit(AUDIT_SHARE_FAIL, share);
    
    if (
      # Windows 10 1607 / Server 2016
      smb_check_rollup(
        os:"10",
        sp:0,
        os_build:"14393",
        rollup_date:"06_2017",
        bulletin:bulletin,
        rollup_kb_list:kbs)
    )
    {
      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());
    }
    
  • NASL familyWindows : Microsoft Bulletins
    NASL idSMB_NT_MS17_JUN_4022725.NASL
    descriptionThe remote Windows 10 version 1703 host is missing security update KB4022725. It is, therefore, affected by multiple vulnerabilities : - Multiple information disclosure vulnerabilities exist in Windows Uniscribe due to improper handling of objects in memory. An unauthenticated, remote attacker can exploit these, by convincing a user to visit a specially crafted website or to open a specially crafted document, to disclose the contents of memory. (CVE-2017-0282, CVE-2017-0285) - A remote code execution vulnerability exists in Windows Uniscribe software due to improper handling of objects in memory. An unauthenticated, remote attacker can exploit this, by convincing a user to visit a specially crafted website or to open a specially crafted document, to execute arbitrary code in the context of the current user. (CVE-2017-0283) - Multiple information disclosure vulnerabilities exist in the Windows GDI component due to improper handling of objects in memory. An unauthenticated, remote attacker can exploit these, by convincing a user to visit a specially crafted website or open a specially crafted document, to disclose the contents of memory. (CVE-2017-0287, CVE-2017-0288, CVE-2017-0289, CVE-2017-8531, CVE-2017-8532, CVE-2017-8533) - Multiple remote code execution vulnerabilities exist in Microsoft Windows due to improper parsing of PDF files. An unauthenticated, remote attacker can exploit these, by convincing a user to open a specially crafted PDF file, to execute arbitrary code in the context of the current user. (CVE-2017-0291, CVE-2017-0292) - A remote code execution vulnerability exists in Microsoft Windows due to improper handling of cabinet files. An unauthenticated, remote attacker can exploit this, by convincing a user to open a specially crafted cabinet file, to execute arbitrary code in the context of the current user. (CVE-2017-0294) - A flaw exists in Microsoft Windows due to incorrect permissions being set on folders inside the DEFAULT folder structure. An authenticated, remote attacker can exploit this, by logging in to the affected system before the user can log in, to modify the user
    last seen2020-05-31
    modified2017-06-13
    plugin id100763
    published2017-06-13
    reporterThis script is Copyright (C) 2017-2020 and is owned by Tenable, Inc. or an Affiliate thereof.
    sourcehttps://www.tenable.com/plugins/nessus/100763
    titleKB4022725: Windows 10 Version 1703 June 2017 Cumulative Update
    code
    #
    # (C) Tenable Network Security, Inc.
    #
    
    include("compat.inc");
    
    if (description)
    {
      script_id(100763);
      script_version("1.24");
      script_set_attribute(attribute:"plugin_modification_date", value:"2020/05/28");
    
      script_cve_id(
        "CVE-2017-0282",
        "CVE-2017-0283",
        "CVE-2017-0285",
        "CVE-2017-0287",
        "CVE-2017-0288",
        "CVE-2017-0289",
        "CVE-2017-0291",
        "CVE-2017-0292",
        "CVE-2017-0294",
        "CVE-2017-0295",
        "CVE-2017-0296",
        "CVE-2017-0297",
        "CVE-2017-0298",
        "CVE-2017-0299",
        "CVE-2017-0300",
        "CVE-2017-8460",
        "CVE-2017-8462",
        "CVE-2017-8464",
        "CVE-2017-8465",
        "CVE-2017-8470",
        "CVE-2017-8471",
        "CVE-2017-8474",
        "CVE-2017-8475",
        "CVE-2017-8476",
        "CVE-2017-8477",
        "CVE-2017-8478",
        "CVE-2017-8479",
        "CVE-2017-8480",
        "CVE-2017-8481",
        "CVE-2017-8482",
        "CVE-2017-8483",
        "CVE-2017-8484",
        "CVE-2017-8485",
        "CVE-2017-8489",
        "CVE-2017-8490",
        "CVE-2017-8491",
        "CVE-2017-8492",
        "CVE-2017-8493",
        "CVE-2017-8498",
        "CVE-2017-8499",
        "CVE-2017-8504",
        "CVE-2017-8515",
        "CVE-2017-8517",
        "CVE-2017-8518",
        "CVE-2017-8520",
        "CVE-2017-8521",
        "CVE-2017-8522",
        "CVE-2017-8523",
        "CVE-2017-8524",
        "CVE-2017-8527",
        "CVE-2017-8530",
        "CVE-2017-8531",
        "CVE-2017-8532",
        "CVE-2017-8533",
        "CVE-2017-8543",
        "CVE-2017-8544",
        "CVE-2017-8547",
        "CVE-2017-8548",
        "CVE-2017-8549",
        "CVE-2017-8554",
        "CVE-2017-8555",
        "CVE-2017-8575",
        "CVE-2017-8576",
        "CVE-2017-8579"
      );
      script_bugtraq_id(
        98818,
        98819,
        98820,
        98821,
        98824,
        98826,
        98833,
        98835,
        98836,
        98837,
        98839,
        98840,
        98843,
        98845,
        98847,
        98848,
        98849,
        98850,
        98853,
        98854,
        98856,
        98857,
        98858,
        98859,
        98860,
        98862,
        98863,
        98865,
        98867,
        98869,
        98870,
        98883,
        98884,
        98885,
        98886,
        98887,
        98892,
        98895,
        98900,
        98901,
        98902,
        98903,
        98904,
        98914,
        98920,
        98922,
        98923,
        98925,
        98926,
        98928,
        98929,
        98930,
        98932,
        98933,
        98942,
        98954,
        98955,
        98956,
        99210,
        99212,
        99215
      );
      script_xref(name:"MSKB", value:"4022725");
      script_xref(name:"MSFT", value:"MS17-4022725");
    
      script_name(english:"KB4022725: Windows 10 Version 1703 June 2017 Cumulative Update");
      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 10 version 1703 host is missing security update
    KB4022725. It is, therefore, affected by multiple vulnerabilities :
    
      - Multiple information disclosure vulnerabilities exist in
        Windows Uniscribe due to improper handling of objects in
        memory. An unauthenticated, remote attacker can exploit
        these, by convincing a user to visit a specially crafted
        website or to open a specially crafted document, to
        disclose the contents of memory. (CVE-2017-0282,
        CVE-2017-0285)
    
      - A remote code execution vulnerability exists in
        Windows Uniscribe software due to improper handling of
        objects in memory. An unauthenticated, remote attacker
        can exploit this, by convincing a user to visit a
        specially crafted website or to open a specially crafted
        document, to execute arbitrary code in the context
        of the current user. (CVE-2017-0283)
    
      - Multiple information disclosure vulnerabilities exist in
        the Windows GDI component due to improper handling of
        objects in memory. An unauthenticated, remote attacker
        can exploit these, by convincing a user to visit a
        specially crafted website or open a specially crafted
        document, to disclose the contents of memory.
        (CVE-2017-0287, CVE-2017-0288, CVE-2017-0289,
        CVE-2017-8531, CVE-2017-8532, CVE-2017-8533)
    
      - Multiple remote code execution vulnerabilities exist in
        Microsoft Windows due to improper parsing of PDF files.
        An unauthenticated, remote attacker can exploit these,
        by convincing a user to open a specially crafted PDF
        file, to execute arbitrary code in the context of the
        current user. (CVE-2017-0291, CVE-2017-0292)
    
      - A remote code execution vulnerability exists in
        Microsoft Windows due to improper handling of cabinet
        files. An unauthenticated, remote attacker can exploit
        this, by convincing a user to open a specially crafted
        cabinet file, to execute arbitrary code in the context
        of the current user. (CVE-2017-0294)
    
      - A flaw exists in Microsoft Windows due to incorrect
        permissions being set on folders inside the DEFAULT
        folder structure. An authenticated, remote attacker can
        exploit this, by logging in to the affected system
        before the user can log in, to modify the user's DEFAULT
        folder contents. (CVE-2017-0295)
    
      - An elevation of privilege vulnerability exists in
        tdx.sys due to a failure to check the length of a buffer
        prior to copying memory to it. A local attacker can
        exploit this, via a specially crafted application, to
        execute arbitrary code in an elevated context.
        (CVE-2017-0296)
    
      - An elevation of privilege vulnerability exists in the
        Windows kernel due to improper handling of objects in
        memory. A local attacker can exploit this, via a
        specially crafted application, to execute arbitrary code
        with elevated permissions. (CVE-2017-0297)
    
      - An elevation of privilege vulnerability exists in the
        DCOM object in Helppane.exe, when configured to run as
        the interactive user, due to a failure to properly
        authenticate the client. An authenticated, remote
        attacker can exploit this, via a specially crafted
        application, to run arbitrary code in another user's
        session after that user has logged on to the same system
        using Terminal Services or Fast User Switching.
        (CVE-2017-0298)
    
      - Multiple information disclosure vulnerabilities exist in
        the Windows kernel due to improper initialization of
        objects in memory. An authenticated, remote attacker can
        exploit these, via a specially crafted application, to
        disclose the base address of the kernel driver.
        (CVE-2017-0299, CVE-2017-0300, CVE-2017-8462,
        CVE-2017-8485)
    
      - An information disclosure vulnerability exists in
        Microsoft Windows due to improper parsing of PDF files.
        An unauthenticated, remote attacker can exploit this, by
        convincing a user to open a specially crafted PDF file,
        to disclose the contents of memory. (CVE-2017-8460)
    
      - A remote code execution vulnerability exists in Windows
        due to improper handling of shortcuts. An
        unauthenticated, remote attacker can exploit this, by
        convincing a user to insert a removable drive containing
        a malicious shortcut and binary, to automatically
        execute arbitrary code in the context of the current
        user. (CVE-2017-8464)
    
      - An elevation of privilege vulnerability exists in the
        Windows kernel-mode driver due to improper handling of
        objects in memory. A local attacker can exploit this,
        via a specially crafted application, to run processes in
        an elevated context. (CVE-2017-8465)
    
      - Multiple information disclosure vulnerabilities exist in
        the Windows kernel due to improper initialization of
        objects in memory. An authenticated, remote attacker can
        exploit these, via a specially crafted application, to
        disclose sensitive information. (CVE-2017-8470,
        CVE-2017-8471, CVE-2017-8474, CVE-2017-8475,
        CVE-2017-8476, CVE-2017-8477, CVE-2017-8478,
        CVE-2017-8479, CVE-2017-8480, CVE-2017-8481,
        CVE-2017-8482, CVE-2017-8483, CVE-2017-8484,
        CVE-2017-8489, CVE-2017-8490, CVE-2017-8491,
        CVE-2017-8492)
    
      - A security bypass vulnerability exists due to a failure
        to enforce case sensitivity for certain variable checks.
        A local attacker can exploit this, via a specially
        crafted application, to bypass Unified Extensible
        Firmware Interface (UEFI) variable security.
        (CVE-2017-8493)
    
      - An information disclosure vulnerability exists in
        Microsoft Edge due to improper handling of JavaScript
        XML DOM objects. An unauthenticated, remote attacker can
        exploit this, by convincing a user to visit a specially
        crafted website, to disclose sensitive information.
        (CVE-2017-8498)
    
      - A remote code execution vulnerability exists in
        Microsoft Edge in the JavaScript scripting engine due to
        improper handling of objects in memory. An
        unauthenticated, remote attacker can exploit this, by
        convincing a user to visit a specially crafted website
        or open a specially crafted Microsoft Office document,
        to execute arbitrary code in the context of the current
        user. (CVE-2017-8499)
    
      - An information disclosure vulnerability exists in
        Microsoft Edge in the Fetch API due to improper handling
        of filtered response types. An unauthenticated, remote
        attacker can exploit this, by convincing a user to visit
        a specially crafted website, to disclose sensitive
        information in the URL of a cross-origin request.
        (CVE-2017-8504)
    
      - A denial of service vulnerability exists in Windows due
        to improper handling of kernel mode requests. An
        unauthenticated, remote attacker can exploit this, via a
        specially crafted kernel mode request, to cause the
        machine to stop responding or rebooting. (CVE-2017-8515)
    
      - Multiple remote code execution vulnerabilities exist in
        Microsoft browsers in the JavaScript engines due to
        improper handling of objects in memory. An
        unauthenticated, remote attacker can exploit these, by
        convincing a user to visit a specially crafted website,
        to execute arbitrary code in the context of the current
        user. (CVE-2017-8517, CVE-2017-8522, CVE-2017-8524,
        CVE-2017-8548)
    
      - Multiple remote code execution vulnerabilities exist in
        Microsoft Edge in the JavaScript scripting engine due to
        improper handling of objects in memory. An
        unauthenticated, remote attacker can exploit these, by
        convincing a user to visit a specially crafted website,
        to execute arbitrary code in the context of the current
        user. (CVE-2017-8520, CVE-2017-8521, CVE-2017-8549)
    
      - A same-origin policy bypass vulnerability exists in
        Microsoft Edge due to a failure to properly apply the
        Same Origin Policy for HTML elements. An
        unauthenticated, remote attacker can exploit this, by
        convincing a user to follow a link, to load a page with
        malicious content. (CVE-2017-8523)
    
      - A remote code execution vulnerability exists in the
        Windows font library due to improper handling of
        embedded fonts. An unauthenticated, remote attacker can
        exploit this, by convincing a user to visit a specially
        crafted website or open a specially crafted Microsoft
        document, to execute arbitrary code in the context of
        the current user. (CVE-2017-8527)
    
      - A same-origin policy bypass vulnerability exists in
        Microsoft Edge due to a failure to properly enforce
        same-origin policies. An unauthenticated, remote
        attacker can exploit this, by convincing a user to visit
        a specially crafted website, to disclose information
        from origins outside the current one. (CVE-2017-8530)
    
      - A remote code execution vulnerability exists in the
        Windows Search functionality due to improper handling of
        objects in memory. An unauthenticated, remote attacker
        can exploit this, via a specially crafted SMB message,
        to execute arbitrary code. (CVE-2017-8543)
    
      - An information disclosure vulnerability exists in the
        Windows Search functionality due to improper handling of
        objects in memory. An unauthenticated, remote attacker
        can exploit this, via a specially crafted SMB message,
        to disclose sensitive information. (CVE-2017-8544)
    
      - A remote code execution vulnerability exists in Internet
        Explorer due to improper handling of objects in memory.
        An unauthenticated, remote attacker can exploit this, by
        convincing a user to visit a specially crafted website,
        to execute arbitrary code in the context of the current
        user. (CVE-2017-8547)
    
      - A security bypass vulnerability exists in Microsoft Edge
        in the Content Security Policy (CSP) due to improper
        validation of documents. An unauthenticated, remote
        attacker can exploit this, by convincing a user to
        follow a link, to cause the user to load a malicious
        website. (CVE-2017-8555)
    
      - An information disclosure vulnerability exists in the
        Windows Graphics component due to improper handling of
        objects in memory. An authenticated, remote attacker can
        exploit this, via a specially crafted application, to
        disclose sensitive information. (CVE-2017-8575)
    
      - An elevation of privilege vulnerability exists in the
        Windows Graphics component due to improper
        initialization of objects in memory. A local attacker
        can exploit this, via a specially crafted application,
        to execute arbitrary code in kernel mode.
        (CVE-2017-8576)
    
      - An elevation of privilege vulnerability exists DirectX
        due to improper handling of objects in memory. A local
        attacker can exploit this, via a specially crafted
        application, to execute arbitrary code in kernel mode.
        (CVE-2017-8576)
    
      - An information disclosure vulnerability exists in the
        Windows kernel due to improper handling of objects in
        memory. An authenticated, remote attacker can exploit
        this, via a specially crafted application, to disclose
        the contents of memory. (CVE-2017-8554)");
      # https://support.microsoft.com/en-us/help/4022725/windows-10-update-kb4022725
      script_set_attribute(attribute:"see_also", value:"http://www.nessus.org/u?c538cc09");
      script_set_attribute(attribute:"solution", value:
    "Apply security update KB4022725 as well as refer to the KB article for additional information.");
      script_set_cvss_base_vector("CVSS2#AV:N/AC:L/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:N/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-8543");
    
      script_set_attribute(attribute:"exploitability_ease", value:"Exploits are available");
      script_set_attribute(attribute:"exploit_available", value:"true");
      script_set_attribute(attribute:"exploited_by_malware", value:"true");
      script_set_attribute(attribute:"metasploit_name", value:'LNK Code Execution Vulnerability');
      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:'CANVAS');
    
      script_set_attribute(attribute:"vuln_publication_date", value:"2017/06/13");
      script_set_attribute(attribute:"patch_publication_date", value:"2017/06/13");
      script_set_attribute(attribute:"plugin_publication_date", value:"2017/06/13");
    
      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) 2017-2020 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-06';
    kbs = make_list(
      '4022725' # 10 1703 
    );
    
    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(win10:'0') <= 0) audit(AUDIT_OS_SP_NOT_VULN);
    
    productname = get_kb_item_or_exit("SMB/ProductName", exit_code:1);
    if ("2016" >< productname) audit(AUDIT_OS_SP_NOT_VULN);
    
    if (
      # 10 (1703)
      smb_check_rollup(os:"10",
                       sp:0,
                       os_build:"15063",
                       rollup_date: "06_2017",
                       bulletin:bulletin,
                       rollup_kb_list:make_list(4022725))
      )
    {
      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());
    }