近日,Python 软件基金会 (PSF) 紧急推出 Python 3.9.2 和 3.8.8 稳定版,解决了两个严重的安全缺陷,其中一个从理论上攻击者可远程代码执行漏洞。
PSF 在最新的声明中表示:“自从发布 3.9.2 和 3.8.8 的候选版本以来,由于安全方面的原因,我们收到了大量终端用户的查询督促,要求我们加快最终稳定版本的发布速度。”
PSF 在声明中指出,发布候选版本中包含两个安全修复方案:CVE-2021-3177 和 CVE-2021-23336。
修复的漏洞具体的原因在于,Python 3.x 到 3.9.1 的 ctypes/callproc.c 中 PyCArg_repr 有缓冲溢出,这可能导致远程代码执行。它会影响“接受浮点数作为不受信任的输入的 Python 应用程序,如 c_double.from_param 的 1e300 参数所示”。
发生该错误是原因,是因为不安全地使用了“sprintf”。影响之所以广泛,是因为 Python 已将其预先安装到了多个 Linux 发行版和 Windows 10 当中。
但 PSF 也指出,虽然 CVE-2021-3177 被列为“远程代码执行”漏洞,但这类漏洞遭利用的可能性非常小,因为要实现成功的 RCE,必须满足如下条件:
而 Red Hat 在评估该漏洞后,表示“最大的威胁是系统可用性”。
“可以肯定的是,通过恶意输入造成拒绝服务也是一个严重的问题。”出于这一原因。PSF 决定停止位漏洞修复版本提供发布候选版本。同时也为那些认为发布候选版本不够的社区成员发布了最终的 3.9.2 和 3.8.8 稳定版本。
部分参考资料来源:
- 官方声明:https://blog.python.org/2021/...
- Python 新版下载地址:https://www.python.org/downlo...
- https://www.zdnet.com/article...