0x01 简介
1.CFW是什么
使用过机场的朋友应该都听过clash_for_windows,一款便于用户可视化操作和使用的软件。
2月23日,网友@Anthem-whisper通过github Issues向CFW作者提交了可导致远程代码执行的XSS漏洞。由于使用人数多,恶意利用该漏洞可导致被害者电脑植入木马病毒被远程控制,危害巨大。本文章用的是0.19.8版本,做简单的漏洞复现演示其危害,希望大家能赶快更新到最新版本免受被入侵。
2.漏洞产生原因:
CFW存在交互的地方就是导入的clash配置文件,通过往clash配置文件中插入“精心构建”的js代码,当CFW导入该配置文件后,会对其进行解析处理并渲染页面,将节点列表呈现在我们面前,但是由于没有对外部导入的clash配置文件进行安全检测并将非法字符转义处理,导致那段插入的js代码被执行,于是XSS漏洞就产生了。
虽然普通的浏览器页面存在XSS漏洞危害并不大,但通过Electron
开发的CFW就不一样了,它可以直接读写电脑的文件,并且可以执行相关系统函数,导致危害性扩大。
3.影响版本
目前低于0.19.9的理论上都有此漏洞,软件作者加急修复更新了一个版本