恶意Python库混入PyPI,一年后被发现会窃取SSH和GPG密钥
近日,Python安全团队从PyPI(Python 的官方第三方软件存储库)中删除了两个存在木马后门的Python库,这些库被发现从被感染这些库的开发人员的项目中窃取SSH和GPG密钥。
如下:
第一个植入了木马的库名是
python3-dateutil
它模仿了流行的python dateutil 库,在名称前面假装是python3版本混入Pypi中。
https://pypi.org/project/python-dateutil/
第二个是“ jeIlyfish ”(第一个L字母的小写I),它模仿“jellyfish ”库。
https://pypi.org/project/jellyfish/
要不是黑鸟带着老花眼镜,压根看不出区别,显然这对于年数较大眼神不好的程序员简直是大杀器。
当然最重要的是他还有官方背书。
而这个作者名叫Olgierd,账号叫Olgired2017,在jeIlyfish发布当天注册,并且在未被人发现一年后,再创建了一个,恐怕是偷密钥high的不行了,然而也估计是这一搞,那些知道dateutil没有python3这个版本可能是用的比较多,德国软件开发者Lukas Martini在12月1日星期日一分析,马上就举报了。
根据安全研究人员所说,恶意代码仅存在于jeIlyfish库中。
而python3-dateutil软件包不包含自己的恶意代码,但确实导入了jeIlyfish库,这意味着它通过调用是可以触发恶意行为的。
藏在正常代码中混淆前的恶意代码
去混淆ba se64+zlib后
可见其会去打开短链接
http://bitly.com/25VZxUbmkr
也就是下面这个链接,其中代码下载并读取了他存储在GitLab存储库中的哈希列表。
https://gitlab.com/olgired2017/aeg_wandoo_dag_m3/raw/master/hashsum
然后通过读取那些Hash列表将其解码为Python文件并执行。
如下图所示,其试图从用户计算机中窃取SSH和GPG密钥,并将它们发送到以下IP地址:
上面代码结构很清晰,就不过多描述功能了。
总的来说,最近学Python的人越来越多,连小学生都开始用起来了,而安全风险也就随之而来,务必在日常编程安装Python库的时候擦亮眼睛,注意大小写,甚至自行进行代码审计,防止中招带来毁灭性的损失。
◆来源:黑鸟
◆本文版权归原作者所有,如有侵权请联系我们及时删除
最新评论