Alauda 容器安全提供了一组默认策略,帮助您防止高风险部署并应对 Kubernetes 环境中的运行时事件。这些策略旨在识别安全问题并在您的集群中强制执行最佳实践。
默认策略涵盖整个容器生命周期:构建、部署和运行时。您可以在 Alauda 容器安全门户中查看、克隆和编辑这些策略。默认策略无法被删除或直接修改。
生命周期阶段 | 策略名称 | 描述 | 状态 |
---|---|---|---|
构建/部署 | Apache Struts: CVE-2017-5638 | 针对具有 CVE-2017-5638 Apache Struts 漏洞的镜像发出警报。 | 启用 |
构建/部署 | Log4Shell: log4j 远程代码执行 | 针对具有 CVE-2021-44228 和 CVE-2021-45046 漏洞的镜像发出警报。 | 启用 |
构建/部署 | Spring4Shell 和 Spring Cloud Function | 针对具有 CVE-2022-22965(Spring MVC)或 CVE-2022-22963(Spring Cloud)的镜像发出警报。 | 启用 |
运行时 | 在特权容器中执行 iptables | 当特权 Pod 运行 iptables 时发出警报。 | 启用 |
生命周期阶段 | 策略名称 | 描述 | 状态 |
---|---|---|---|
构建/部署 | 可修复 CVSS ≥ 7 | 针对 CVSS ≥ 7 的可修复漏洞发出警报。 | 禁用 |
构建/部署 | 可修复严重性至少为重要 | 针对评级为重要或更高的可修复漏洞发出警报。 | 启用 |
构建/部署 | 快速重置:HTTP/2 DoS 漏洞 | 针对易受 HTTP/2 快速重置 DoS 攻击的镜像发出警报。 | 禁用 |
构建/部署 | 镜像中暴露的安全外壳(ssh)端口 | 当端口 22 在镜像中暴露时发出警报。 | 启用 |
部署 | 紧急部署注释 | 针对使用紧急注释绕过入场检查的部署发出警报。 | 启用 |
部署 | 环境变量包含秘密 | 当环境变量包含 'SECRET' 时发出警报。 | 启用 |
部署 | 可修复 CVSS ≥ 6 和特权 | 针对具有可修复 CVSS ≥ 6 漏洞的特权部署发出警报。 | 禁用 |
部署 | 具有重要和严重可修复 CVE 的特权容器 | 针对具有重要/严重可修复漏洞的特权容器发出警报。 | 启用 |
部署 | 作为环境变量挂载的秘密 | 当秘密作为环境变量挂载时发出警报。 | 禁用 |
部署 | 暴露的安全外壳(ssh)端口 | 当端口 22 在部署中暴露时发出警报。 | 启用 |
运行时 | 加密货币挖掘进程执行 | 检测加密货币挖掘进程。 | 启用 |
运行时 | iptables 执行 | 检测容器中 iptables 的使用。 | 启用 |
运行时 | Kubernetes 操作:执行到 Pod | 针对通过 Kubernetes API 在容器中运行的 exec 命令发出警报。 | 启用 |
运行时 | Linux 组添加执行 | 检测 groupadd/addgroup 的使用。 | 启用 |
运行时 | Linux 用户添加执行 | 检测 useradd/adduser 的使用。 | 启用 |
运行时 | 登录二进制文件 | 检测登录尝试。 | 禁用 |
运行时 | 网络管理执行 | 检测网络配置命令。 | 启用 |
运行时 | nmap 执行 | 针对 nmap 进程执行发出警报。 | 启用 |
运行时 | OpenShift:Kubeadmin 秘密被访问 | 针对 kubeadmin 秘密访问发出警报。 | 启用 |
运行时 | 密码二进制文件 | 检测密码更改尝试。 | 禁用 |
运行时 | 针对集群 Kubelet 端点的进程 | 检测对 kubelet/heapster 端点的误用。 | 启用 |
运行时 | 针对集群 Kubernetes Docker 统计端点的进程 | 检测对 docker stats 端点的误用。 | 启用 |
运行时 | 针对 Kubernetes 服务端点的进程 | 检测对 Kubernetes 服务 API 端点的误用。 | 启用 |
运行时 | UID 为 0 的进程 | 针对以 UID 0 运行的进程发出警报。 | 禁用 |
运行时 | 安全外壳服务器(sshd)执行 | 检测容器中 SSH 守护进程的执行。 | 启用 |
运行时 | SetUID 进程 | 检测 setuid 二进制文件的使用。 | 禁用 |
运行时 | Shadow 文件修改 | 检测 shadow 文件的修改。 | 禁用 |
运行时 | Java 应用程序生成的 Shell | 检测作为 Java 应用程序子进程生成的 shell。 | 启用 |
运行时 | 未经授权的网络流 | 针对异常网络流发出警报。 | 启用 |
运行时 | 未经授权的进程执行 | 针对在锁定基线中未经授权的进程执行发出警报。 | 启用 |
生命周期阶段 | 策略名称 | 描述 | 状态 |
---|---|---|---|
构建 | Docker CIS 4.4:确保镜像已扫描并重建 | 如果镜像未扫描并重建安全补丁,则发出警报。 | 禁用 |
部署 | 30 天扫描年龄 | 如果部署在 30 天内未扫描,则发出警报。 | 启用 |
部署 | 添加 CAP_SYS_ADMIN 能力 | 如果容器以 CAP_SYS_ADMIN 提升权限,则发出警报。 | 启用 |
部署 | 使用读写根文件系统的容器 | 如果容器具有读写根文件系统,则发出警报。 | 禁用 |
部署 | 允许特权提升的容器 | 如果容器允许特权提升,则发出警报。 | 启用 |
部署 | 部署应至少具有一个 Ingress 网络策略 | 如果部署缺少 Ingress 网络策略,则发出警报。 | 禁用 |
部署 | 具有外部暴露端点的部署 | 如果部署具有外部暴露的服务,则发出警报。 | 禁用 |
部署 | Docker CIS 5.1:启用 AppArmor 配置文件 | 如果未启用 AppArmor,则发出警报。 | 启用 |
部署 | Docker CIS 5.15:主机的进程命名空间未共享 | 如果主机的进程命名空间被共享,则发出警报。 | 启用 |
部署 | Docker CIS 5.16:主机的 IPC 命名空间未共享 | 如果主机的 IPC 命名空间被共享,则发出警报。 | 启用 |
部署 | Docker CIS 5.19:未启用挂载传播模式 | 如果未启用挂载传播模式,则发出警报。 | 启用 |
部署 | Docker CIS 5.21:默认 seccomp 配置文件未禁用 | 如果 seccomp 配置文件被禁用,则发出警报。 | 禁用 |
部署 | Docker CIS 5.7:在容器内映射特权端口 | 如果特权端口(<1024)被映射,则发出警报。 | 启用 |
部署 | Docker CIS 5.9/5.20:主机的网络命名空间未共享 | 如果主机的网络命名空间被共享,则发出警报。 | 启用 |
部署 | 未扫描的镜像 | 如果部署中的镜像未扫描,则发出警报。 | 禁用 |
运行时 | Kubernetes 操作:端口转发到 Pod | 针对通过 Kubernetes API 的端口转发请求发出警报。 | 启用 |
部署 | 挂载容器运行时套接字 | 如果挂载了容器运行时套接字,则发出警报。 | 启用 |
部署 | 挂载敏感主机目录 | 如果挂载了敏感主机目录,则发出警报。 | 启用 |
部署 | 未指定资源请求或限制 | 如果容器缺少资源请求/限制,则发出警报。 | 启用 |
部署 | Pod 服务账户令牌自动挂载 | 如果默认服务账户令牌不必要地挂载,则发出警报。 | 启用 |
部署 | 特权容器 | 如果容器以特权模式运行,则发出警报。 | 启用 |
运行时 | crontab 执行 | 检测 crontab 的使用。 | 启用 |
运行时 | 检测到 Netcat 执行 | 检测 netcat 的使用。 | 启用 |
运行时 | OpenShift:中央管理员秘密被访问 | 针对访问中央管理员秘密发出警报。 | 启用 |
运行时 | OpenShift:被冒充用户访问的秘密 | 针对被冒充用户访问秘密发出警报。 | 启用 |
运行时 | 远程文件复制二进制执行 | 针对远程文件复制工具的执行发出警报。 | 启用 |
生命周期阶段 | 策略名称 | 描述 | 状态 |
---|---|---|---|
构建/部署 | 90 天镜像年龄 | 如果部署在 90 天内未更新,则发出警报。 | 启用 |
构建/部署 | 使用 ADD 命令而不是 COPY | 如果在 Dockerfile 中使用了 ADD 命令,则发出警报。 | 禁用 |
构建/部署 | 镜像中的 Alpine Linux 包管理器(apk) | 如果镜像中存在 apk,则发出警报。 | 启用 |
构建/部署 | 镜像中的 Curl | 如果镜像中存在 curl,则发出警报。 | 禁用 |
构建/部署 | Docker CIS 4.1:为容器创建用户 | 确保容器以非 root 用户运行。 | 启用 |
构建/部署 | Docker CIS 4.7:更新指令发出警报 | 确保更新指令不单独使用在 Dockerfile 中。 | 启用 |
构建/部署 | CMD 中指定的不安全内容 | 如果在命令中使用了 'insecure',则发出警报。 | 启用 |
构建/部署 | 最新标签 | 如果镜像使用 'latest' 标签,则发出警报。 | 启用 |
构建/部署 | 镜像中的 Red Hat 包管理器 | 如果存在 Red Hat、Fedora 或 CentOS 包管理器,则发出警报。 | 启用 |
构建/部署 | 缺少所需镜像标签 | 如果镜像缺少所需标签,则发出警报。 | 禁用 |
构建/部署 | Ubuntu 包管理器执行 | 检测 Ubuntu 包管理器的使用。 | 启用 |
构建/部署 | 镜像中的 Ubuntu 包管理器 | 如果镜像中存在 Debian/Ubuntu 包管理器,则发出警报。 | 启用 |
构建/部署 | 镜像中的 Wget | 如果镜像中存在 wget,则发出警报。 | 禁用 |
部署 | 丢弃所有能力 | 如果部署未丢弃所有能力,则发出警报。 | 禁用 |
部署 | 不当使用编排器秘密卷 | 如果 Dockerfile 使用 'VOLUME /run/secrets',则发出警报。 | 启用 |
部署 | 部署的 Kubernetes 仪表板 | 如果检测到 Kubernetes 仪表板服务,则发出警报。 | 启用 |
部署 | 缺少所需注释:电子邮件 | 如果缺少 'email' 注释,则发出警报。 | 禁用 |
部署 | 缺少所需注释:所有者/团队 | 如果缺少 'owner' 或 'team' 注释,则发出警报。 | 禁用 |
部署 | 缺少所需标签:所有者/团队 | 如果缺少 'owner' 或 'team' 标签,则发出警报。 | 禁用 |
运行时 | Alpine Linux 包管理器执行 | 如果在运行时运行 apk,则发出警报。 | 启用 |
运行时 | chkconfig 执行 | 检测 chkconfig 的使用。 | 启用 |
运行时 | 编译工具执行 | 如果在运行时运行编译二进制文件,则发出警报。 | 启用 |
运行时 | Red Hat 包管理器执行 | 如果在运行时运行 Red Hat、Fedora 或 CentOS 包管理器,则发出警报。 | 启用 |
运行时 | Shell 管理 | 针对 shell 添加/删除命令发出警报。 | 禁用 |
运行时 | systemctl 执行 | 检测 systemctl 的使用。 | 启用 |
运行时 | systemd 执行 | 检测 systemd 的使用。 | 启用 |
注意: 默认策略不支持政策即代码功能。