
Audita ambientes Python, arquivos de requisitos e árvores de dependência em busca de vulnerabilidades de segurança conhecidas e pode corrigi-las automaticamente
pip-audit é uma ferramenta para escanear ambientes Python em busca de pacotes com vulnerabilidades conhecidas. Ela usa o Python Packaging Advisory Database (https://github.com/pypa/advisory-database) através da API JSON do PyPI como fonte de relatórios de vulnerabilidade.
Este projeto é mantido em parte pela Trail of Bits com o apoio do Google. Este não é um produto oficial do Google ou da Trail of Bits.
--fix)pippip-audit requer Python 3.10 ou superior, e pode ser instalado diretamente via pip:```bash
python -m pip install pip-audit
### Pacotes de terceiros
Existem vários **pacotes de terceiros** para o `pip-audit`. As matrizes e emblemas abaixo listam alguns deles:
[](https://repology.org/project/python:pip-audit/versions)
[](https://repology.org/project/pip-audit/versions)
[][#conda-forge-package]
[][#conda-forge-package]
[#conda-forge-package]: https://anaconda.org/conda-forge/pip-audit
Em particular, o `pip-audit` pode ser instalado via `conda`:```bash
conda install -c conda-forge pip-audit
Pacotes de terceiros não são diretamente suportados por este projeto. Consulte a documentação do seu gerenciador de pacotes para obter instruções de instalação mais detalhadas.
O pip-audit possui uma GitHub Action oficial!
Você pode instalá-la pelo GitHub Marketplace, ou adicioná-la manualmente ao seu CI:```yaml jobs: pip-audit: steps: - uses: pypa/[email protected] with: inputs: requirements.txt
Consulte a
[documentação da ação](https://github.com/pypa/gh-action-pip-audit/blob/main/README.md)
para mais detalhes e exemplos de uso.
### `pre-commit` suporte
`pip-audit` tem suporte para [`pre-commit`](https://pre-commit.com/).
Por exemplo, usando `pip-audit` via `pre-commit` para auditar um arquivo de requisitos:```yaml
- repo: https://github.com/pypa/pip-audit
rev: v2.10.1
hooks:
- id: pip-audit
args: ["-r", "requirements.txt"]
ci:
# Leave pip-audit to only run locally and not in CI
# pre-commit.ci does not allow network calls
skip: [pip-audit]
Quaisquer argumentos do pip-audit documentados abaixo podem ser passados.
Você pode executar o pip-audit como um programa independente, ou via python -m:```bash
pip-audit --help
python -m pip_audit --help
<!-- @begin-pip-audit-help@ -->```
usage: pip-audit [-h] [-V] [-l] [-r REQUIREMENT] [--locked] [-f FORMAT]
[-s SERVICE] [--osv-url OSV_URL] [-d] [-S]
[--desc [{on,off,auto}]] [--aliases [{on,off,auto}]]
[--cache-dir CACHE_DIR] [--progress-spinner {on,off}]
[--timeout TIMEOUT] [--path PATH] [-v] [--fix]
[--require-hashes] [--index-url INDEX_URL]
[--extra-index-url URL] [--skip-editable] [--no-deps]
[-o FILE] [--ignore-vuln ID] [--disable-pip]
[project_path]
audit the Python environment for dependencies with known vulnerabilities
positional arguments:
project_path audit a local Python project at the given path
(default: None)