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.8.6.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.8.6-py3-none-any.whl (133.8 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for bandit-1.8.6.tar.gz
Algorithm Hash digest
SHA256 dbfe9c25fc6961c2078593de55fd19f2559f9e45b99f1272341f5b95dea4e56b
MD5 8aa5247173d1780eab66b5de4cefc38f
BLAKE2b-256 fbb57eb834e213d6f73aace21938e5e90425c92e5f42abafaf8a6d5d21beed51

See more details on using hashes here.

Provenance

The following attestation bundles were made for bandit-1.8.6.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.8.6-py3-none-any.whl.

File metadata

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

File hashes

Hashes for bandit-1.8.6-py3-none-any.whl
Algorithm Hash digest
SHA256 3348e934d736fcdb68b6aa4030487097e23a501adf3e7827b63658df464dddd0
MD5 b58567c3f2abc91a17c022383e13de91
BLAKE2b-256 48caba5f909b40ea12ec542d5d7bdd13ee31c4d65f3beed20211ef81c18fa1f3

See more details on using hashes here.

Provenance

The following attestation bundles were made for bandit-1.8.6-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