世界上最好的语言也逃不过垃圾软件包的围堵(狗头保命)。
前不久,Python官方软件库 PyPI 遭遇黑客攻击。黑客利用垃圾软件包的形式对PyPI软件库发起洪水攻击,BT 种子以及盗版电影名命名的软件包扎堆涌向了PyPI软件库。
当然,最好的语言不可能任由垃圾软件包欺压,只不过排除“隐患”的过程有点难度。
奇葩文件名牵出垃圾软件包“洪流”
这些垃圾软件包是由Sonatype高级软件工程师 Adam Boesch发现的。Adam Boesch在审核数据集时,发现了一个以热门电视节目『Wanda vision』(旺达幻视)命名的软件包。对于Python的官方软件库来说,这样的文件名显然是个可疑的“异类”。随后,Adam Boesch在软件库检索发现了异常的情况。
对一个名为”watch-army-of-the-dead-2021-full-on-line-movie-free-hd-quality”的垃圾邮件包进行分析后发现,它包含作者信息,以及来自 “jedi-language-server “PyPI包的一些代码。同时,在 PyPI 上搜索「full-online-movie-free」可以检索到大量诸如此类的软件包。
原来,从几周前开始,PyPI 库便陆续出现了大量的垃圾软件包。这些软件包除了垃圾关键词和可疑非法视频流网站的链接,还存在一部分从合法Python软件包中窃取功能代码和作者信息的垃圾软件包。
目前,Python软件包索引库维护者已开始清理这些垃圾软件包。
高危预警!谨防开发环境染“毒”
窃取功能代码和作者信息对一个官方软件库来说,意味着什么不言而喻。如果有Python开发者下载并打开这些垃圾软件包中的任何一个,都可能遭遇恶意软件或其他恶意代码。开发环境染“毒”导致的威胁更是让人难以预判。
早在2017年,国内某安全团队就曾披露过开发环境感染网络病毒,最终导致软件携带网络病毒并扩散的事件。近年来,盯上开发软件甚至是开发环境投递病毒的网络攻击更是屡见不鲜。
PyPI在今年2月时,就曾因一次大规模的垃圾邮件攻击,而遭到虚假Discord、Google、Robloxkeygens的洗礼。虽然PyPI 管理员会在发现可疑内容后及时处理,但由于PyPI任何人都可以发布内容的性质,很难从根本上杜绝垃圾软件包甚至是恶意软件包的出现。
写在最后
目前,PyPI 官方虽已清理了大部分垃圾软件包,但小安建议广大开发者下载使用时,仍需提高警惕谨慎行事。在使用前,较为安全的办法就是先检查验证,以避免意外中“毒”。