漏洞描述
Ensure that Amazon EKS node groups are configured with appropriate remote access settings to maintain security and enable necessary administrative access.
id: eks-node-group-remote-access
info:
name: EKS Node Group Remote Access Configuration
author: princechaddha
severity: high
description: |
Ensure that Amazon EKS node groups are configured with appropriate remote access settings to maintain security and enable necessary administrative access.
impact: |
Improper remote access configuration in EKS node groups can lead to security vulnerabilities or hinder necessary administrative access, potentially affecting cluster management and troubleshooting capabilities.
remediation: |
Configure remote access settings for EKS node groups by specifying appropriate SSH key pairs and source security groups to enable secure administrative access while maintaining security best practices.
reference:
- https://www.trendmicro.com/cloudoneconformity/knowledge-base/aws/EKS/eks-node-group-remote-access.html
- https://docs.aws.amazon.com/eks/latest/userguide/launch-templates.html
tags: cloud,devops,aws,amazon,eks,aws-cloud-config
variables:
region: "us-east-1"
flow: |
code(1)
for(let clusterName of iterate(template.clusters)){
set("cluster", clusterName)
code(2)
for(let nodegroupName of iterate(template.nodegroups)){
set("nodegroup", nodegroupName)
code(3)
}
}
self-contained: true
code:
- engine:
- sh
- bash
source: |
aws eks list-clusters --region $region --query 'clusters[]' --output json
extractors:
- type: json
name: clusters
internal: true
json:
- '.[]'
- engine:
- sh
- bash
source: |
aws eks list-nodegroups --cluster-name $cluster --region $region --query 'nodegroups[]' --output json
extractors:
- type: json
name: nodegroups
internal: true
json:
- '.[]'
- engine:
- sh
- bash
source: |
aws eks describe-nodegroup --cluster-name $cluster --nodegroup-name $nodegroup --region $region --query 'nodegroup.remoteAccess' --output json
matchers-condition: and
matchers:
- type: regex
regex:
- '.*'
- type: word
words:
- "null"
negative: true
extractors:
- type: dsl
dsl:
- '"EKS node group " + nodegroup + " in cluster " + cluster + " does not have remote access configured"'
# digest: 4a0a0047304502203d6f07c68d09531799f475c104159760b6ff871908abe6318495c472fcf12e75022100d887a58f8de4bf9665e832ed1af966ae0c186a2afe1f1749c1912bba4b308266:922c64590222798bb761d5b6d8e72950