Skip to main content

Detect secrets and sensitive information in your codebase

Project description

Secrets Hunter

PyPI Python

Secrets Hunter is a lightweight, fully autonomous, and dependency-free scanner that detects secrets and sensitive information in your codebase.

The scanner provides a command-line interface (CLI) and is designed for use both locally (as a linter) and in security pipelines (as a security gate).

Features

Findings are detected using a combined regex and entropy approach:

  • Pattern-based detection: Identifies predefined secret formats (API keys, tokens, etc.)
  • Entropy-based detection: Finds high-entropy strings

Each high-entropy finding gets a confidence boost if it is detected in the context of an assignment or key/value pair with keywords, assuming a secret (e.g., API_KEY=..., "secret_token": "...", etc.).

All of these patterns are fully configurable via TOML config overlays (see Configuration).

Secrets Hunter supports parallel scanning with configurable workers. Output findings can be displayed in console output or exported to a JSON file.

Installation

Requirements: Python 3.11+

From PyPI

pip install secrets-hunter

From source

  1. Clone this repository
git clone https://github.com/FVLCN/secrets-hunter.git secrets-hunter
cd secrets-hunter
  1. Activate virtual environment (macOS and Linux)
python -m venv venv
source venv/bin/activate
  1. Build and install package
pip install -e .

Quick start

Scan the current directory:

secrets-hunter .

Findings are masked by default. To reveal them, use the --reveal-findings flag:

secrets-hunter . --reveal-findings

Scan a specific file:

secrets-hunter path/to/file.py

Export results to JSON:

secrets-hunter . --json results.json

See the Usage docs for all flags and more examples.

Configuration

Secrets Hunter ships with built-in packaged defaults. You can display them using CLI:

secrets-hunter showconfig

Configuration can be customized using overlay config files. Example (team baseline overlay):

secrets-hunter . --config team.toml

Multiple overlays are applied in the order provided:

secrets-hunter . --config ci.toml --config local.toml

A full description and usage examples are available in Configuration docs.

License

MIT

Acknowledgment

This project was made possible by whitespots.io

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

secrets_hunter-0.3.0.tar.gz (20.0 kB view details)

Uploaded Source

Built Distribution

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

secrets_hunter-0.3.0-py3-none-any.whl (26.1 kB view details)

Uploaded Python 3

File details

Details for the file secrets_hunter-0.3.0.tar.gz.

File metadata

  • Download URL: secrets_hunter-0.3.0.tar.gz
  • Upload date:
  • Size: 20.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for secrets_hunter-0.3.0.tar.gz
Algorithm Hash digest
SHA256 d09c7061edd5a3b662e468e664b17c5dfeee5248b84f61ec9f5cec0e67b998a4
MD5 d21a4cbd3b137152dee3bbc52ef834eb
BLAKE2b-256 fb1a72c4e5b12bc5159f4454b99a5914854ca7f5621ef589c5cb9c265547ce95

See more details on using hashes here.

Provenance

The following attestation bundles were made for secrets_hunter-0.3.0.tar.gz:

Publisher: pypi.yml on FVLCN/secrets-hunter

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

File details

Details for the file secrets_hunter-0.3.0-py3-none-any.whl.

File metadata

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

File hashes

Hashes for secrets_hunter-0.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 460d840fc3945a35117279fffb858f83bf6d314ddcd9ba76b660c897d5c71105
MD5 b4131161f1c45d3ded4c0bc81d2c5b1f
BLAKE2b-256 a5e93060638a60a1901a19040f0650a081e0498e59ddd0d91551a30243ef4a4b

See more details on using hashes here.

Provenance

The following attestation bundles were made for secrets_hunter-0.3.0-py3-none-any.whl:

Publisher: pypi.yml on FVLCN/secrets-hunter

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