在使用 Jetbrains/VScode 或其他 IDE 时候,往往需要安装插件进行功能扩展, 如果确保插件本身的安全性?因为这些 IDE 的插件权限非常大,可访问本机的文件系统,并在本机执行任意代码。
例如如果插件作者在插件中加入后门代码或木马代码,或者虽然插件作者本身没有恶意,但遭遇供应链攻击,其插件代码的依赖项里有恶意代码。
这样开发电脑中的机密文件、密码、SSH 私钥、各种私密 token 、钱包等,不就都被窃取走了吗?
似乎很少见到有人关注插件安全性的。
2
renmu 326 天前 via Android 1
可以引申出你如何能保证你安装的第三方包的安全性,开源软件的安全性,闭源软件的安全性,答案就是保证不了。
|
3
0o0O0o0O0o 326 天前 via iPhone
我觉得你的担忧没有错,所以我在 Host 只用微软的插件,别的丢进 https://code.visualstudio.com/docs/devcontainers/containers 里缓解
逃逸怎么办?我选择相信不会有人拿这种洞打我 微软的插件也被供应链攻击怎么办?我选择相信微软开发者没有这么不堪 如果你还是担心,可以看看 Qubes OS ,我其实不期待 VSCode 的安全设计 |
4
crackidz 326 天前
保证不了,即便是现在也不断有在 VSCode Marketplace 发现恶意插件的消息。不过 VScode 也做了一些安全规则,有些事情不是那么容易可以做到的。
供应链安全是个很大的话题,除非投入大量时间精力,否则完全保证不了 |
5
wu67 326 天前
答案就是你管不了那么多. 该吃吃, 该用用, 别装那些非常小众的插件就好了, 尽量用比较大的组织、团体开发的, 或者知名个人开发者开发的扩展
|
6
crazyTanuki 326 天前
只装官方认证产品就好了
|
7
paopjian 326 天前
IDE 插件也算是供应链攻击的重灾区了,也就比 maven npm 库好那么一点点,只能自己多加小心
|
8
codcrafts 326 天前
vs code 的插件或者 JetBrains 的插件,我只会安装官方开发或者经过认证的大厂开发的插件,比如说 Jetbrains 、microsoft 、Redhat 这样的
|
9
unco020511 326 天前
idea 插件商店会审核
|
10
caiqichang 326 天前
插件本身都无法保证自己引用的库的安全性
|
11
yolee599 326 天前
如果是开源的,你可以自己 review 代码。如果是闭源的,那无法保证
|
12
xuanbg 326 天前
少用乱七八糟的插件就行
|
13
Al0rid4l 326 天前
最终你只能选择信任或不信任
|
14
adoal 326 天前
你甚至保证不了 JB/VSC 本身的安全。
|
15
LonnyWong 326 天前
ssh 私钥设置 Passphrase ,开机先 ssh-add 将私钥添加到 ssh-agent 中,这样就不用每次都输入 Passphrase 了。
只要 Passphrase 够复杂,他们拿走你的私钥也用不了。当然他们还是能直接在你的机器上干一些事,所以最好是用开源的,自己审过代码,自己编译。 安利好用的 ssh 客户端: https://github.com/trzsz/trzsz-ssh |
16
0o0O0o0O0o 326 天前
看到上面有人说自己审代码,我觉得这是不现实的。可以随便找一些公开的漏洞看看,很多被利用的 BUG 写在那里,没有专业素养的人肉眼是不可能看得出来的。更何况 OP 提到的供应链攻击更会精心设计让漏洞难以被发现。
|
17
kenvix 326 天前
没办法,为了安全可以只装带 V 标的认证的插件
|
18
HangoX 326 天前
这不是最恐怖的,网上的开源项目构建脚本是可以加入任意插件的,这个插件的权限可以访问你电脑任意文件,上传你整个代码文件都没问题,这个你甚至不需要 ide 都能跑起来
|
19
whoami9426 326 天前
idea 插件好像分两种,个人开发和公司组织开发的,前者上架要求开源,后者是闭源的,不过都要经过 idea 审核
|