网易首页 > 网易号 > 正文 申请入驻

PyPI 1亿次下载库遭投毒:黑客把恶意代码藏进WAV音频文件

0
分享至

3月27日,两个看似平常的版本更新,让Python开发者圈炸开了锅。SafeDep监测发现,telnyx库的4.87.1和4.87.2版本被植入恶意代码,而这款库的月均下载量超过100万次——按每天3万次的速度,意味着大量生产环境可能在不知情的情况下"中招"。

攻击者的手法堪称狡猾。他们没有直接把木马写在显眼处,而是将第二阶段的恶意二进制文件伪装成WAV音频格式,藏在远程服务器里。当开发者安装这两个版本时,telnyx/_client.py里的 payload 会自动下载这些"音频文件",解压出真正的攻击载荷。

Windows和Linux"待遇"不同:一个留后门,一个偷密钥

这套攻击脚本会根据操作系统差异化执行。Windows用户会被植入一个持久化可执行文件,重启后依然存活;Linux和macOS用户则面临更隐蔽的威胁——系统凭证被直接收割。

telnyx是什么来头?这是Telnyx公司官方维护的Python SDK,用来对接其云通信API。Telnyx本身是一家提供全球电信基础设施的服务商,主打"语音AI代理+内置全球运营商网络"。简单说,如果你的Python应用需要打电话、发短信、做语音交互,很可能在用这个库。

企业级通信SDK的受众画像很明确:客服系统、呼叫中心、AI语音助手——全是数据敏感型业务。攻击者选择这里下手,相当于在快递公司的分拣中心安插了眼线,包裹内容一览无余。

供应链攻击的"标准作业流程"正在成型

这次事件的手法并不新鲜,但执行得相当老练。回顾近几年PyPI的安全事件,一条清晰的攻击链条正在固化:

第一步,窃取合法开发者的PyPI账号,或者通过社会工程学渗透。第二步,发布带有补丁版本号的更新(4.87.1、4.87.2这种增量更新最不容易引起怀疑)。第三步,在核心模块里植入轻量级loader,把真正的恶意代码托管在第三方服务器,既减小包体积,又能随时更换payload。


WAV音频容器的选择颇有深意。音频文件在流量分析中属于"正常"内容类型,不会触发大多数安全设备的告警;文件体积可以做得很大而不引人注意;二进制数据藏在音频帧里,静态扫描很难识别。

SafeDep的分析师打了个比方:这就像是把密信写在乐谱的空白处,安检人员看到的是一本普通的音乐书。

100万月下载量背后,有多少人在看changelog?

telnyx的下载数据揭示了一个尴尬的现实。月均100万次安装,意味着大量依赖是间接引入的——你的项目可能根本没直接引用telnyx,但某个上游依赖把它带了进来。

Python生态的嵌套依赖问题由来已久。一个中型项目的lock文件里动辄几百个包,逐行审计版本变更对大多数团队来说不现实。自动化工具能扫出已知漏洞,但对于这种"零日"式的恶意投毒,检测窗口期往往以小时计算。

3月27日发现问题,PyPI管理员当日下架了这两个版本。但供应链攻击的杀伤半径从来不只是"问题存在的时长"。持续集成系统的缓存、内部镜像站的同步延迟、生产环境的冻结版本策略,都会让恶意代码的存活周期远超官方仓库的清理速度。

Telnyx官方尚未发布详细的事后分析报告。开发者目前能确认的是:4.87.0及之前的版本未受影响,4.87.3已清理恶意代码。如果你在过去72小时内部署过依赖telnyx的应用,现在该检查的是容器镜像层和虚拟环境的site-packages目录。

一个值得玩味的细节是,攻击者选择了4.87这个接近小版本号末尾的数字发布。是巧合,还是刻意避开会引起广泛关注的整数版本?

你的CI流水线里,上次完整审计间接依赖是什么时候?

特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。

Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.

相关推荐
热点推荐
养宠神器!小米米家智能宠物喂食器2可视版众筹开售:能喂还能看 449元

养宠神器!小米米家智能宠物喂食器2可视版众筹开售:能喂还能看 449元

快科技
2026-03-30 16:13:09
我刚从印度回来,谈谈一些可能让人不太舒服的真话,句句扎心

我刚从印度回来,谈谈一些可能让人不太舒服的真话,句句扎心

千秋文化
2026-03-27 20:33:46
拖垮一个普通家庭,只需要一台20万的车。

拖垮一个普通家庭,只需要一台20万的车。

老陆不老
2026-03-24 20:20:23
人为造神:被推上神坛的郑成功

人为造神:被推上神坛的郑成功

浪子说
2026-03-24 07:13:53
央一开播年代大剧《主角》,张艺谋监制张嘉益主演,这阵容绝了

央一开播年代大剧《主角》,张艺谋监制张嘉益主演,这阵容绝了

小椰的奶奶
2026-03-30 15:57:36
伊朗头号强援到位,大批部队进驻德黑兰,特朗普失算:遭内外夹攻

伊朗头号强援到位,大批部队进驻德黑兰,特朗普失算:遭内外夹攻

三农老历
2026-03-30 14:35:45
U23国足VS越南:依木兰坐镇中场,毛伟杰领衔进攻,李新翔冲锋

U23国足VS越南:依木兰坐镇中场,毛伟杰领衔进攻,李新翔冲锋

零度眼看球
2026-03-30 07:35:45
内蒙古一女神太漂亮了,这是什么逆天颜值,媲美西施并不过分

内蒙古一女神太漂亮了,这是什么逆天颜值,媲美西施并不过分

阿废冷眼观察所
2026-03-30 11:55:45
热身赛:U21日本1-2不敌韩国U23,李英俊双响,石井久继破门

热身赛:U21日本1-2不敌韩国U23,李英俊双响,石井久继破门

懂球帝
2026-03-30 10:01:17
“内斗”的风还是刮到了河南,传菜大娘辣评城市地位:我们是中国洛阳,隔壁是河南郑州

“内斗”的风还是刮到了河南,传菜大娘辣评城市地位:我们是中国洛阳,隔壁是河南郑州

观威海
2026-03-30 10:27:02
DeepSeek公告:服务出现重大中断

DeepSeek公告:服务出现重大中断

观察者网
2026-03-30 10:09:34
1963年,一位“疯子”工程师深山造出的12根铁管,拖垮一个帝国

1963年,一位“疯子”工程师深山造出的12根铁管,拖垮一个帝国

顾史
2026-03-29 19:28:05
600488,3分钟垂直涨停!医药股,放量爆发!主力资金,近40亿净流入!

600488,3分钟垂直涨停!医药股,放量爆发!主力资金,近40亿净流入!

证券时报e公司
2026-03-30 12:20:53
遗憾!3次活命机会都没抓住!张雪峰去世前,倒地30分钟才被发现

遗憾!3次活命机会都没抓住!张雪峰去世前,倒地30分钟才被发现

奇思妙想草叶君
2026-03-26 02:36:58
越扒越上头!释永信在少林寺的奢靡生活,我们想都不敢想

越扒越上头!释永信在少林寺的奢靡生活,我们想都不敢想

谈史论天地
2026-03-28 18:45:03
郑丽文访陆确定,国民党暗流涌动,卢秀燕当出头鸟,民进党出手了

郑丽文访陆确定,国民党暗流涌动,卢秀燕当出头鸟,民进党出手了

娱乐的宅急便
2026-03-30 15:35:43
章泽天穿小香风接待卡塔尔公主,两人见面就拥抱,老板娘很大气!

章泽天穿小香风接待卡塔尔公主,两人见面就拥抱,老板娘很大气!

东方不败然多多
2026-03-30 15:53:26
现年16岁,马塞洛儿子恩佐代表皇马U19仅用35分钟戴帽

现年16岁,马塞洛儿子恩佐代表皇马U19仅用35分钟戴帽

懂球帝
2026-03-30 11:05:08
退休人员要留意:如果收到这条短信,记得抓紧时间处理!

退休人员要留意:如果收到这条短信,记得抓紧时间处理!

小谈食刻美食
2026-03-30 08:29:06
浙大研究:每天多吃一个蛋,心脏疾病和癌症死亡风险增加?真相来了

浙大研究:每天多吃一个蛋,心脏疾病和癌症死亡风险增加?真相来了

消化石医生
2026-03-30 11:17:40
2026-03-30 16:51:00
灰度测试中
灰度测试中
生活正在重构,目前还在灰度测试阶段,暂不全量发布。
465文章数 3关注度
往期回顾 全部

科技要闻

DeepSeek性能异常问题已解决,服务恢复

头条要闻

单套最低5400万 北京豪宅暴雷几十户业主办不了房产证

头条要闻

单套最低5400万 北京豪宅暴雷几十户业主办不了房产证

体育要闻

想进世界杯,意大利还要过他这一关

娱乐要闻

单依纯凌晨发长文道歉!李荣浩再回应

财经要闻

油价冲击,有些亚洲货币先扛不住了!

汽车要闻

理想i9要来了!外形似小号MEGA 能冲击高端纯电市场?

态度原创

手机
家居
游戏
艺术
军事航空

手机要闻

三星旧机更新现隔空投送开关,却无法使用?

家居要闻

东方法式美学 现代简约

白天捡垃圾、晚上守家的多人肉鸽!《佩布尔骑士》发售信息公布!

艺术要闻

600 年前的「产亡孤魂」,藏着中国女性最痛的记忆

军事要闻

第三艘航母出动数千名士兵抵达 美军大举增兵中东战场

无障碍浏览 进入关怀版