gpt4 book ai didi

python - 在 CPython 中编译不受信任的代码是否安全?

转载 作者:行者123 更新时间:2023-12-05 07:49:16 25 4
gpt4 key购买 nike

在 Python 中,可以在不执行的情况下编译 Python 脚本(使用 py_compile 模块,在 C 中使用 Py_CompileString)。

很多文章都是关于试图对 CPython 进行沙箱处理(以及它有多难)的问题,但是,我很想知道在编译 CPython 代码中是否存在已知的安全风险(没有执行其内容)。

换句话说,运行是否存在已知的安全问题:

python -m py_compile file_from_unknown_source.py

在这种情况下,不良行为者可能能够在解析器或字节码生成器中找到漏洞利用,我的问题是关于这个以及是否存在已知的漏洞利用来完成这样的任务,或者这是否通常被认为是安全的。


就此问题而言,安全意味着:

  • 无法运行任意 Python 代码或 shell 命令。
  • 无法删除、创建或访问文件
    (除了编​​译的 pyc 当然)
  • 无法使用系统上的网络连接。

简而言之,除了编译代码或因无效输入导致编译失败外,什么都不做。

最佳答案

不,这不安全。 CPython 有很多已知的错误,这些错误会导致堆栈溢出和其他令人讨厌的情况。 SIGSEGV 应被视为具有潜在可利用性。

关于python - 在 CPython 中编译不受信任的代码是否安全?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37521824/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com