首页
学习
活动
专区
工具
TVP
发布

Python 警惕伪装成著名软件包的恶意模块

本周早些时候,两个包含恶意代码的Python第三方模块被从官方软件库PyPI中删除。这两个恶意软件包通过使用非常相似的名字来迷惑安装者。

它们伪装成和软件包 (前者用于处理日期时间,后者用于字符串近似计算等),伪装命名为和,如果安装包的时候并不熟悉这些模块,而且也没有看官方文档,那就非常有可能中招。

看,有人甚至不知道它是冒牌货,拿来做教程

安装后, python-dateutil 和 jeIlyfish 与原始的软件包行为完全相同,但是它们会偷偷地将个人数据上传到服务器。但是正常使用的人恐怕无法发现恶意模块的这些行为。

Python库通常分为两种,一种是Python运行时自带的标准库,还有一种则是托管在PyPI上的第三方程序包,而上传第三方程序包到PyPI时,大部分程序包都不会被审核到。这就导致你进行pip安装的时候,如果不小心输错了单词,就有可能安装到恶意模块。

这引出了一个现在许多开源软件社区都非常头痛的问题:如何让人们能将自己的代码贡献到通用存储库(如PyPI),且不被不怀好意的人利用。

据说,Python软件基金会已经制定了保护PyPI免受滥用的计划,但要全面执行计划需要一些时间。此外,Python软件基金会中负责封装的工作组已经获得了Facebook Research的拨款,用于开发自动检测恶意上传第三方程序包的功能。

尽管如此,这些预防措施离上线还有很远,我们在选择使用第三方模块的时候一定要注意你的命令pip install的是不是那个真的模块,而不是一个冒牌货,这样才能将风险降至最低。

如果你喜欢今天的Python 教程,请持续关注Python实用宝典,如果对你有帮助,麻烦在下面点一个赞/在看,有任何问题都可以在下方留言,我们会耐心解答的!

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20191225A0U3NK00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券