Kubernetes 使用 NodePort 类型暴露的服务

编辑

Kubernetes 使用 NodePort 类型暴露的服务

编辑

此规则检测尝试创建或修改类型为 NodePort 的服务。NodePort 服务允许用户将一组标记的 Pod 外部暴露到 Internet。这会在集群中每个包含该服务 Pod 的工作节点上创建一个开放端口。当在该开放端口上接收到外部流量时,它会将流量定向到表示它的特定 Pod。恶意用户可以将服务配置为 NodePort 类型,以便拦截来自其他 Pod 或节点的流量,从而绕过为集群内负载均衡器配置的防火墙和其他网络安全措施。这会在集群和外部世界之间创建直接通信方法,该方法可用于更多恶意行为,并且肯定会扩大集群的攻击面。

规则类型: 查询

规则索引:

  • logs-kubernetes.*

严重性: 中

风险评分: 47

运行频率: 5 分钟

搜索索引时间范围: 无 ( 日期数学格式,另请参阅 额外回溯时间)

每次执行的最大警报数: 100

参考资料:

标签:

  • 数据源: Kubernetes
  • 战术: 执行
  • 战术: 持久化

版本: 203

规则作者:

  • Elastic

规则许可: Elastic License v2

调查指南

编辑

设置

编辑

需要启用审计日志的 Kubernetes Fleet 集成或类似结构的数据才能与此规则兼容。

规则查询

编辑
event.dataset : "kubernetes.audit_logs"
  and kubernetes.audit.annotations.authorization_k8s_io/decision:"allow"
  and kubernetes.audit.objectRef.resource:"services"
  and kubernetes.audit.verb:("create" or "update" or "patch")
  and kubernetes.audit.requestObject.spec.type:"NodePort"

框架: MITRE ATT&CKTM