找回密码
 立即注册
首页 业界区 安全 漏洞通报 — CVE-2025-50817(Python-future:test.py ...

漏洞通报 — CVE-2025-50817(Python-future:test.py 未预期导入导致任意代码执行)

咒卖箴 5 小时前
时间线

发布日期:2025-08-14(公开披露)
风险等级:高 / 致命(取决于环境中的写权限与暴露面)
影响范围:future(PyPI)包,版本 ≥ 0.14.0(0.14.0 及之后的多个 0.x / 1.0.0 系列被标记为受影响)。
一句话概述

模块用途

future 这个库就是个“翻译官” —— 它原本是为了让 Python2 的老代码 能在 Python3 上也跑得动,或者一份代码能同时在 Py2 和 Py3 下都跑。
你在 Py2 里写:from future.moves import urllib,它帮你“翻译”成 Py3 的写法。
在 Py3 里跑同样的代码,也没报错。
但是!
现在都 2025 年了,Python2 早就凉了。
如果你整个环境只用 Python3,那 future 就是 多余的累赘。
留着它没啥用,反而可能出安全漏洞(比如路径被污染,别人能塞恶意代码让它导进去)。
future 就是历史遗留的兼容工具。你要是全用 Python3,就把它删了,直接用系统自带的模块,省心又安全。
漏洞概述

在 future 包的若干版本中,包加载/子模块解析存在设计缺陷:在某些导入路径/初始化逻辑下会无条件或意外地导入名为 test 的模块,如果攻击者能够把一个 test.py 放到 Python 的 sys.path 可写位置(或与应用工作目录相同),该文件就会被执行,可能导致任意代码执行(RCE)。
说白了就是当你导入存在漏洞的模块时,会自动触发当前目录或者sys.path目录中叫做test.py的文件。如果攻击者能够通过文件上传/受限制的RCE等漏洞将含有恶意内容的test.py进行传入则可能导致无限制RCE、敏感信息泄露等严重后果
受影响的版本(概要)

官方/数据库汇总显示,受影响的起始版本为 0.14.0;随后多个 0.x 及 1.0.0 在不同列表中被列为受影响。请以你环境中实际安装的版本为准。
复现

1.png

出处:https://www.cnblogs.com/hongzh0/本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须在文章页面给出原文链接,否则保留追究法律责任的权利。
来源:程序园用户自行投稿发布,如果侵权,请联系站长删除
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!
您需要登录后才可以回帖 登录 | 立即注册