HackerNews

HackerNews
恶意 PyPI 包 soopsocks 在被下架前感染 2653 台设备

恶意 PyPI 包 soopsocks 在被下架前感染 2653 台设备

给文章评分:

HackerNews 编译,转载请注明出处:

恶意 PyPI 包详情

网络安全研究人员已标记 Python 软件包索引(PyPI,Python Package Index)仓库中的一个恶意软件包。该包声称可提供创建 SOCKS5 代理服务的功能,同时暗藏类似后门的隐秘功能,能在 Windows 系统上投放额外有效负载(恶意代码)。


这个名为 “soopsocks” 的欺诈性软件包,在被下架前累计被下载 2653 次。它由一名名为 “soodalpie” 的用户于 2025 年 9 月 26 日首次上传,而该用户账号也正是在当天创建的。


JFrog(软件安全公司)在一份分析报告中表示:“该软件包在提供(代理)功能的同时,还表现出针对 Windows 平台的后门代理服务器行为,会通过 VBScript(Visual Basic 脚本)或可执行文件版本,以自动化方式完成安装流程。”


其中的可执行文件 “_AUTORUN.EXE” 是一个 Go 语言编译文件。除了包含宣传中提及的 SOCKS5 代理实现代码外,它还被设计用于运行 PowerShell 脚本、设置防火墙规则,并以提升后的权限重新启动自身。此外,该文件还会执行基础的系统与网络侦察操作,例如获取 Internet Explorer 浏览器的安全设置和 Windows 系统的安装日期,并将这些信息泄露至一个硬编码(固定写入代码中)的 Discord 网络钩子(webhook,用于接收外部数据的接口)。

进一步恶意行为分析

在 soopsocks 的 0.2.5 和 0.2.6 版本中,Python 包会启动一个名为 “_AUTORUN.VBS” 的 Visual Basic 脚本。该脚本同样能够运行 PowerShell 脚本,进而从外部域名 “install.soop [.] space:6969” 下载一个包含合法 Python 二进制文件的 ZIP 压缩包,并生成一个批处理脚本 —— 该批处理脚本被配置为通过 “pip install” 命令安装 soopsocks 包并运行它。


随后,PowerShell 脚本会调用这个批处理脚本,触发 Python 包的执行。接着,该 Python 包会(若尚未获取)提升自身权限至管理员级别,配置防火墙规则以允许通过 1080 端口进行 UDP 和 TCP 通信,将自身安装为系统服务,保持与 Discord 网络钩子的通信连接,并通过创建计划任务在主机上建立持久化机制,确保系统重启后能自动启动。


JFrog 指出:“从表面上看,soopsocks 是一个设计完善的 SOCKS5 代理,具备完整的 Windows 启动支持。但从其运行方式和执行的操作来看,存在明显的恶意行为特征 —— 例如修改防火墙规则、获取高权限、执行各类 PowerShell 命令,以及从简单的可配置 Python 脚本,逐步演变为包含硬编码参数的 Go 语言可执行文件,且该版本还具备向预设 Discord 网络钩子发送侦察数据的能力。”

相关行业安全动态

此次恶意包披露之际,据 Socket(软件供应链安全公司)消息,npm(JavaScript 包管理平台)的包维护者正就一系列问题表达担忧,包括:GitHub 为应对日益增多的软件供应链攻击而推出大规模变更后,npm 缺乏原生的 CI/CD(持续集成 / 持续部署)双因素认证(2FA)流程、受信任发布的自托管工作流支持不足,以及令牌管理机制不完善等。


本周早些时候,GitHub 宣布将很快吊销 npm 发布者的所有旧版令牌,并规定所有 npm 精细化访问令牌的默认有效期将从 30 天缩短至 7 天,最长有效期为 90 天 —— 而此前这类令牌的有效期是无限制的。


GitHub 表示:“长期有效的令牌是供应链攻击的主要攻击向量。当令牌被盗用时,较短的有效期能缩小暴露窗口,降低潜在危害。这一变更使 npm 与业内已普遍采用的安全最佳实践保持一致。”


与此同时,Socket 公司还发布了一款名为 “Socket Firewall” 的免费工具。该工具可在安装阶段拦截 npm、Python 和 Rust 生态系统中的恶意包,帮助开发者保护其开发环境免受潜在威胁。


该公司补充道:“Socket Firewall 不仅能保护用户免受有问题的顶级依赖包(直接引入的依赖)影响,还能阻止包管理器获取任何已知含恶意的传递依赖包(由顶级依赖包间接引入的依赖)。”

 


消息来源:thehackernews

本文由 HackerNews.cc 翻译整理,封面来源于网络;

转载请注明“转自 HackerNews.cc”并附上原文