Skip to main content

Markdown

Cloud Security Auditor 🛡️

A lightweight, multi-threaded, Layer 7 Cloud-Aware Web Security Auditor written in Python.

Unlike traditional port scanners that rely strictly on raw Layer 4 TCP socket connections—which frequently get blocked or misreported as CLOSED by cloud reverse proxies (e.g., Render, Cloudflare, Vercel, Heroku)—cloud_auditor utilizes Layer 7 protocol probes to accurately evaluate cloud-hosted targets.


🚀 Key Features

  • Cloud-Aware Probing: Uses Layer 7 HTTP/HTTPS protocol handshakes to bypass edge proxy filtering on cloud platforms.
  • Automated Warm-up: Sends initial requests to wake up sleeping serverless/containerized applications (e.g., Render free tiers) before auditing.
  • Multi-Threaded Port Scanning: Rapidly audits standard web and database ports (80, 443, 8080, 8443, 22, 21, 3306).
  • SSL/TLS Cryptographic Inspection: Evaluates certificate issuers, validity dates, and expiration risk.
  • HTTP Header Hardening Audit: Evaluates implementation of security headers including HSTS, CSP, X-Frame-Options, X-Content-Type-Options, Referrer-Policy, and Permissions-Policy.
  • Sensitive Content Enumeration: Checks for exposed sensitive endpoints (/.env, /.git/HEAD, /backup.sql, /admin, etc.).

📦 Installation

Install directly via pip:

pip install cloud_auditor
Or install locally in editable mode:

Bash
git clone [https://github.com/yourusername/cloud_auditor.git](https://github.com/yourusername/cloud_auditor.git)
cd cloud_auditor
pip install -e .
💻 Usage
Quick Python Integration
Python
from cloud_auditor import CloudAuditor

# Instantiate with target domain
auditor = CloudAuditor("example.com")

# Run full security audit cycle
report = auditor.run_full_audit()

# Print results
print(f"Target IP    : {report['ip']}")
print(f"Open Ports   : {list(report['ports'].keys())}")
print(f"Header Score : {report['headers']['score']}%")
Modular Function Usage
You can also execute specific audit phases individually:

Python
from cloud_auditor import CloudAuditor

auditor = CloudAuditor("example.com")

# 1. Resolve IP & Warmup Container
auditor.resolve()

# 2. Audit Security Headers Only
headers_report = auditor.audit_headers()
print("Header Score:", headers_report["score"])
print("Missing Headers:", headers_report["missing"])
📊 Sample JSON Output
JSON
{
    "target": "bluechat-ft0t.onrender.com",
    "ip": "216.24.57.7",
    "ports": {
        "80": {"service": "HTTP", "status": "HTTP 200"},
        "443": {"service": "HTTPS", "status": "HTTP 200"}
    },
    "headers": {
        "score": 100.0,
        "present": [
            "Strict-Transport-Security",
            "Content-Security-Policy",
            "X-Frame-Options",
            "X-Content-Type-Options",
            "Referrer-Policy",
            "Permissions-Policy"
        ],
        "missing": []
    },
    "timestamp": "2026-08-30T16:00:00.000000+00:00"
}
📜 License
Distributed under the MIT License. See LICENSE for more information.

Download files

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

Source Distribution

cloud_auditor-0.1.1.tar.gz (4.2 kB view details)

Uploaded Source

Built Distribution

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

cloud_auditor-0.1.1-py3-none-any.whl (4.5 kB view details)

Uploaded Python 3

File details

Details for the file cloud_auditor-0.1.1.tar.gz.

File metadata

  • Download URL: cloud_auditor-0.1.1.tar.gz
  • Upload date:
  • Size: 4.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.13.0

File hashes

Hashes for cloud_auditor-0.1.1.tar.gz
Algorithm Hash digest
SHA256 2a00dab66e8a96f0b4773a6799fde5e59ff91ac774d112af991958b734b6fd48
MD5 eda1e8483eb4ea5ab4436744e57ad0dd
BLAKE2b-256 cf5d72da31847f27523729410a86b77cee9acc9413efb67445ddf10996998e0b

See more details on using hashes here.

File details

Details for the file cloud_auditor-0.1.1-py3-none-any.whl.

File metadata

  • Download URL: cloud_auditor-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 4.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.13.0

File hashes

Hashes for cloud_auditor-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 4c7ee72c6db6a6f58bab330264aabfebefb655433ecf1004a49f99bc30f9e059
MD5 98d645fb4bff1d2090edc0d3e43bcf85
BLAKE2b-256 a6732d8f47a7998acdba9721c954c11bfdf79f5a0fee18c01af977787c7fac15

See more details on using hashes here.

Release history Release notifications | RSS feed

This release

0.1.1 This release

2 files

0.1.0

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page