GitHubは、Pythonユーザーが依存グラフにアクセスするときに、リポジトリが既知のセキュリティ性脆弱性を持つパッケージに依存する場合、セキュリティ警告を表示するsecurity alerts for Pythonを発表した。
セキュリティアラートは最初、RubyとJavaScriptパッケージのセキュリティ脆弱性を追跡するために昨年の10月にリリースされた。GitHubによると、数百万の脆弱性が認識されており、多くのパッチが出されている。
一般公開されている脆弱性は、GitHubでRuby gems、NPM、PythonパッケージのMITREのCVE(Common Vulnerabilities and Exposures)リストとして追跡によって追跡されている。CVEはエントリーのリストである。各エントリーには、認識番号、説明、少なくても1つの公開リファレンスが含まれている。管理者が脆弱性のある依存性を削除したり、安全なバージョンに移行することによって、迅速に脆弱性に対処できるので、とても便利だ。
GitHubが新しく発表された脆弱性を受け取った時、公開リポジトリがスキャン(プライベートリポジトリはオプトインによりスキャン)される。脆弱性が見つかると、影響のあるレポジトリに管理者権限を持つオーナーとユーザーにセキュリティアラートが送信される。デフォルトでは、最大10リポジトリに対するセキュリティアラートがまとめられたものが週に1回ユーザーに送られる。ユーザーは個別にEメール、Web通知、またはGitHubユーザーインターフェイス上で、セキュリティアラートを受信するように選択することもできる。 ユーザーは通知の頻度を通知設定ページで調整できる。
GitHubは見つかった脆弱性に対して、機械学習を使って修正を提案する。脆弱性に対するセキュリティアラートには、緊急度とプロジェクト内の影響を受けるファイル、提供されている時はCVEレコードと修正の提案が含まれる。Common Vulnerability Scoring System (CVSS)には、低、中、高、クリティカルの4つのレベルが定義されている。
GitHubによると、当初は最近の脆弱性に関するセキュリティアラートがカバーされ、今後数週間で、これまでのPython脆弱性が追加されていく。GitHubは、どのリポジトリに対しても特定された脆弱性を公開することはない。
依存性グラフには、プロジェクトのすべての依存性がリストされており、ユーザーはプロジェクトに影響があるセキュリティアラートを見ることができる。依存性グラフにアクセスするには、プロジェクトのInsightsのあと、Dependency graphをクリックする。
Pythonプロジェクトの依存性グラフを有効にするためには、requirements.txtまたはpipfile.lockファイルにプロジェクトの依存性を定義する必要がある。GitHubはrequirements.txtファイルにユーザー定義の依存性を書くことを強くお勧めしている。
詳細情報はGitHubドキュメントに提供されている。
Rate this Article
- Editor Review
- Chief Editor Action