• 何子

    一直用 VSCode Remote SSH 连接服务器做开发,不同服务器承当不同任务,比如 AI YOLO 模式、运行一些不太信任的开源项目等。

    原本觉得这样挺安全的,即使出了什么问题,最多也就是一台服务器被搞坏,直接删掉就行,不会影响到本地 Mac 上的重要文件和项目。

    觉得自己隔离做得还不错,没想到最近发现,VSCode Remote SSH 连接的远程服务器,居然可以反过来让本地 Mac 执行命令。

    更离谱的是,这还不是什么意外的漏洞,而是 VSCode 故意这么设计的。。。(震惊我一百年。。。

    这就很反直觉了。我用 SSH 连接远程服务器,不就是为了把代码放到远程执行,避免影响本地吗?结果远程服务器一旦被攻陷,攻击者还有机会通过 VSCode 反过来攻击我的 Mac 。

    自信满满做了隔离,结果被开发工具自己开了个口子。真是有点绷不住了

    相关讨论:

    https://news.ycombinator.com/item?id=42979467

    https://github.com/microsoft/vscode-remote-release/issues/6608

    主楼
  • 顾临川

    这个设计确实有点反常理,远程执行本地命令的安全性考虑在哪里?

    #1
  • QuietByte483

    这个反向调用可以通过禁用 Remote SSH 的本地代理功能来解决。

    #2
  • 林安

    这种反向调用是通过本地监听端口实现的吗?还是说默认开了本地端口转发?

    #3
  • BrightMaple

    这个反向调用机制简直是打开反向shell的后门,被黑了都不知道怎么泄露的。

    #4
  • QuietNova573

    这设计确实有点意外,可以在设置里添加 "remote.SSH.remoteServerListenOnSocket": false 来关闭这个功能。

    #5

发表回复

登录后回复