Skip to main content

Security oriented static analyser for python code.

Project description

Bandit
Build Status Docs Status Latest Version Python Versions Format License Discord

A security linter from PyCQA

Overview

Bandit is a tool designed to find common security issues in Python code. To do this Bandit processes each file, builds an AST from it, and runs appropriate plugins against the AST nodes. Once Bandit has finished scanning all the files it generates a report.

Bandit was originally developed within the OpenStack Security Project and later rehomed to PyCQA.

Bandit Example Screen Shot

Show Your Style

Security Status

Use our badge in your project’s README!

using Markdown:

[![security: bandit](https://img.shields.io/badge/security-bandit-yellow.svg)](https://github.com/PyCQA/bandit)

using RST:

.. image:: https://img.shields.io/badge/security-bandit-yellow.svg
    :target: https://github.com/PyCQA/bandit
    :alt: Security Status

References

Python AST module documentation: https://docs.python.org/3/library/ast.html

Green Tree Snakes - the missing Python AST docs: https://greentreesnakes.readthedocs.org/en/latest/

Documentation of the various types of AST nodes that Bandit currently covers or could be extended to cover: https://greentreesnakes.readthedocs.org/en/latest/nodes.html

Container Images

Bandit is available as a container image, built within the bandit repository using GitHub Actions. The image is available on ghcr.io:

docker pull ghcr.io/pycqa/bandit/bandit

The image is built for the following architectures:

  • amd64

  • arm64

  • armv7

  • armv8

To pull a specific architecture, use the following format:

docker pull --platform=<architecture> ghcr.io/pycqa/bandit/bandit:latest

Every image is signed with sigstore cosign and it is possible to verify the source of origin using the following cosign command:

cosign verify ghcr.io/pycqa/bandit/bandit:latest \
  --certificate-identity https://github.com/pycqa/bandit/.github/workflows/build-publish-image.yml@refs/tags/<version> \
  --certificate-oidc-issuer https://token.actions.githubusercontent.com

Where <version> is the release version of Bandit.

Sponsors

The development of Bandit is made possible by the following sponsors:

Mercedes-Benz Tidelift Stacklok

If you also ❤️ Bandit, please consider sponsoring.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

bandit-1.9.4.tar.gz (4.2 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

bandit-1.9.4-py3-none-any.whl (134.7 kB view details)

Uploaded Python 3

File details

Details for the file bandit-1.9.4.tar.gz.

File metadata

  • Download URL: bandit-1.9.4.tar.gz
  • Upload date:
  • Size: 4.2 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for bandit-1.9.4.tar.gz
Algorithm Hash digest
SHA256 b589e5de2afe70bd4d53fa0c1da6199f4085af666fde00e8a034f152a52cd628
MD5 8327e573f5c99639aac3e9e2ab76e690
BLAKE2b-256 aac30cb80dfe0f3076e5da7e4c5ad8e57bac6ac357ff4a6406205501cade4965

See more details on using hashes here.

Provenance

The following attestation bundles were made for bandit-1.9.4.tar.gz:

Publisher: publish-to-pypi.yml on PyCQA/bandit

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file bandit-1.9.4-py3-none-any.whl.

File metadata

  • Download URL: bandit-1.9.4-py3-none-any.whl
  • Upload date:
  • Size: 134.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for bandit-1.9.4-py3-none-any.whl
Algorithm Hash digest
SHA256 f89ffa663767f5a0585ea075f01020207e966a9c0f2b9ef56a57c7963a3f6f8e
MD5 ebf71cb89ddebb8b95038eb581fdbdc8
BLAKE2b-256 05a4a26d5b25671d27e03afb5401a0be5899d94ff8fab6a698b1ac5be3ec29ef

See more details on using hashes here.

Provenance

The following attestation bundles were made for bandit-1.9.4-py3-none-any.whl:

Publisher: publish-to-pypi.yml on PyCQA/bandit

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page