什么网站发布建设标准,长尾关键词搜索网站,wordpress登陆死循环,wordpress阿里云视频播放一种针对 Python 软件包索引#xff08;PyPI#xff09;注册表的新型供应链攻击技术已在野外被利用#xff0c;并且目前正试图渗透到下游组织中。
软件供应链安全公司 JFrog 将其代号定为Revival Hijack#xff0c;并称这种攻击方法可用于劫持 2.2万个现有 PyPI 软件包PyPI注册表的新型供应链攻击技术已在野外被利用并且目前正试图渗透到下游组织中。
软件供应链安全公司 JFrog 将其代号定为Revival Hijack并称这种攻击方法可用于劫持 2.2万个现有 PyPI 软件包并导致数十万次恶意软件包下载。这些易受攻击的软件包下载量已超过 10 万次或已活跃超过 6 个月。
JFrog安全研究人员Andrey Polkovnychenko和Brian Moussalli在与《黑客新闻》分享的一份报告中说这种攻击技术涉及劫持PyPI软件包一旦这些软件包被原所有者从PyPI索引中删除就操纵重新注册这些软件包的选项。
这种被称为“Revival Hijack”的技术利用了一项政策漏洞允许攻击者在原始开发人员将软件包从PyPI中删除后重新注册并劫持软件包名称。
与传统的域名抢注攻击不同Revival Hijack攻击利用的是用户拼写错误的软件包名称而传统域名抢注攻击则利用了热门软件包的删除和重新注册。当开发人员从PyPI中删除他们的项目时软件包名称就会可供其他任何人注册。然后攻击者可以上传这些软件包的恶意版本毫无戒心的用户可能会下载并安装这些软件包并认为它们是合法的。
JFrog 分享的统计数据显示平均每月约有 309 个软件包被删除。出现这些情况的原因有很多比如缺乏维护即废弃软件、软件包以不同的名称重新发布或将相同的功能引入官方库或内置 API。
这也构成了一个有利可图的攻击面它比错别字抢注更有效攻击者可以利用自己的账户以相同的名称和更高的版本发布恶意软件包感染开发者环境。
虽然PyPI确实有防止冒充作者和抢注的措施但JFrog的分析发现运行 “pip list--outdated ”命令会将假冒软件包列为原始软件包的新版本而前者对应的是来自完全不同作者的不同软件包。
更令人担忧的是运行 “pip install -upgrade ”命令会将实际软件包替换为虚假软件包而软件包的作者却没有任何警告这可能会让不知情的开发者面临巨大的软件供应链风险。
JFrog 表示它采取的措施是创建一个名为 “security_holding ”的新 PyPI 用户账户用来安全地劫持易受攻击的软件包并用空的占位符取代它们以防止恶意行为者利用被删除的软件包。
此外每个软件包的版本号都被指定为 0.0.0.1这与依赖关系混乱攻击的情况正好相反以避免在运行 pip 升级命令时被开发人员调用。
更令人不安的是Revival 劫持已经在野外被利用一个名为 Jinnis 的未知威胁行为者于 2024 年 3 月 30 日引入了一个名为 “pingdomv3 ”的软件包的良性版本而就在同一天原所有者cheneyyan从 PyPI 中删除了该软件包。
2024 年 4 月 12 日新的开发者发布了一个更新其中包含一个 Base64 编码的有效载荷该有效载荷会检查是否存在 “JENKINS_URL ”环境变量如果存在则会执行从远程服务器获取的未知下一阶段模块。
JFrog认为攻击者可能推迟了攻击的发送时间或者将其设计得更有针对性将其限制在特定的IP范围内。
新的攻击行为表明威胁行为者正盯上更大规模的供应链攻击以删除的 PyPI 软件包为目标从而扩大攻击范围。建议企业和开发人员检查他们的 DevOps 管道以确保他们没有安装已经从版本库中删除的软件包。
JFrog安全研究团队负责人Moussalli表示利用处理已删除软件包的漏洞行为攻击者可以劫持现有软件包从而在不改变用户工作流程的情况下将其安装到目标系统中。
PyPI 软件包的攻击面正在不断扩大。尽管在此进行了主动干预但用户仍应始终保持警觉并采取必要的预防措施来保护自己和 PyPI 社区免受这种劫持技术的侵害。