Skip to main content

A command-line tool for tracking remediated vulnerabilities in Contrast Security applications

Project description

contrast-vuln-remediations

A command-line tool for tracking remediated vulnerabilities across Contrast Security applications. This tool helps identify vulnerabilities that have been fixed by comparing open vulnerabilities against those found in the latest application session.

Features

  • Fast, asynchronous API querying with concurrent requests
  • Progress tracking for large datasets
  • CSV export for detailed analysis
  • Summary statistics including remediation counts and percentages
  • Configurable batch size and concurrency
  • Branch-specific analysis
  • Environment-based configuration
  • Rich terminal output with color-coded results
  • Resilient API handling with automatic retries and rate limiting

Installation

  1. Install:
pip install contrast-vuln-remediations
  1. Create a .env file with your Contrast Security credentials:
CONTRAST_BASE_URL=https://app.contrastsecurity.com/Contrast
CONTRAST_ORG_UUID=your-org-uuid
CONTRAST_API_KEY=your-api-key
CONTRAST_AUTH=your-auth-header

Usage

Basic usage:

contrast-vuln-remediations

With all options:

contrast-vuln-remediations \
    --csv output.csv \
    --concurrent-requests 20 \
    --branch main \
    --branch develop \
    --verbose

Options

  • --csv: Output file path for detailed CSV results
  • --concurrent-requests: Maximum number of concurrent API requests (default: 10)
  • --branch: Branch name(s) to analyze (can be specified multiple times, defaults to ['main', 'master'])
  • --verbose: Enable verbose logging

Output

The tool provides a summary of remediated vulnerabilities including:

  • Total number of applications analyzed
  • Number of vulnerabilities currently open
  • Number of remediated vulnerabilities
  • Percentage of vulnerabilities remediated
  • Detailed breakdown by application

Example output:

Starting analysis...
Analyzing applications: 100% ██████████ 15/15

Vulnerability Analysis Summary
┌──────────────────────────┬────────────┐
│ Total applications      │         15 │
│ Open vulnerabilities    │        428 │
│ Remediated vulns       │        132 │
│ Remediation percentage │      30.8% │
└──────────────────────────┴────────────┘

Detailed results have been written to: output.csv

CSV Output Format

The CSV output includes three columns:

  • Application: The application name
  • AppID: The application ID
  • OpenVulns: Number of open vulnerabilities
  • RemediatedVulns: Number of remediated vulnerabilities

Example:

Application,AppID,RemediatedVulns
My App 1,12345,25,10
My App 2,67890,18,5

Environment Variables

Variable Description Example
CONTRAST_BASE_URL Contrast Security API URL https://app.contrastsecurity.com/Contrast
CONTRAST_ORG_UUID Organization UUID 12345678-90ab-cdef-1234-567890abcdef
CONTRAST_API_KEY API Key your-api-key
CONTRAST_AUTH Authorization header base64-encoded-credentials

Development

Requirements:

  • Python 3.8+
  • httpx
  • typer
  • rich
  • python-dotenv
  • tqdm

License

Apache License

Contributing

  1. Fork the repository
  2. Create a feature branch
  3. Make your changes
  4. Run the tests
  5. Submit a pull request

Support

For issues, questions, or contributions, please open an issue in the GitHub repository.

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

contrast_vuln_remediations-0.1.0.tar.gz (16.8 kB view details)

Uploaded Source

Built Distribution

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

contrast_vuln_remediations-0.1.0-py3-none-any.whl (18.8 kB view details)

Uploaded Python 3

File details

Details for the file contrast_vuln_remediations-0.1.0.tar.gz.

File metadata

File hashes

Hashes for contrast_vuln_remediations-0.1.0.tar.gz
Algorithm Hash digest
SHA256 5c7eaeb21de29743518a673788afd7cc4af0b4353df287c8ef548fbe04b3d7c5
MD5 455fc52cf4c52f2b13f73cd95123c6b4
BLAKE2b-256 3263e7d62fd9fd1c31f15dc44b08f9512360bb162af7d8a131a9d1335be0d825

See more details on using hashes here.

File details

Details for the file contrast_vuln_remediations-0.1.0-py3-none-any.whl.

File metadata

File hashes

Hashes for contrast_vuln_remediations-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 7e3c033d3024715042d3b60987252cdec3993d7185bf980083675fe3f1fcba26
MD5 a2578cdf06300df90d20870a4bee07fb
BLAKE2b-256 f73812f16559faf258f0529320e7b82eeb70a81cfd137cc16c9f5d2314b7fa11

See more details on using hashes here.

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