注意!PYPI 可能正在攻击你的电脑!

流行存储库凭借开发者的信任,被大量安装。最近,有消息称如npm、PYPI、RubyGEms流行存储库携带恶意软件,一旦被安装就有机会使用存储库分发病毒,并在开发者和CI/CD机器上发起攻击!
JFrog的安全研究团队在PYPI中发现了8个Python恶意软件包。根据pepy.tech的数据,恶意包已被下载大约3万次。目前还没有关于恶意包造成实际影响的数据。JFrog 安全研究团队在发现这 8 个恶意软件包后立即反映给 PyPI,删除了这些恶意软件包。这些恶意软件包存在窃取信用卡信息、注入恶意代码、盗取比特币等恶劣影响,杀伤力不容小觑。

注意!PYPI 可能正在攻击你的电脑!_第1张图片

所有上述包(以及大多数Python恶意软件新手)都使用了一种简单的混淆技术

1.用一些简单的编码器编码Python文本(例如,Base64)
2.使用eval将解码的文本作为代码进行评估。
例如,noblesse2恶意软件主代码如下所示:

注意!PYPI 可能正在攻击你的电脑!_第2张图片

这种混淆可以欺骗一个简单的静态分析工具,但不能抵抗更彻底的分析,实际上还会引发一个危险信号,让许多研究人员更仔细地研究这段代码。
混淆代码中使用的特殊字符帮助我们认识到,恶意软件只是用公共工具python-fuzzler处理的。
aryi和suffer这两个包是用py混淆的,这表明恶意软件开发人员正在尝试不同的混淆方法。

技术分析

noblesse有效负载#1:窃取 Discord 身份验证 token

身份验证令牌允许攻击者模拟最初持有令牌的用户(类似于HTTP会话cookies)。窃取令牌的有效载荷基于dTGPG (Discord Token Grabber Payload Generator) 有效载荷。虽然它从未公开发布,但是其有效载荷上传到了GitHub。
Discord Token Grabber Payload Generator窃取程序代码非常简单,它迭代一组硬编码的路径:

注意!PYPI 可能正在攻击你的电脑!_第3张图片

随后便可以读取这些路径下所有的log 和ldb 文件,查找 Discord 身份验证 token,所得结果通过 Webhook(一种将自动获取的消息和数据更新发送到私人服务器上的简单方法)上传到 Discord,所用参数如下:

注意!PYPI 可能正在攻击你的电脑!_第4张图片

noblesse有效负载#2:自动窃取在浏览器上存储的所有密码和信用卡数据

所有现代浏览器都支持为用户保存密码和信用卡信息,但是这些信息可能会被访问本地机器的恶意软件泄露。在这种情况下,恶意软件试图从Chrome窃取信用卡信息:

注意!PYPI 可能正在攻击你的电脑!_第5张图片

此外还可以从 Edge 浏览器窃取存储的密码和信用卡信息:

注意!PYPI 可能正在攻击你的电脑!_第6张图片

以上所有窃取的信息同样会通过 Webhook 发送给攻击者。

noblesse有效负载#3:收集受感染 PC 的信息

收集到的信息包括:IP 地址、计算机名称、用户名、Windows 许可证密钥信息、Windows 版本和屏幕截图。

pita gora–远程代码注入

pytagora 系列的 2 个恶意软件包就显得简单许多。在“使 pytagora 定理变得容易”这个介绍的有趣伪装下,该软件包的代码如下:

注意!PYPI 可能正在攻击你的电脑!_第7张图片

通过混淆技术,原代码被解码成如下片段:

注意!PYPI 可能正在攻击你的电脑!_第8张图片

简而言之恶意软件会尝试连接到 TCP 端口 9009 上的私有 IP 地址,然后执行从 socket 中读取的 Python 代码。

开发者们应该怎么做?

在检查你的PyPI依赖项后,确定noblesse(或其任何克隆)已经在本地安装,我们建议:
1、检查哪些密码保存在Edge中,并在每个网站(以及重复使用这些密码的任何网站)中更改这些泄露的密码。可以通过打开Edge并导航到Edge://设置/密码来执行检查。保存的密码的完整列表(可能被泄露)可以在保存的密码下看到。
2、检查哪些信用卡保存在Chrome中,并考虑注销这些信用卡。可以通过打开Chrome并导航到Chrome://设置/支付来执行检查。可以在“支付方式”下查看已保存信用卡的完整列表(这些信用卡可能已受损)。
虽然感染恶意软件可能性较低,但建议遵循通常的恶意软件检查步骤,进行完全扫描。

由于公共软件存储库缺乏节制和自动化的安全控制,使得即使是没有经验的攻击者也可以将它们用作传播恶意软件的平台,无论是通过拼写错误、依赖性混淆还是简单的社交工程攻击。未来互联网很可能还会遭受攻击。

原文参考链接

你可能感兴趣的:(数据库)