供应链投毒预警 | 恶意Py包仿冒tensorflow AI框架实施后门投毒攻击

概述

本周(2024年01月15号),悬镜供应链安全实验室在Pypi官方仓库(https://pypi.org/)中捕获1起Py包投毒事件,投毒者利用包名错误拼写(typo-squatting)的攻击方式来仿冒谷歌开源的tensorflow机器/深度学习框架,投毒攻击目标锁定AI开发者。

截至目前,投毒者在Pypi仓库共发布5个不同版本的恶意包。python开发者一旦通过pip命令下载或安装该投毒包(tensrflwo),则会触发执行Py组件包中的恶意后门代码,并最终导致开发者系统被攻击者远程控制。

恶意Py包tensrflwo在Pypi官方仓库上的总下载量为870次。

该恶意Py包已从Pypi官方仓库下架,但通过国内主流Pypi镜像源(清华大学、腾讯云等)依旧可正常下载、安装该恶意包,因此潜在的受害者数量将会更多,尤其对于国内广大使用tensorflow深度学习框架的AI开发者来说,仍存在被恶意投毒攻击的风险。

投毒分析

攻击流程

Py投毒包tensrflwo尝试利用包名错误拼写 (typo-squatting)来攻击使用tensorflow框架的AI开发者。tensrflwo安装包setup.py中定义的taint2()函数通过创建子进程将受害者系统shell反连到投毒者控制的服务器上(59.110.111.85:8088),最终投毒者能够通过反弹的shell实现对受害者系统进行远程控制。

一旦开发者通过命令pip download tensrflwo下载py包或者pip install tensrflwo安装py包时,投毒包tensrflwo中的恶意函数tain2()会立即被调用执行,开发者系统将被投毒者远程控制。

攻击复现

以清华大学和腾讯云pypi镜像源为例,通过以下pip命令模拟开发者安装恶意包tensrflwo 。

复制代码
​pip install tensrflwo -i  https:​//pypi.tuna.tsinghua.edu.cn/simple/​

​pip install tensrflwo -i https://mirrors.cloud.tencent.com/pypi/simple​

同样,在本地环境中模拟投毒攻击者的服务器IP (59.110.111.85),并监听TCP 8088端口,当受害者执行pip install tensrflwo 操作时,攻击者可获取受害者系统shell权限,并可对目标系统进行远程控制。

IoC数据

此次投毒组件包涉及的恶意文件和恶意链接IoC数据如下所示:

排查方式

截至目前,该Python恶意组件包可正常从国内主流Pypi镜像源下载安装,国内Python开发者仍面临被投毒攻击的安全风险,开发者需提高安全防护意识,可自行根据IoC和恶意包信息通过以下方式进行快速排查是否安装或引用恶意组件包。开发者可通过命令pip show tensrflwo快速排查是否误安装或引用该恶意py组件包,若命令运行结果如下图所示,则代表系统已被安装该恶意组件,请尽快通过命令pip uninstall tensrflwo -y 进行卸载,此外还需关闭系统网络并排查系统是否存在异常进程。

此外,开发者也可使用OpenSCA-cli,将受影响的组件包按如下示例保存为db.json文件(可参考总结中提到的组件包信息按格式增减),直接执行扫描命令(opensca-cli -db db.json -path ${project_path}),即可快速获知您的项目是否受到投毒包影响。

复制代码
[
  {
    "product": "tensrflwo",
    "version": "[2.5.1,2.5.1]|[2.7,2.7]|[2.7.1,2.7.1]|[2.8,2.8]|[2.9,2.9]",
    "language": "python",
    "id": " XMIRROR-MAL45-777DD586",
    "description": "恶意Python组件包投毒,仿冒tensorflow AI框架。",
    "release_date": "2024-01-15"
  }
]

悬镜供应链安全情报中心将持续监测全网主流开源软件仓库,对潜在风险的开源组件包进行动态跟踪和溯源,实现快速捕获开源组件投毒攻击事件并第一时间提供精准安全预警。

相关推荐
BFT白芙堂1 小时前
GRASP 实验室研究 论文解读 | 机器人交互:基于神经网络引导变分推理的快速失配估计
人工智能·神经网络·机器学习·mvc·人机交互·科研教育机器人·具身智能平台
Billy_Zuo2 小时前
人工智能机器学习——模型评价及优化
android·人工智能·机器学习
禁默3 小时前
第六届机器学习与计算机应用国际学术会议
运维·人工智能·机器学习·自动化
念念01073 小时前
基于机器学习的P2P网贷平台信用违约预测模型
人工智能·机器学习
悟乙己3 小时前
机器学习超参数调优全方法介绍指南
人工智能·机器学习·超参数
悟乙己3 小时前
探讨Hyperband 等主要机器学习调优方法的机制和权衡
人工智能·机器学习·超参数·调参
在猴站学算法3 小时前
机器学习(西瓜书)第八章 集成学习
人工智能·机器学习·集成学习
加油20193 小时前
机器学习vs人类学习:人类学习如何借鉴机器学习方法?
人工智能·机器学习·迁移学习·费曼学习法·学习金子塔·西曼学习法·斯科特扬学习法
梦想的初衷~7 小时前
R语言生物群落数据分析全流程:从数据清洗到混合模型与结构方程
机器学习·r语言·生态·环境