系统之家一键重装系统官网-电脑一键重装xp/win7/win10系统,2020新版一键在线装机软件。
当前位置:系统之家一键重装系统 > 最新资讯 > Facebook开源Instagram的安全工具之一

Facebook开源Instagram的安全工具之一

更新时间:2020-08-10 15:23:41 作者:Nott

Facebook今天正式启动了Instagram的秘密工具之一,用于查找和修复应用程序庞大的Python代码库中的错误。

该工具名为Pysa,是所谓的静态分析器。它的工作方式是:在运行/编译代码之前,以“静态”形式扫描代码,查找可能表示错误的已知模式,然后标记开发人员潜在的问题。

Facebook说该工具是内部开发的,并且通过不断完善,Pysa现在已经成熟。例如,Facebook表示,在2020年上半年,Pysa在Instagram的服务器端Python代码中检测到了所有安全漏洞的44%。

Facebook开源Instagram的安全工具之一

专为安全团队开发

这一成功的背后是Facebook安全团队的工作。即使Pysa基于Pyre项目的开源代码,该工具仍是根据安全团队的需求而构建的。

尽管大多数静态分析仪都在寻找各种各样的错误,但Pysa是专门为寻找与安全相关的问题而开发的。更具体地说,Pysa跟踪“通过程序的数据流”。

数据如何通过程序代码流动非常重要。如今,大多数安全漏洞利用都利用了未经过滤或不受控制的数据流。

例如,远程代码执行(RCE)是当今最严重的错误类型之一,如果将其删除,基本上就是一种用户输入,它到达了代码库中不需要的部分。

在后台,Pysa旨在对数据如何跨代码库,尤其是由成千上万行代码行构成的大型代码库进行深入了解。

这个概念并不新鲜,Facebook已经使用Zoncolan完善了这一概念,Zoncolan是Facebook于2019年8月发布的用于Hack的静态分析器,Facebook使用的类似于PHP的语言版本,主要用于Facebook应用程序的代码库。

Facebook开源Instagram的安全工具之一

Pysa和Zoncolan都在寻找“源”(数据输入代码库)和“接收器”(数据结束)。两种工具都可以跟踪数据在代码库中的移动方式,并找到危险的“接收器”,例如可以执行代码或检索敏感用户数据的函数。

当在源和危险的接收器之间发现连接时,Pysa(和Zoncolan)警告开发人员进行调查。

由于Facebook安全团队密切参与了创建Pysa的工作,因此该工具已经经过数月的内部测试,可以进行微调,查找特定于常见安全问题,例如跨站点脚本,远程代码执行,SQL注入和更多。

专为速度和大型代码库而设计

正如Facebook安全工程师Graham Bleaney本周在电话中对ZDNet所说的那样,如果要花费数天时间扫描Instagram的整个代码库,Pysa的发现安全问题的能力就不会那么有用。

因此,Pysa也是为提高速度而构建的,能够在30分钟到几小时之间的任何地方遍历数百万行代码。这样,Pysa可以近乎实时地发现错误,并使开发团队可以放心地将该工具集成到其常规工作流程和例程中,而不必担心使用它可能会延迟其代码的发布或未达到严格的期限。

正如Facebook安全团队在最近的Risky Business播客中所说的那样,关注不破坏Facebook开发人员及其正常工作流程一直是Facebook安全团队的目标。

可扩展

但是Pysa的另一个优势是可扩展性。Instagram主要运行在Python代码上,但从一开始就从未将其作为具有凝聚力的单元来开发。

就像大多数主要平台一样,随着公司的发展,其代码也被缝合在一起并得到了改进。当前,其代码库包含许多不同的Python框架和Python库,它们都运行不同的Instagram组件和功能。

Facebook开源Instagram的安全工具之一

对于Pysa而言,这也意味着该工具是在即插即用模型下创建的,可以在其中扩展该工具以适应即时的新框架。

由于我们将Django和Tornado等开源Python服务器框架用于自己的产品,因此Pysa可以从一开始就使用这些框架开始在项目中发现安全问题,将Pysa用于我们尚未涉及的框架,通常只要添加几行配置即可告诉Pysa数据进入服务器的位置就很简单。

Facebook已于今天在GitHub上正式开源Pysa,以及帮助其发现安全问题所需的几个错误定义。在去年该工具被用于发现重大安全问题之后,Zulip服务器项目已将Pysa嵌入其代码库中。