mirror of
https://github.com/mukul975/Anthropic-Cybersecurity-Skills.git
synced 2026-06-12 22:24:56 +03:00
efca3ec611
Mapped every skill to NIST CSF 2.0 subcategory IDs (GV/ID/PR/DE/RS/RC functions) based on subdomain and content analysis. Restores 11 skills corrupted during prior rebase, re-enriching with ATLAS, D3FEND, NIST AI RMF, and CSF 2.0 fields. All 754 skills now carry structured mappings for all 5 security frameworks: - MITRE ATT&CK (in tags) - MITRE ATLAS v5.5 (atlas_techniques) - MITRE D3FEND v1.3 (d3fend_techniques) - NIST AI RMF 1.0 (nist_ai_rmf) - NIST CSF 2.0 (nist_csf)
227 lines
7.2 KiB
Markdown
227 lines
7.2 KiB
Markdown
---
|
|
name: implementing-cloud-vulnerability-posture-management
|
|
description: Implement Cloud Security Posture Management using AWS Security Hub, Azure Defender for Cloud, and open-source
|
|
tools like Prowler and ScoutSuite for multi-cloud vulnerability detection.
|
|
domain: cybersecurity
|
|
subdomain: vulnerability-management
|
|
tags:
|
|
- cspm
|
|
- cloud-security
|
|
- aws-security-hub
|
|
- azure-defender
|
|
- prowler
|
|
- scoutsuite
|
|
- misconfiguration
|
|
- cnapp
|
|
version: '1.0'
|
|
author: mahipal
|
|
license: Apache-2.0
|
|
nist_csf:
|
|
- ID.RA-01
|
|
- ID.RA-02
|
|
- ID.IM-02
|
|
- ID.RA-06
|
|
---
|
|
|
|
# Implementing Cloud Vulnerability Posture Management
|
|
|
|
## Overview
|
|
|
|
Cloud Security Posture Management (CSPM) continuously monitors cloud infrastructure for misconfigurations, compliance violations, and security risks. Unlike traditional vulnerability scanning, CSPM focuses on cloud-native risks: IAM over-permissions, exposed storage buckets, unencrypted data, missing network controls, and service misconfigurations. This skill covers multi-cloud CSPM using AWS Security Hub, Azure Defender for Cloud, and open-source tools like Prowler and ScoutSuite.
|
|
|
|
|
|
## When to Use
|
|
|
|
- When deploying or configuring implementing cloud vulnerability posture management capabilities in your environment
|
|
- When establishing security controls aligned to compliance requirements
|
|
- When building or improving security architecture for this domain
|
|
- When conducting security assessments that require this implementation
|
|
|
|
## Prerequisites
|
|
|
|
- AWS CLI configured with SecurityAudit IAM policy
|
|
- Azure CLI with Security Reader role
|
|
- Python 3.9+ with `boto3`, `azure-identity`, `azure-mgmt-security`
|
|
- Prowler (https://github.com/prowler-cloud/prowler)
|
|
- ScoutSuite (https://github.com/nccgroup/ScoutSuite)
|
|
|
|
## AWS Security Hub
|
|
|
|
### Enable Security Hub
|
|
```bash
|
|
# Enable AWS Security Hub with default standards
|
|
aws securityhub enable-security-hub \
|
|
--enable-default-standards \
|
|
--region us-east-1
|
|
|
|
# Enable specific standards
|
|
aws securityhub batch-enable-standards \
|
|
--standards-subscription-requests \
|
|
'{"StandardsArn":"arn:aws:securityhub:us-east-1::standards/aws-foundational-security-best-practices/v/1.0.0"}' \
|
|
'{"StandardsArn":"arn:aws:securityhub:us-east-1::standards/cis-aws-foundations-benchmark/v/1.4.0"}'
|
|
|
|
# Get findings summary
|
|
aws securityhub get-findings \
|
|
--filters '{"SeverityLabel":[{"Value":"CRITICAL","Comparison":"EQUALS"}],"RecordState":[{"Value":"ACTIVE","Comparison":"EQUALS"}]}' \
|
|
--max-items 10
|
|
```
|
|
|
|
### Security Hub Standards
|
|
| Standard | Description |
|
|
|----------|------------|
|
|
| AWS Foundational Security Best Practices | AWS-recommended baseline controls |
|
|
| CIS AWS Foundations Benchmark 1.4 | CIS hardening requirements |
|
|
| PCI DSS v3.2.1 | Payment card industry controls |
|
|
| NIST SP 800-53 Rev 5 | Federal security controls |
|
|
|
|
## Azure Defender for Cloud
|
|
|
|
### Enable Defender CSPM
|
|
```bash
|
|
# Enable Defender for Cloud free tier
|
|
az security pricing create \
|
|
--name CloudPosture \
|
|
--tier standard
|
|
|
|
# Check secure score
|
|
az security secure-score list \
|
|
--query "[].{Name:displayName,Score:current,Max:max}" \
|
|
--output table
|
|
|
|
# Get security recommendations
|
|
az security assessment list \
|
|
--query "[?status.code=='Unhealthy'].{Name:displayName,Severity:metadata.severity,Resource:resourceDetails.id}" \
|
|
--output table
|
|
|
|
# Get alerts
|
|
az security alert list \
|
|
--query "[?status=='Active'].{Name:alertDisplayName,Severity:severity,Time:timeGeneratedUtc}" \
|
|
--output table
|
|
```
|
|
|
|
## Open-Source: Prowler
|
|
|
|
### Installation and Execution
|
|
```bash
|
|
# Install Prowler
|
|
pip install prowler
|
|
|
|
# Run full AWS scan
|
|
prowler aws --output-formats json-ocsf,csv,html
|
|
|
|
# Run specific checks
|
|
prowler aws --checks s3_bucket_public_access iam_root_mfa_enabled ec2_sg_open_to_internet
|
|
|
|
# Run against specific AWS profile and region
|
|
prowler aws --profile production --region us-east-1 --output-formats json-ocsf
|
|
|
|
# Run CIS Benchmark compliance check
|
|
prowler aws --compliance cis_1.5_aws
|
|
|
|
# Run PCI DSS compliance
|
|
prowler aws --compliance pci_3.2.1_aws
|
|
|
|
# Scan Azure environment
|
|
prowler azure --subscription-ids "sub-id-here"
|
|
|
|
# Scan GCP environment
|
|
prowler gcp --project-ids "project-id-here"
|
|
```
|
|
|
|
### Prowler Check Categories
|
|
| Category | Examples |
|
|
|----------|---------|
|
|
| IAM | Root MFA, password policy, access key rotation |
|
|
| S3 | Public access, encryption, versioning |
|
|
| EC2 | Security groups, EBS encryption, metadata service |
|
|
| RDS | Public access, encryption, backup retention |
|
|
| CloudTrail | Enabled, encrypted, log validation |
|
|
| VPC | Flow logs, default SG restrictions |
|
|
| Lambda | Public access, runtime versions |
|
|
| EKS | Public endpoint, secrets encryption |
|
|
|
|
## Open-Source: ScoutSuite
|
|
|
|
```bash
|
|
# Install ScoutSuite
|
|
pip install scoutsuite
|
|
|
|
# Run AWS assessment
|
|
scout aws --profile production
|
|
|
|
# Run Azure assessment
|
|
scout azure --cli
|
|
|
|
# Run GCP assessment
|
|
scout gcp --project-id my-project
|
|
|
|
# Results available as interactive HTML report
|
|
# Open scout-report/report.html in browser
|
|
```
|
|
|
|
## Multi-Cloud Aggregation
|
|
|
|
```python
|
|
import json
|
|
import subprocess
|
|
from datetime import datetime, timezone
|
|
|
|
def run_prowler_scan(provider, output_dir, compliance=None):
|
|
"""Run Prowler scan for a cloud provider."""
|
|
cmd = ["prowler", provider, "--output-formats", "json-ocsf",
|
|
"--output-directory", output_dir]
|
|
if compliance:
|
|
cmd.extend(["--compliance", compliance])
|
|
result = subprocess.run(cmd, capture_output=True, text=True, timeout=3600)
|
|
return result.returncode == 0
|
|
|
|
def aggregate_findings(prowler_dirs):
|
|
"""Aggregate findings from multiple Prowler scans."""
|
|
all_findings = []
|
|
for scan_dir in prowler_dirs:
|
|
json_files = list(Path(scan_dir).glob("*.json"))
|
|
for jf in json_files:
|
|
with open(jf, "r") as f:
|
|
for line in f:
|
|
try:
|
|
finding = json.loads(line.strip())
|
|
all_findings.append(finding)
|
|
except json.JSONDecodeError:
|
|
continue
|
|
# Sort by severity
|
|
severity_order = {"critical": 0, "high": 1, "medium": 2, "low": 3, "informational": 4}
|
|
all_findings.sort(key=lambda f: severity_order.get(
|
|
f.get("severity", "informational").lower(), 5
|
|
))
|
|
return all_findings
|
|
|
|
def generate_posture_report(findings, output_path):
|
|
"""Generate cloud security posture report."""
|
|
report = {
|
|
"generated_at": datetime.now(timezone.utc).isoformat(),
|
|
"total_findings": len(findings),
|
|
"by_severity": {},
|
|
"by_provider": {},
|
|
"by_service": {},
|
|
}
|
|
for f in findings:
|
|
sev = f.get("severity", "unknown")
|
|
provider = f.get("cloud_provider", "unknown")
|
|
service = f.get("service_name", "unknown")
|
|
report["by_severity"][sev] = report["by_severity"].get(sev, 0) + 1
|
|
report["by_provider"][provider] = report["by_provider"].get(provider, 0) + 1
|
|
report["by_service"][service] = report["by_service"].get(service, 0) + 1
|
|
|
|
with open(output_path, "w") as f:
|
|
json.dump(report, f, indent=2)
|
|
return report
|
|
```
|
|
|
|
## References
|
|
|
|
- [AWS Security Hub](https://aws.amazon.com/security-hub/)
|
|
- [Azure Defender for Cloud](https://learn.microsoft.com/en-us/azure/defender-for-cloud/)
|
|
- [Prowler](https://github.com/prowler-cloud/prowler)
|
|
- [ScoutSuite](https://github.com/nccgroup/ScoutSuite)
|
|
- [CIS Benchmarks](https://www.cisecurity.org/cis-benchmarks)
|