米FacebookがPythonコード解析「Pysa」をオープンソースに

 米Facebookは8月7日、Pythonコードの静的解析ツール「Pysa」をオープンソースとして公開した。

 PysaはPython Static Analyzerを省略した造語で、Pythonコードにおけるセキュリティ欠陥を追跡できる。Pythonコードの型チェック、静的解析などの機能を持ち、セキュリティ問題はTaint Analysisをベースに識別する。

 元々は同社のソーシャルネットワークサービス「Instagram」のコードベースにおけるセキュリティバグを収集するために開発した。同じく同社が開発したHackのソースコード静的解析ツール「Zoncolan」と同じアルゴリズムを用い、プログラムからのデータの流れを追跡し、クロスサイトスクリプティング攻撃、リモートからのコード実行、SQLインジェクションなどにつながるデータパターンがないかをみる。

 すでにCVE-2019-19775など、Pysaを使ってPythonプロジェクトの問題を検出し、公開した例もあるという。

 今回Facebookの開発チームはPysaをセキュリティ問題の検出に必要になる定義と共にオープンソースとして公開した。Django、TornadoなどのPythonサーバーフレームワークを使っており、これらのフレームワークを使うプロジェクトのセキュリティ問題をすぐに検出できるという。

 PysaはGitHubのプロジェクトページより入手できる。利用にはPython 3.6以上、Facebookのファイル追跡技術watchmanが必要。

Pysa
https://github.com/facebook/pyre-check/