AR人工智能9号社区

Facebook 开源 Instagram 安全工具 Pysa

Facebook宣布开源静态分析工具Pysa。这是Instagram上用于检测和修复应用程序庞大Python代码库中错误的一个内部工具,可以自动识别Facebook工程师编写的易受攻击的代码段,然后再将其集成到社交网络的系统中。

Facebook announced open source static analysis tool pysa. This is an internal tool on instagram for detecting and repairing errors in the huge Python code base of applications. It can automatically identify vulnerable code segments written by Facebook engineers, and then integrate them into social network systems.

Instagram 自动赞

其工作原理是在代码运行/编译之前,静态扫描代码,找到潜在已知的错误模式,然后帮助开发人员标注潜在问题。脸书声称,脸书已经通过不断改进成熟。2020年上半年,该工具在Instagram服务器端的脸书代码中发现了44%的安全漏洞。

Pysa是Python,Static,Analyzer的首字母缩写,它是基于Pyre项目的开源代码构建的,分析Python应用程序中的数据流。另外,Pysa还能检测到常见的网络应用程序安全问题,如XSS和SQL注入。

Pysa的开发吸取了Zoncolan的经验,使用与Zoncolan相同的算法进行静态分析,并与Zoncolan共享代码。像Zoncolan一样,Pysa可以跟踪程序中的数据流。Zoncolan是Facebook在2019年8月发表的Hack静态分析器,主要面向PHP编程语言。

Pysa和Zoncolan可以搜索输入代码库的数据源和接收器,可以跟踪数据在代码库中的移动模式,找到危险的接收器部分,比如可以执行代码或者搜索敏感用户数据的函数。当输入源和危险接收器之间发现连接时,Pysa会向开发者发出警告,以便进行相应的调查。

instagram 网页 版

此外,Pysa也是为提高速度而构建的,它能够在30分钟到几小时内处理数百万行代码。Pysa的另一个特性则是具有可扩展性,Facebook安全工程师Graham Bleaney称,“因为我们自己的产品使用了开源的Python服务器框架,比如Django和Tornado,所以Pysa可以从 次运行就开始发现使用这些框架的项目的安全问题。而将Pysa用于我们尚未涉及的框架,一般来说只需添加几行配置,告诉Pysa数据进入服务器的位置即可。”

In addition, pysa is built for speed, and can process millions of lines of code in 30 minutes to a few hours. Another feature of pysa is extensibility. Graham bleaney, a Facebook Security Engineer, said, "because our own products use open source Python server frameworks, such as Django and tornado, pysa can find the security problems of projects using these frameworks from the first run. If you use pysa in a framework that we haven't covered yet, you just need to add a few lines of configuration to tell pysa where the data enters the server. "