一个15年前的Python漏洞肆虐全球软件界

Python开源编程语言中一个15年前的漏洞在许多地方仍未修补,因此得以蔓延到全球成千上万个开源和闭源项目。研究人员警告,这无意中构成了一条大范围易受攻击的软件供应链,大多数受影响的组织还蒙在鼓里。

Trellix高级研究中心的分析师发现,一个与路径遍历相关的漏洞被编号为CVE-2007-4559,目前在350000多个独特的开源代码存储库中仍未修补,导致应用软件容易被利用。

首席工程师兼漏洞研究主管Douglas McKee在9月21日发表的博文中表示,这个有问题的代码库存在于遍布众多行业的软件中,主要是软件开发、人工智能/机器学习和代码开发等领域,还包括安全、IT管理和媒体等诸多领域。

研究人员表示,Python tarfile模块还存在于任何使用Python的项目的一个默认模块中,目前广泛出现在AWS、Facebook、谷歌、英特尔和Netflix开发的框架中,以及用于机器学习、自动化和Docker容器化的应用程序中。

研究人员表示,虽然该漏洞让攻击者可以逃离目录(文件应该被解压到该目录),但攻击者也可以利用该漏洞执行恶意代码。

McKee说:“今天,这个未加制止的漏洞被无意中添加到全球成千上万开源和闭源项目中,留下了巨大的软件供应链攻击面。”

新问题,旧漏洞

McKee在博文中写道,Trellix的研究人员最近发现Python的tarfile模块没有合理检查企业设备中的路径遍历漏洞后,以为无意中发现了一个新的Python零日漏洞。不过他们很快就意识到,这个漏洞是之前就已发现的。

进一步深挖及后来得到GitHub的合作后发现,大约287万个开源文件含有Python的tarfile模块,该模块出现在大约588000个独特的代码存储库中。Trellix分析后发现,这些实例中约61%易受攻击,研究人员凭此估计目前有350000个易受攻击的Python代码存储库。

在开源界,找不到可以责怪的对象

该漏洞在整个软件界蔓延这么久、却未加制止有诸多原因;然而McKee特别指出,将具体责任归咎于Python项目、该项目的众多维护者或任何使用该平台的开发人员有失公允。

他写道:“首先应明确一点,造成CVE-2007-4559目前的这种状态,不该归咎于任何一方、组织或个人,但无论如何我们都有责任。”

McKee表示,由于Python之类的开源项目由一群志愿者而不是一个联合组织(以及非营利基金会)运行和维护,因此更难及时跟踪和修复已知的问题。此外,库或软件开发工具包……将安全地使用API视为开发人员的一部分责任并不少见。

的确,Python在tarfile函数的文档中就使用它的风险发出了警告,明确告诫开发人员:由于目录遍历问题,永远不要“在没有事先检查的情况下解压来源不明的存档”。

McKee表示,虽然警告是迈出的“积极一步”,提醒人们注意该问题,但显然没有阻止漏洞持续存在,因为仍需要由使用该代码库的开发人员确保自己构建的软件是安全的。

他补充道,使问题更严重的是,大多数为开发人员提供的关于如何使用该平台模块的Python教程并没有清楚地表明如何避免tarfile 模块的不安全使用,包括Python自己的文档以及utorialspoint、geeksforgeeks和askpython.com等流行网站。

McKee特别指出,这种差异使得该漏洞被编写到整条供应链中,这个趋势可能会延续数年,除非对这个问题有更广泛的认识。

利用漏洞“异常容易”

在技术方面,CVE-2007-4559是Python的tarfile模块中的路径遍历攻击,它让攻击者可以通过为TAR存档的文件名添加“..”序列来覆盖任意文件。

Trellix漏洞研究人员Charles McFarland在周三发表的关于该问题的另一篇博文中特别指出,这个实际漏洞源自使用未净化处理的tarfile.extract()或tarfile.extractall()的内置默认值的两三行代码。

他写道:“未编写在调用tarfile.extract()或tarfile.extractall()之前净化处理成员文件的任何安全代码导致了目录遍历漏洞,从而使不法分子能够访问文件系统。”

攻击者要利用该漏洞,就需要为文件名添加带有操作系统分隔符(“/”或“\”)的“..”,以逃离目录(文件本该被解压到该目录)。Python的tarfile模块让开发人员恰好可以做到这点。

这个广泛的Python tarfile漏洞浮出水面,实际上得益于Trellix漏洞研究实习生Kasimir Schulz对另一个问题开展的研究。周三他发表了第三篇独立的Trellix博文,详细描述了利用CVE-2007-4559多么“异常容易”。

Schulz在博文中解释,Python中的Tarfile包含多个不同的文件和元数据,元数据后来用于解压缩tarfile本身。TAR存档文件中包含的元数据包括但不限于文件名、文件大小和校验和之类的信息以及文件存档时有关文件所有者的信息。

Schulz写道:“tarfile模块让用户可以添加过滤器,过滤器可用于在文件的元数据添加到TAR存档之前解析和修改该元数据。”这使攻击者能够用短短六行代码即可创建漏洞利用工具。

Schulz在博文中继续详细解释了他如何使用该漏洞和一个名为Creosote的定制脚本(该脚本可搜遍目录,扫描并分析Python文件),在Spyder IDE中执行恶意代码。Spyder是一个免费的开源科学环境,为Python编写,可以在Windows和macOS上运行

聚焦供应链

tarfile问题再次凸显了软件供应链这一攻击面。由于攻击者可以通过攻击存在于多个平台和企业环境中的有缺陷代码造成广泛影响,这个攻击面近年来越来越惹人瞩目。这可用于大大扩大恶意活动的影响,无需威胁分子多花力气。

供应链遭到这些类型的攻击此前已有很多例子,如今臭名昭著的SolarWinds和Log4J场景就最为知名。前者始于2020年12月下旬,SolarWinds Orion软件遭到破坏,这一事件蔓延到次年,众多组织遭到多起攻击。后一起事件始于2021年12月上旬,在广泛使用的Java日志工具中发现了一个名为Log4Shell的漏洞,该漏洞引发了另外多个漏洞,导致数百万应用程序易受攻击,其中许多应用程序至今仍未修补。

最近,攻击者已经开始尝到直接攻击开源代码存储库以植入他们自己的恶意代码带来的甜头,这些代码可以在以后被用来攻击供应链。事实上,Python项目已经发现自己被盯上了。

8月底,攻击者针对Python包索引(PyPI)的用户发动了首起网络钓鱼攻击,旨在窃取用户的凭据,那样威胁分子就可以将中招的软件包加载到代码存储库中。8月早些时候,在一家安全供应商警告威胁分子将恶意代码嵌入到软件包安装脚本后,PyPI已经从注册库删除了10 个恶意代码包。

本文翻译自:https://www.darkreading.com/application-security/15-year-old-python-flaw-software-worldwide如若转载,请注明原文地址。

文章来源网络,作者:运维,如若转载,请注明出处:https://shuyeidc.com/wp/145595.html<

(0)
运维的头像运维
上一篇2025-03-10 17:00
下一篇 2025-03-10 17:01

相关推荐

  • 个人主题怎么制作?

    制作个人主题是一个将个人风格、兴趣或专业领域转化为视觉化或结构化内容的过程,无论是用于个人博客、作品集、社交媒体账号还是品牌形象,核心都是围绕“个人特色”展开,以下从定位、内容规划、视觉设计、技术实现四个维度,详细拆解制作个人主题的完整流程,明确主题定位:找到个人特色的核心主题定位是所有工作的起点,需要先回答……

    2025-11-20
    0
  • 社群营销管理关键是什么?

    社群营销的核心在于通过建立有温度、有价值、有归属感的社群,实现用户留存、转化和品牌传播,其管理需贯穿“目标定位-内容运营-用户互动-数据驱动-风险控制”全流程,以下从五个维度展开详细说明:明确社群定位与目标社群管理的首要任务是精准定位,需明确社群的核心价值(如行业交流、产品使用指导、兴趣分享等)、目标用户画像……

    2025-11-20
    0
  • 香港公司网站备案需要什么材料?

    香港公司进行网站备案是一个涉及多部门协调、流程相对严谨的过程,尤其需兼顾中国内地与香港两地的监管要求,由于香港公司注册地与中国内地不同,其网站若主要服务内地用户或使用内地服务器,需根据服务器位置、网站内容性质等,选择对应的备案路径(如工信部ICP备案或公安备案),以下从备案主体资格、流程步骤、材料准备、注意事项……

    2025-11-20
    0
  • 如何企业上云推广

    企业上云已成为数字化转型的核心战略,但推广过程中需结合行业特性、企业痛点与市场需求,构建系统性、多维度的推广体系,以下从市场定位、策略设计、执行落地及效果优化四个维度,详细拆解企业上云推广的实践路径,精准定位:明确目标企业与核心价值企业上云并非“一刀切”的方案,需先锁定目标客户群体,提炼差异化价值主张,客户分层……

    2025-11-20
    0
  • PS设计搜索框的实用技巧有哪些?

    在PS中设计一个美观且功能性的搜索框需要结合创意构思、视觉设计和用户体验考量,以下从设计思路、制作步骤、细节优化及交互预览等方面详细说明,帮助打造符合需求的搜索框,设计前的规划明确使用场景:根据网站或APP的整体风格确定搜索框的调性,例如极简风适合细线条和纯色,科技感适合渐变和发光效果,电商类则可能需要突出搜索……

    2025-11-20
    0

发表回复

您的邮箱地址不会被公开。必填项已用 * 标注