容器不安全配置一般可以分为两种情况:赋予了容器危险权限、容器挂载了危险目录。 危险权限包括:privileged 权限、Capabilities 权限(如 cap_sys_admin,cap_sys_module,cap_sys_dac_search 等);如果容器被赋予了以上的危险权限,将导致限制容器的安全机制失效。 危险目录包括:/、/docker.sock、/procfs、/root、/etc、/...
mount命令是一个系统调用(syscall)命令,系统调用号为165,执行syscall需要用户具备CAP_SYS_ADMIN的Capability,如果在宿主机启动时添加了--cap-add SYS_ADMIN参数,那root用户就能在容器内部就能执行mount挂载cgroup,docker默认情况下不会开启SYS_ADMIN Capability 漏洞利用 漏洞利用的第一步是在容器里创建一个临时目录/tmp/...
CAP_NET_BIND_SERVICE:绑定小于1024的特权端口,但该功能在重新映射用户后可能会失效。 CAP_NET_RAW:使用RAW或PACKET类型的套接字,并可绑定任何地址进行透明代理。 CAP_SYS_ADMIN:支持内核上的很大一部分管理功能。 CAP_SYS_BOOT:重启系统 CAP_SYS_CHROOT:使用chroot()进行根文件系统切换,并能够调用setns()修改Moun...
例如,在 Docker 容器内运行 Docker 守护进程就是特权容器的一个例子,它不一定安全。为了避免这种情况,建议避免为容器赋予 CAP_SYS_ADMIN 能力,因为它占所有内核漏洞的 25% 以上。 此外,避免赋予容器完全权限和赋予容器的主机文件系统权限也很重要。这意味着可以利用容器替换恶意二进制文件,从而入侵整个主机。 为防止...
通过CAP_SYS_ADMIN权限逃逸: 攻击者可以利用CAP_SYS_ADMIN权限执行一些系统级别的操作,如挂载文件系统、修改系统配置等,从而实现逃逸。 示例代码(添加CAP_SYS_ADMIN权限): yaml apiVersion: v1 kind: Pod metadata: name: adminpod namespace: default spec: containers: - name: ubuntu image: ubuntu imagePull...
AllowPrivilegeEscalation:控制进程是否可以获得超出其父进程的特权。 此布尔值直接控制是否为容器进程设置no_new_privs标志。 当容器以特权模式运行或者具有CAP_SYS_ADMIN权能时,AllowPrivilegeEscalation 总是为 true。 readOnlyRootFilesystem:以只读方式加载容器的根文件系统。
危险权限指的是 privileged 权限(特权容器)和危险的Capabilities 权限(如 cap_sys_admin,cap_sys_module,cap_sys_dac_search 等),这些都可以在容器启动时通过启动参数设置。如前文所述,容器本质上是一个受限的进程,除了通过 Namespace 和 Cgroup限制了命名空间和资源外,还有 Capabilities、Apparmor、Seccomp 等安全机...
AllowPrivilegeEscalation:控制进程是否可以获得超出其父进程的特权。 此布尔值直接控制是否为容器进程设置no_new_privs标志。 当容器以特权模式运行或者具有 CAP_SYS_ADMIN 权能时,AllowPrivilegeEscalation 总是为 true。 readOnlyRootFilesystem:以只读方式加载容器的根文件系统。
AllowPrivilegeEscalation:控制是否允许特权升级,及进程是否能够获取比父进程更多的特权;运行于特权模式或具有CAP_SYS_ADMIN能力的容器默认允许特权升级。 1. 2. 3. 4. 5. 6. 7. 8. 9. AI检测代码解析 这些安全上下文相关的特性多数嵌套定义在pod或容器的securityContext字段中,而且有些特性对应的嵌套字段还不止...
--cap-add SYS_ADMIN \ -e PILOT_LOG_PREFIX=glinux \ -e LOGGING_OUTPUT=logstash \ -e LOGSTASH_HOST=logstash..glinux.top \ -e LOGSTASH_PORT=5063 \ --restart=always \ /acs/log-pilot:0.9.5-filebeat 1. 2. 3. 4. 5. 6.