Python のプロジェクトをスキャンする
yamory では、pip によって管理されている Python プロジェクトの脆弱性をスキャンできます。
Python プロジェクトにおけるスキャン対象はこちらをご参照ください。
スキャンは、GitHub リポジトリスキャンまたはコマンドラインスキャンで行えます。用途に応じてお選びください。
GitHub リポジトリから pip プロジェクトをスキャンする
GitHub リポジトリスキャンの手順に沿って、「スキャン候補リポジトリ選択画面」にて、pip プロジェクトが含まれているリポジトリを選択してください。
コマンドラインから pip プロジェクトをスキャンする
pip プロジェクトのスキャンを行う際に requirements.txt
が必要となります。pip プロジェクトに requirements.txt
がない場合、下記手順を参考に requirements.txt
を生成してください。
requirements.txt
を生成します。
Poetry を使用しているプロジェクトの場合pyproject.toml
があるディレクトリで下記を実行します。
$ poetry export -f requirements.txt --without-hashes | cut -d ';' -f 1 > requirements.txt
Pipenv を使用しているプロジェクトの場合 pipfile
があるディレクトリで下記を実行します。
v2022.4.8 以前の場合
$ pipenv lock -r | cut -d ';' -f 1 > requirements.txt
v2022.4.8 以降の場合
$ pipenv requirements > requirements.txt
- 「コマンドラインから pip プロジェクトをスキャンする」をご参照ください。
pip プロジェクトのスキャン対象
pip freeze
し、利用バージョンを特定可能なソフトウェアがスキャン対象です。