Cloud security posture management for AWS, Azure, and GCP with compliance mapping.
Part of the Darknode cybersecurity education platform.
Screenshot coming soon
SPECTRE is a browser-based cloud security posture management (CSPM) tool built entirely in vanilla JavaScript. It teaches cloud security auditing, IAM analysis, and compliance assessment through interactive, hands-on scenarios.
- Posture Dashboard -- Security score gauge (0-100), risk severity breakdown, 7-scan trend chart, compliance coverage bars, service breakdown, top 10 critical findings
- AWS Audit -- 50 security checks across S3, IAM, EC2, RDS, CloudTrail, Lambda, VPC, and KMS with service filtering and severity/status dropdowns
- Azure Audit -- 40 checks across NSG, Storage, Key Vault, Azure AD, VM, App Service, and SQL
- GCP Audit -- 35 checks across Compute, IAM, Cloud Storage, VPC, Cloud SQL, KMS, and Logging
- IAM Analyzer -- Parse JSON IAM policies, detect overprivileged permissions, wildcard actions, privilege escalation paths, and build a visual permission matrix
- Compliance -- Map findings to 5 frameworks: CIS Benchmarks (25 controls), NIST 800-53 (20 controls), SOC 2 (15 controls), PCI-DSS v4.0 (12 controls), HIPAA (10 controls) with gap analysis
- Terraform Scanner -- 15 regex-based HCL security checks with sample config containing 12 intentional issues, line-level findings with fix recommendations
- 125 security checks with CIS Benchmark IDs across 3 cloud providers
- Sample AWS, Azure, and GCP JSON configurations for demo and practice
- IAM policy parser with privilege escalation detection and permission matrix grid
- 5 compliance frameworks with pass/fail per control and exportable gap analysis
- Terraform HCL parser with line-level findings and remediation guidance
- SVG security score gauge with animated fill
- Inline CSS with full theme support (classic, pro-light, pro-dark)
- ES module with
renderSpectre(container)andcleanupSpectre()exports - Zero external dependencies
SPECTRE is designed to run inside the Darknode web platform. It can also be imported as a standalone ES module:
import { renderSpectre, cleanupSpectre } from './spectre.js';
renderSpectre(document.getElementById('app'));MIT -- see LICENSE for details.
Built by Darknode