Skip to content

[BUG] 使用现存的 node-fetch 替代 urllib  #317

@yantze

Description

@yantze

描述你的问题(Describe the bug)

升级 urllib 到最新版本,会导致编译成功后,整个项目不能正常运行,如果不升级,会有高危漏洞。

来自最开始的, urllib 升级对应的 proxy-agent 的 4.x 版本到 5.x,修复一个远程执行的高危漏洞。导致引入了 degenerator 这个模块,这个模块使用了 vm2 来执行一些可能不受信任的代码,vm 的动态执行的逻辑,没法被 webpack 打包。

依赖链:

urllib->proxy-agent->pac-proxy-agent->pac-resolver->degenerator

所以目前为了修复这个漏洞,要替换为 opensumi 里面已经存在的 node-fetch 模块,好处是网络请求使用统一的模块,并且没有漏洞。

复现路径(To Reproduce)
升级 urllib 到最新版本,再运行即可。

预期表现(Expected behavior)

问题截图(Screenshots)

环境信息(Environment)

  • OS: [e.g. macOS 11.2 Apple M1/Windows10/Windows11]
  • Browser [e.g. chrome, safari]
  • OpenSumi Version [e.g. 2.13.0]

补充信息(Additional context)

GitHub 的漏洞提示:
image
https://github.com/opensumi/ide-electron/security/dependabot/yarn.lock/pac-resolver/open

urllib 修复漏洞 pr:
node-modules/urllib#368

Metadata

Metadata

Assignees

No one assigned

    Labels

    🐞 bugSomething isn't working

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions