产品战略专家梁宁确认出席AICon北京站,分享AI时代下的商业逻辑与产品需求 了解详情
写点什么

PyTorch-Nightly 受到供应链攻击,导致数据和文件泄露

  • 2023-02-10
    北京
  • 本文字数:932 字

    阅读完需:约 3 分钟

PyTorch-Nightly受到供应链攻击,导致数据和文件泄露

 PyTorch维护者表示,建议在 2022 年 12 月 25 日至 12 月 30 日期间安装了 PyTorch 夜间构建的开发人员卸载它并清除 pip 缓存,以摆脱恶意包。新的攻击凸显了最近的一个趋势。

 

供应链攻击源自一个恶意依赖项。该依赖项被推送到了 PyPi,它与 PyTorch 夜间构建附带的依赖项同名。

 

由于 PyPI 是索引优先的,所以安装的是这个恶意包,而不是官方存储库中的版本。这种设计允许用户注册与第三方索引中存在重名的包,pip 将默认安装他们的版本。

 

该恶意包名为 torchtriton,包含一个二进制文件,除了窃取主机名、DNS 配置、用户名、shell 环境等系统信息外,还会将/etc/hosts/etc/passwords~/.gitconfig~ /.ssh /*的内容,以及在用户主目录中找到的前 1000 个文件上传到外部服务器。不过,只有当用户显式地将triton包导入到他们的程序中时,信息才会被泄露,这降低了此次攻击的影响。

 

这种被称为依赖混淆的供应链攻击方案并不新颖。在接受 InfoQ 采访时,Endor Labs 安全研究员 Henrik Plate 解释说,这种攻击“与我们在过去两年中看到的次世代攻击类型一致”,攻击者的重点是操纵维护者和用户,而不是设法利用漏洞。

 

在官方披露后,torchtriton 的所谓维护者在他们的网站上宣称,这个包不是恶意的。对此,Ax Sharma 首先在 Twitter 上做了报道。不过,在分析Bleeping Computer 的攻击时,Sharma 还透露,torchtriton 使用了反虚拟机技术以及混淆来逃避检测。

 

这也不是第一次有黑客声称他们的行为应算是伦理研究,就像他们被抓到窃取机密一样。

 

根据 Plate 的说法,依赖项混淆攻击可以使用私有存储库来托管内部包和镜像外部包来解决。Python 生态系统有一个这样的解决方案是devpi,但它并不简单。

 

通常,这样的解决方案允许对依赖项解析和包下载过程进行更多的控制。但是,它们的设置和操作需要付出不小的努力,并且只有在开发人员本地客户端配置正确时,它们才有效。

 

PyTorch 维护者立即采取行动,删除作为依赖项的 torchtriton,替换为pytorch-triton,并在 PyPi 上注册了一个假包,以确保这种情况不会再发生。

 

原文链接:

https://www.infoq.com/news/2023/01/pytorch-supply-chain-attack/


相关阅读:

里程碑!PyTorch 正式加入 Linux 基金会,社区治理这一核心将不会改变

深度学习为什么要选择 PyTorch

进击的 PyTorch,和它背后的开源领袖

2023-02-10 10:164614

评论

发布
暂无评论
发现更多内容

响应式操作实战

老周聊架构

响应式编程 2月月更

校招前端必会面试题及答案

loveX001

JavaScript

80%的前端开发都答不上来的js异步面试题

loveX001

JavaScript

Java学习路线阅读计划时间线

kcodez

后端开发 Java 开发

软件测试/测试开发 | web前端的HTML浅析

测试人

软件测试 自动化测试 测试开发 web测试

20K+ Star!一款开源免费B站视频下载工具

Jackpop

2023面试官常考的前端面试题

loveX001

JavaScript

高效学 C++|编程实例之计算器

TiAmo

c++ 语言 & 开发 语言设计

后GameFi时代下的新宠Umi'Friends,能否成为下一个Axie Infinity?

股市老人

C/C++ 操作注册表与服务

管理者既要安定内部,也要团结外部

石云升

极客时间 2月月更 技术领导力实战笔记

从0到1:健身房私教预约小程序开发笔记

CC同学

私教预约小程序

JS模块化—CJS&AMD&CMD&ES6-前端面试知识点查漏补缺

loveX001

JavaScript

为什么字节跳动选择使用 Go 语言?

Jackpop

京东前端高频react面试题集锦

beifeng1996

React

第九期-毕业设计

wuli洋

支持30+,这款文档提取工具太好用了!

Jackpop

构建有参与感的干系人小组指南(译)

Bruce Talk

Scrum 敏捷开发 Agile

一道React面试题把我整懵了

beifeng1996

React

编程界的劣驱良现象有哪些? 圆桌收录 用代码构建世界

Jackpop

毕业项目 - 设计电商秒杀系统

in9

JUC 常用 4 大并发工具类

鱼找水需要时间

Java spring JUC

Nginx unexpected end of file 配置证书遇到问题,如何解决?

程序员泥瓦匠

nginx

软件动力学:我理解的可演进架构

agnostic

可演进架构

开源免费!一款性能和体验超棒的编程IDE

Jackpop

从技术专家到总经理,在不确定中探索和成长

石云升

极客时间 2月月更 技术领导力实战笔记

一天梳理完React所有面试考察知识点

beifeng1996

React

设计模式之模板模式

程序员大彬

设计模式

基于Magma构建灵活、低成本无线接入网

俞凡

架构 网络 通信

parallels desktop2023汉化版虚拟机下载

茶色酒

parallels desktop2023

JavaScript 中获取数组最后一个元素3种方法及性能

devpoint

JavaScript slice 数组操作

PyTorch-Nightly受到供应链攻击,导致数据和文件泄露_AI&大模型_Sergio De Simone_InfoQ精选文章