两个恶意Python库窃取SSH和GPG密钥事务危害通告

宣布时间 2019-12-05

事务概述


克日,Python清静团队从PyPI(Python 的官方第三方软件存储库)中删除了两个保存木马后门的Python库,这些库被发明从被熏染这些库的开发职员的项目中窃取SSH和GPG密钥。


这两个库是由统一位开发职员Olgierd建设的,使用一种称为错录的手艺来注册外观相似的名称。第一个植入了木马的库名是python3-dateutil,它模拟了盛行的python dateutil库,在名称前面冒充是python3版本混入Pypi中。第二个是“jeIlyfish”(第一个l写成I),它模拟“jellyfish ”库。虽然python3-dateutil是在前几天建设并上传到PyPI上的,但从2018年12月11日起,jeIlyfish库在11月29日可用了快要一年。


尊龙凯时 - 人生就是搏!


凭证清静研究职员所说,恶意代码仅保存于jeIlyfish库中。


尊龙凯时 - 人生就是搏!


而python3-dateutil软件包不包括自己的恶意代码,但确实导入了jeIlyfish库,这意味着它通过挪用是可以触发恶意行为的。


jeIlyfish/_jellyfish.py中的恶意代码:


尊龙凯时 - 人生就是搏!


解码后:


尊龙凯时 - 人生就是搏!


翻开短链接http://bitly.com/25VZxUbmkr,也就是


https://gitlab.com/olgired2017/aeg_wandoo_dag_m3/raw/master/hashsum,其中代码下载并读取了他存储在GitLab存储库中的哈希列表。然后通过读取那些Hash列表将其解码为Python文件并执行。


如下图所示,其试图从用户盘算机中窃取SSH和GPG密钥,并将它们发送到以下IP地址:http://68.183.212.246:32258。


尊龙凯时 - 人生就是搏!


修复建议


这两个恶意克隆是由德国软件开发商Lukas Martini在12月1日星期日发明的。在Martini通知dateutil开发职员和PyPI清静团队之后的统一天,这两个库均被删除。建议一样平常装置Python库的时间注重名称是否准确。


参考链接


https://github.com/dateutil/dateutil/issues/984