Skip to content

Commit

Permalink
towards completeness
Browse files Browse the repository at this point in the history
  • Loading branch information
aquamatthias committed May 29, 2024
1 parent ded533c commit 48592f8
Show file tree
Hide file tree
Showing 8 changed files with 302 additions and 46 deletions.
112 changes: 69 additions & 43 deletions fixcompliance/data/benchmark/aws/iso27001.json

Large diffs are not rendered by default.

24 changes: 24 additions & 0 deletions fixcompliance/data/checks/aws/aws_dynamodb.json
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,30 @@
"remediation": "Um dieses Problem zu beheben, erstellen Sie eine neue Tabelle und geben Sie einen KMS CMK-Verschlüsselungsschlüssel an. Für eine bestehende Tabelle aktualisieren Sie die Konfiguration, um einen KMS CMK-Verschlüsselungsschlüssel mit der AWS Management Console einzuschließen."
}
}
},
{
"name": "continuous_backup_enabled",
"title": "Ensure AWS DynamoDB Instances Have Continuous Backup Enabled",
"result_kinds": [ "aws_dynamodb_table" ],
"categories": [ "security", "compliance" ],
"risk": "Not having continuous backups enabled for AWS DynamoDB instances increases the risk of data loss in the event of operational failures or other disruptions. Continuous backups are essential for maintaining data durability and availability, ensuring that data is consistently backed up and can be restored to a recent state, independent of point-in-time recovery capabilities.",
"severity": "critical",
"detect": {
"fix": "is(aws_dynamodb_table) and dynamodb_continuous_backup.status!=ENABLED"
},
"remediation": {
"text": "To mitigate the risk of data loss, enable continuous backups for all DynamoDB tables. This feature can be managed through the AWS Management Console or programmatically via the AWS CLI. ",
"url": "https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/BackupRestore.html",
"complexity": "low"
},
"url": "https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/BackupRestore.html",
"localizations": {
"de": {
"title": "Sicherstellen, dass bei AWS DynamoDB-Instanzen kontinuierliche Backups aktiviert sind",
"risk": "Das Fehlen kontinuierlicher Backups bei AWS DynamoDB-Instanzen erhöht das Risiko eines Datenverlusts bei Betriebsstörungen oder anderen Unterbrechungen. Kontinuierliche Backups sind wesentlich für die Aufrechterhaltung der Datendauerhaftigkeit und -verfügbarkeit. Sie gewährleisten, dass Daten regelmäßig gesichert werden und auf einen aktuellen Zustand wiederhergestellt werden können, unabhängig von der Verfügbarkeit der Wiederherstellung zu einem bestimmten Zeitpunkt.",
"remediation": "Um das Risiko eines Datenverlusts zu minimieren, aktivieren Sie kontinuierliche Backups für alle DynamoDB-Tabellen. Diese Funktion kann über die AWS Management Console oder programmatisch über die AWS CLI verwaltet werden."
}
}
}
]
}
29 changes: 29 additions & 0 deletions fixcompliance/data/checks/aws/aws_ec2.json
Original file line number Diff line number Diff line change
Expand Up @@ -1175,6 +1175,35 @@
}
}
},
{
"name": "launch_configuration_has_public_ip",
"title": "Ensure EC2 Auto-Scaling Launch Configurations Do Not Assign Public IPs",
"result_kinds": [
"aws_ec2_launch_template"
],
"categories": [
"security",
"compliance"
],
"risk": "Assigning public IP addresses to EC2 instances in Auto-Scaling groups increases the risk of unintended exposure to the internet, making them potential targets for cyber-attacks. This configuration can lead to vulnerabilities if the security groups and network access controls are not strictly managed.",
"severity": "medium",
"detect": {
"fix": "is(aws_ec2_launch_template) and launch_template_data.network_interfaces[*].associate_public_ip_address==True"
},
"remediation": {
"text": "To mitigate this risk, ensure that the Auto Scaling launch configurations are set with --no-associate-public-ip-address when created. For existing configurations, create a new launch configuration with this setting and update the Auto Scaling group to use the new configuration. This change will prevent instances from being directly accessible from the internet, reducing the attack surface.",
"url": "https://docs.aws.amazon.com/autoscaling/ec2/userguide/LaunchConfiguration.html",
"complexity": "low"
},
"url": "https://docs.aws.amazon.com/autoscaling/ec2/userguide/what-is-amazon-ec2-auto-scaling.html",
"localizations": {
"de": {
"title": "Stellen Sie sicher, dass EC2 Auto-Scaling Launch-Konfigurationen keine öffentlichen IPs zuweisen",
"risk": "Das Zuweisen öffentlicher IP-Adressen zu EC2-Instanzen in Auto-Scaling-Gruppen erhöht das Risiko einer unbeabsichtigten Exposition gegenüber dem Internet und macht sie zu potenziellen Zielen für Cyberangriffe. Diese Konfiguration kann zu Schwachstellen führen, wenn die Sicherheitsgruppen und Netzwerkzugangskontrollen nicht streng verwaltet werden.",
"remediation": "Um dieses Risiko zu mindern, stellen Sie sicher, dass die Launch-Konfigurationen des Auto-Scalings mit --no-associate-public-ip-address erstellt werden. Für bestehende Konfigurationen erstellen Sie eine neue Launch-Konfiguration mit dieser Einstellung und aktualisieren Sie die Auto-Scaling-Gruppe, um die neue Konfiguration zu verwenden. Diese Änderung verhindert, dass Instanzen direkt aus dem Internet zugänglich sind und reduziert die Angriffsfläche."
}
}
},
{
"name": "no_secrets_in_launch_template_user_data",
"title": "Ensure There Are No Secrets in EC2 Launch Template User Data",
Expand Down
6 changes: 3 additions & 3 deletions fixcompliance/data/checks/aws/aws_ecr.json
Original file line number Diff line number Diff line change
Expand Up @@ -25,9 +25,9 @@
"url": "https://docs.aws.amazon.com/AmazonECR/latest/userguide/image-scanning.html",
"localizations": {
"de": {
"title": "Stellen Sie sicher, dass die ECR-Bildscan beim Pushen aktiviert ist",
"risk": "Ohne die Aktivierung des ECR-Bildscans beim Pushen können Software-Schwachstellen in Container-Bildern unentdeckt bleiben. Dadurch steigt das Risiko potenzieller Sicherheitsvorfälle. Der ECR-Bildscan liefert eine Liste von Scan-Ergebnissen, die auf der Common Vulnerabilities and Exposures (CVEs) Datenbank des Open-Source-Projekts Clair basieren.",
"remediation": "Um dieses Problem zu beheben, aktivieren Sie den ECR-Bildscan und überprüfen Sie die Scan-Ergebnisse, um Informationen zur Sicherheit der bereitgestellten Container-Bilder zu erhalten."
"title": "Stellen Sie sicher, dass ECR-Imagescan beim Pushen aktiviert ist",
"risk": "Ohne die Aktivierung des ECR-Imagescans beim Pushen können Software-Schwachstellen in Container-Images unentdeckt bleiben. Dadurch steigt das Risiko potenzieller Sicherheitsvorfälle. Der ECR-Imagescan liefert eine Liste von Scan-Ergebnissen, die auf der Common Vulnerabilities and Exposures (CVEs) Datenbank des Open-Source-Projekts Clair basieren.",
"remediation": "Um dieses Problem zu beheben, aktivieren Sie den ECR-Imagescan und überprüfen Sie die Scan-Ergebnisse, um Informationen zur Sicherheit der bereitgestellten Container-Images zu erhalten."
}
}
},
Expand Down
24 changes: 24 additions & 0 deletions fixcompliance/data/checks/aws/aws_eks.json
Original file line number Diff line number Diff line change
Expand Up @@ -87,6 +87,30 @@
"remediation": "Erstellen Sie einen Customer Master Key (CMK) im AWS Key Management Service (KMS). Geben Sie dann beim Erstellen eines neuen Amazon EKS-Clusters den Amazon Resource Name (ARN) dieses CMKs an."
}
}
},
{
"name": "cluster_uses_a_supported_k8s_version",
"title": "Ensure EKS Clusters Use Supported Kubernetes Versions",
"result_kinds": [ "aws_eks_cluster" ],
"categories": [ "security", "compliance" ],
"risk": "Using unsupported Kubernetes versions in EKS clusters exposes your applications to potential security vulnerabilities, missed bug fixes, and compatibility issues with AWS services. Unsupported versions do not receive security patches or updates, increasing the risk of cyber-attacks and system failures.",
"severity": "medium",
"detect": {
"fix": "is(aws_eks_cluster) and version in [\"1.26\", \"1.25\", \"1.24\", \"1.23\", \"1.22\", \"1.21\", \"1.20\", \"1.19\", \"1.18\", \"1.17\", \"1.16\", \"1.15\", \"1.14\", \"1.13\", \"1.12\", \"1.11\", \"1.10\"]"
},
"remediation": {
"text": "To mitigate this risk, regularly update your EKS clusters to a version of Kubernetes that is officially supported by AWS. Use the AWS Management Console or the AWS CLI to check and upgrade your cluster versions. Follow AWS best practices for updating Kubernetes versions to minimize downtime and ensure application stability.",
"url": "https://docs.aws.amazon.com/eks/latest/userguide/update-cluster.html",
"complexity": "medium"
},
"url": "https://docs.aws.amazon.com/eks/latest/userguide/kubernetes-versions.html",
"localizations": {
"de": {
"title": "Stellen Sie sicher, dass EKS-Cluster unterstützte Kubernetes-Versionen verwenden",
"risk": "Die Verwendung nicht unterstützter Kubernetes-Versionen in EKS-Clustern setzt Ihre Anwendungen potenziellen Sicherheitsrisiken, ausbleibenden Fehlerkorrekturen und Kompatibilitätsproblemen mit AWS-Diensten aus. Nicht unterstützte Versionen erhalten keine Sicherheitspatches oder Updates, was das Risiko von Cyberangriffen und Systemausfällen erhöht.",
"remediation": "Um dieses Risiko zu mindern, aktualisieren Sie Ihre EKS-Cluster regelmäßig auf eine von AWS offiziell unterstützte Kubernetes-Version. Verwenden Sie die AWS Management Console oder die AWS CLI, um Ihre Cluster-Versionen zu überprüfen und zu aktualisieren. Befolgen Sie die bewährten Verfahren von AWS für die Aktualisierung von Kubernetes-Versionen, um Ausfallzeiten zu minimieren und die Stabilität der Anwendung zu gewährleisten."
}
}
}
]
}
30 changes: 30 additions & 0 deletions fixcompliance/data/checks/aws/aws_elasticache.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
{
"provider": "aws",
"service": "elasticache",
"checks": [
{
"name": "encryption_at_rest_enabled",
"title": "Ensure AWS ElastiCache Clusters Have Encryption at Rest Enabled",
"result_kinds": ["aws_elasticache_cache_cluster"],
"categories": ["security", "compliance"],
"risk": "Failing to enable encryption at rest for AWS ElastiCache clusters can lead to potential exposure of sensitive data stored within the caching layer. Unencrypted data at rest is vulnerable to unauthorized access, especially in scenarios where the underlying storage infrastructure is compromised.",
"severity": "medium",
"detect": {
"fix": "is(aws_elasticache_cache_cluster) and cluster_at_rest_encryption_enabled==false"
},
"remediation": {
"text": "Enable encryption at rest for all new and existing AWS ElastiCache clusters. This can be achieved through the AWS Management Console, AWS CLI, or via AWS CloudFormation templates. For existing clusters that do not support enabling encryption post-creation, you will need to create a new cluster with encryption at rest enabled and migrate your data securely.",
"url": "https://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/encryption-at-rest.html",
"complexity": "medium"
},
"url": "https://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/redis-security.html",
"localizations": {
"de": {
"title": "Stellen Sie sicher, dass die Verschlüsselung der Daten bei Nichtgebrauch für AWS ElastiCache-Cluster aktiviert ist",
"risk": "Das Nichtaktivieren der Verschlüsselung der Daten bei Nichtgebrauch für AWS ElastiCache-Cluster kann dazu führen, dass sensible Daten, die innerhalb der Caching-Schicht gespeichert sind, potenziell freigelegt werden. Nicht verschlüsselte Daten bei Nichtgebrauch sind anfällig für unbefugten Zugriff, insbesondere in Szenarien, in denen die zugrunde liegende Speicherinfrastruktur kompromittiert ist.",
"remediation": "Um dieses Risiko zu beheben, aktivieren Sie die Verschlüsselung der Daten bei Nichtgebrauch für alle neuen und bestehenden AWS ElastiCache-Cluster. Dies kann über die AWS Management Console, die AWS CLI oder über AWS CloudFormation-Vorlagen erreicht werden. Für bestehende Cluster, bei denen das Aktivieren der Verschlüsselung nach der Erstellung nicht unterstützt wird, müssen Sie einen neuen Cluster mit aktivierter Verschlüsselung der Daten bei Nichtgebrauch erstellen und Ihre Daten sicher migrieren."
}
}
}
]
}
Loading

0 comments on commit 48592f8

Please sign in to comment.