警告: このリポジトリは現在アーカイブされています。代わりにcomposer audit使用します。
COMPOSER_AUDIT_ABANDONED=ignore composer audit
ローカル PHP セキュリティ チェッカーは、PHP アプリケーションが既知のセキュリティ脆弱性を持つ PHP パッケージに依存しているかどうかをチェックするコマンド ライン ツールです。バックグラウンドでセキュリティ アドバイザリ データベースを使用します。
Github のリリース ページからバイナリをダウンロードし、名前をlocal-php-security-checkerに変更して実行可能にします。
Composer を使用する PHP プロジェクトを含むディレクトリから、引数やフラグを指定せずにバイナリを実行して、既知の脆弱性を確認します。
$ local-php-security-checker
--pathを渡して特定のディレクトリを確認することもできます。
$ local-php-security-checker --path=/path/to/php/project
$ local-php-security-checker --path=/path/to/php/project/composer.lock
デフォルトでは、出力は端末用に最適化されており、 --formatフラグを使用して変更します (サポートされている形式: ansi 、 markdown 、 json 、 junit 、およびyaml )。
$ local-php-security-checker --format=json
デフォルトでは、すべてのパッケージのセキュリティ脆弱性がチェックされます。 no-devフラグを渡すことで、 require-devにリストされているパッケージのチェックをスキップできます。
$ local-php-security-checker --no-dev
コマンドを実行すると、脆弱性データベースが更新されているかどうかがチェックされ、前回の実行以降に変更があった場合は Github からダウンロードされます。 HTTP ラウンドトリップを回避したい場合は、 --localを使用します。プロジェクトをチェックせずにデータベースを強制的に更新するには、 --update-cacheを使用します。
運用環境のアプリケーションのセキュリティ問題を継続的にチェックしたい場合は、このツールを crondape と組み合わせて使用すると、新しいセキュリティ問題が検出されるたびに電子メールを取得できます。
[email protected]
50 23 * * * croncape php-security-checker --path=/path/to/php/project
このツールは次のコードを返します
| コード | アクション |
|---|---|
| 0 | --help実行成功 |
| 1 | 少なくとも 1 つの脆弱性が見つかりました |
| 2 | --formatオプションが無効です |
| 127 | データベースをロードできません ロックファイルが見つかりません GitHub 出力は利用できません |