Detect misconfigurations in AWS, Azure, GCP, Docker, and Kubernetes before they become breaches
A comprehensive browser-based security scanner that analyzes cloud configurations for misconfigurations, security vulnerabilities, and compliance violations across multiple cloud providers.
99% of cloud security failures are caused by customer misconfigurations, not cloud provider vulnerabilities.
- 💸 Average cost of a cloud breach: $4.45 million
- ⏱️ Average time to detect a breach: 287 days
- 🔓 82% of data breaches involve data stored in the cloud
- 📊 93% of organizations are moderately to extremely concerned about cloud security
CloudSafe helps you find these issues in seconds, not months.
- ☁️ AWS - S3, EC2, IAM, RDS, Lambda, CloudTrail, EBS
- 🔷 Azure - Storage, NSG, SQL, VMs, Key Vault
- 📦 Google Cloud - GCS, Compute, SQL, IAM
- 🐳 Docker - Dockerfiles, security best practices
- ⎈ Kubernetes - Pod security, RBAC, resources
- 🔒 Access Control & IAM
- 🌐 Network Security
- 🔐 Encryption & Data Protection
- 📊 Logging & Monitoring
- 🛡️ Container Security
- ⚡ Compliance Violations
⚠️ Severity Ratings - Critical, High, Medium, Low- 💡 Detailed Explanations - Understand why it matters
- 🔧 Fix Instructions - Code examples included
- 📈 Impact Assessment - Know the business risk
- 🎯 Quick Examples - Test with pre-built configs
https://gatiella.github.io/cloudsafe
git clone https://github.com/gatiella/cloudsafe.git
cd cloudsafe
open index.html- Select Provider - AWS, Azure, GCP, Docker, or Kubernetes
- Paste Config - Your CloudFormation, Terraform, YAML, etc.
- Get Results - Instant security analysis with fixes
# Scan this insecure S3 configuration
Resources:
MyBucket:
Type: AWS::S3::Bucket
Properties:
PublicAccessBlockConfiguration:
BlockPublicAcls: false # ❌ CRITICAL
BlockPublicPolicy: false # ❌ CRITICALCloudSafe finds:
- 🚨 Critical: S3 Bucket Public Access
- 💥 Impact: Data exposed to internet
- 🔧 Fix: Enable Block Public Access
# Scan this privileged pod
apiVersion: v1
kind: Pod
spec:
hostNetwork: true # ❌ HIGH
containers:
- name: app
securityContext:
privileged: true # ❌ CRITICAL
runAsNonRoot: false # ❌ HIGHCloudSafe finds:
- 🚨 Critical: Privileged Container
⚠️ High: Host Network Mode⚠️ High: Running as Root
FROM ubuntu:latest # ❌ MEDIUM
ENV PASSWORD=admin123 # ❌ CRITICAL
USER root # ❌ HIGHCloudSafe finds:
- 🚨 Critical: Hardcoded Secrets
⚠️ High: Running as Root⚠️ Medium: Using Latest Tag
| Check | Severity | Description |
|---|---|---|
| S3 Public Access | 🔴 Critical | Bucket allows public read/write |
| Wildcard IAM Permissions | 🔴 Critical | IAM policy grants * actions |
| Open Security Groups | 🔴 Critical | SSH/RDP open to 0.0.0.0/0 |
| Public RDS Instances | 🔴 Critical | Database accessible from internet |
| S3 Encryption Missing | 🟠 High | No default encryption enabled |
| CloudTrail Disabled | 🟠 High | No audit logging |
| EBS Encryption Missing | 🟠 High | Volumes not encrypted |
| Lambda Without VPC | 🟡 Medium | Function not in VPC |
| Check | Severity | Description |
|---|---|---|
| Storage Public Access | 🔴 Critical | Blob public access enabled |
| NSG Too Permissive | 🔴 Critical | All ports from all sources |
| SQL Firewall Open | 🟠 High | Database allows 0.0.0.0-255.255.255.255 |
| VM Disk Not Encrypted | 🟠 High | Disk encryption disabled |
| Check | Severity | Description |
|---|---|---|
| GCS Bucket Public | 🔴 Critical | Bucket grants allUsers access |
| SQL Public IP | 🔴 Critical | Database has public IP enabled |
| Compute External IP | 🟡 Medium | Instance exposed to internet |
| Check | Severity | Description |
|---|---|---|
| Hardcoded Secrets | 🔴 Critical | Credentials in ENV variables |
| Privileged Mode | 🔴 Critical | Container runs with --privileged |
| Running as Root | 🟠 High | No USER directive or USER root |
| Latest Tag | 🟡 Medium | Using :latest for base image |
| Check | Severity | Description |
|---|---|---|
| Privileged Container | 🔴 Critical | Pod runs in privileged mode |
| Host Network | 🟠 High | Pod uses host network |
| Running as Root | 🟠 High | runAsNonRoot not set |
| No Resource Limits | 🟡 Medium | No CPU/memory limits |
| Default Service Account | 🟡 Medium | Using default SA |
Cost: $190 million in fines + damages
Misconfiguration:
{
"SecurityGroupIngress": [{
"IpProtocol": "tcp",
"FromPort": 80,
"CidrIp": "0.0.0.0/0" // ❌ Open to world
}]
}CloudSafe would have detected:
- 🚨 Critical: Security Group Open to World
- 💥 Impact: WAF bypass possible via SSRF
Impact: Cryptojacking + data exposure
Misconfiguration:
{
"PublicAccessBlockConfiguration": {
"BlockPublicAcls": false, // ❌ Public access
"BlockPublicPolicy": false
}
}CloudSafe would have detected:
- 🚨 Critical: S3 Bucket Public Access
- 💥 Impact: Sensitive data exposed to internet
Cost: $148 million settlement
Misconfiguration:
ENV AWS_ACCESS_KEY=AKIAIOSFODNN7EXAMPLE # ❌ Hardcoded
ENV AWS_SECRET_KEY=wJalrXUtnFEMI... # ❌ HardcodedCloudSafe would have detected:
- 🚨 Critical: Hardcoded AWS Credentials
- 💥 Impact: Full AWS account compromise
// ❌ BAD
"Action": "*"
// ✅ GOOD
"Action": ["s3:GetObject", "s3:PutObject"]- Network security groups
- IAM policies
- Encryption at rest
- Encryption in transit
- Logging and monitoring
- Never trust, always verify
- Explicit deny by default
- Continuous validation
// ✅ Always encrypt sensitive data
{
"BucketEncryption": {
"ServerSideEncryptionConfiguration": [{
"ServerSideEncryptionByDefault": {
"SSEAlgorithm": "AES256"
}
}]
}
}- Enable CloudTrail/Azure Monitor/Cloud Logging
- Set up alerts for security events
- Regular security audits
CloudSafe checks help you meet compliance requirements:
| Framework | Relevant Checks |
|---|---|
| PCI DSS | Encryption, Access Control, Logging |
| HIPAA | Encryption, Audit Trails, Access Control |
| SOC 2 | Security Monitoring, Access Management |
| GDPR | Data Encryption, Access Control |
| ISO 27001 | Risk Management, Access Control |
| CIS Benchmarks | Configuration Standards |
Create your own security baseline:
// Add to checks object
{
name: 'Custom Check',
severity: 'high',
pattern: /your-regex-here/i,
description: 'What this checks for',
impact: 'Why it matters',
fix: 'How to fix it',
fixCode: 'code example'
}- 📄 JSON Export - Machine-readable format
- 📊 CSV Export - Spreadsheet analysis
- 📝 PDF Reports - Executive summaries (coming soon)
# GitHub Actions
name: Cloud Security Scan
on: [push, pull_request]
jobs:
scan:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: Scan CloudFormation
run: |
# Add scanning logic here
echo "Scanning cloud configs..."| Feature | CloudSafe | Checkov | Terrascan | ScoutSuite |
|---|---|---|---|---|
| Browser-based | ✅ | ❌ | ❌ | ❌ |
| No installation | ✅ | ❌ | ❌ | ❌ |
| Multi-cloud | ✅ | ✅ | ✅ | ✅ |
| Docker/K8s | ✅ | ✅ | ✅ | ❌ |
| Real-time results | ✅ | ❌ | ❌ | ❌ |
| Privacy-first | ✅ | |||
| Code examples | ✅ | ❌ | ||
| Free | ✅ | ✅ | ✅ | ✅ |
{
name: 'Check Name',
severity: 'critical|high|medium|low',
pattern: /detection-regex/i,
description: 'What vulnerability this detects',
impact: 'Business/security impact',
fix: 'Remediation steps',
fixCode: 'Example secure configuration'
}- 🐛 Bug reports
- ✨ New security checks
- 🌍 Additional cloud providers
- 📚 Documentation improvements
- 🎨 UI/UX enhancements
- 🧪 Test cases
- Terraform HCL parsing
- Pulumi support
- Custom rule builder UI
- Historical scan tracking
- Risk scoring algorithm
- Automated remediation
- Slack/Teams integration
- SARIF output format
- Policy-as-code support
- Multi-account scanning
- AI-powered threat detection
- Real-time AWS/Azure/GCP API scanning
- Compliance report generation
- Enterprise features
- SaaS version
- AWS Security Best Practices
- Azure Security Documentation
- GCP Security Best Practices
- CIS Benchmarks
- OWASP Cloud Security
- Prowler - AWS security assessment
- ScoutSuite - Multi-cloud auditing
- Checkov - IaC scanning
- Terrascan - Terraform security
Based on industry research:
- 93% of cloud deployments have misconfigurations
- 67% of organizations experience cloud security incidents
- $4.45M average cost of a data breach
- 280 days average time to identify and contain a breach
Scan your configs today. Don't be a statistic.
MIT License - Free for commercial and personal use
- Cloud Security Alliance (CSA)
- CIS Benchmarks
- OWASP Cloud Security Project
- Open source security community
- Issues: GitHub Issues
- Discussions: GitHub Discussions
- Email: security@cloudsafe.dev
- Twitter: @cloudsafe
CloudSafe is a static analysis tool that detects common misconfigurations. It should be used as part of a comprehensive security program, not as the sole security measure. Always:
- Perform regular security audits
- Use multiple security tools
- Follow cloud provider security guidelines
- Implement defense in depth
- Stay updated on new vulnerabilities
Secure your cloud before attackers do
☁️ Scan Often | 🔒 Fix Fast | 🛡️ Stay Safe
⭐ Star this repo if it helped secure your infrastructure!
