容器运行时风险
攻击概述
基于集成框架开发的LLMs应用程序,通常结合K8S集群以及容器环境实现各个Agents运行环境的搭建与隔离,攻击者通过精心构造提示词,间接通过模型的Agent执行针对容器运行时环境的攻击行为,实现对容器环境下容器逃逸、容器提权等攻击。
攻击案例
| 案例 |
描述 |
| 案例一 |
Wiz通过上传恶意模型到Huggingface Face获取模型容器运行环境权限。 |
攻击风险
- 突破容器隔离:攻击者通过利用容器的漏洞或者配置缺陷,尝试突破容器的隔离环境,获取宿主机的访问权限。
- 镜像内容篡改:攻击者可能会篡改模型镜像内容,植入恶意代码。
- 数据泄露:攻击者可能获取敏感数据,如宿主机上的文件系统信息。
- 服务中断:攻击者可能破坏宿主机上的服务,导致服务不可用。
- 横向移动:攻击者可能利用逃逸的容器作为跳板,进一步攻击内网中的其他系统。
- 持久性控制:攻击者可能在宿主机上安装后门,实现长期控制。
缓解措施
| 缓解方式 |
描述 |
| 定期审查 |
定期扫描容器镜像和依赖组件,确保没有安全漏洞。 |
| 资源限制和访问隔离 |
实施资源限制和隔离策略,防止单个容器消耗过多资源以及对于集群内其他机器的影响。 |
| 最小权限原则 |
避免使用--privileged等模式运行特权容器,仅授予容器所需的最小权限集。 |
| 输入/输出验证 |
确保模型输入输出侧提示词与结果的安全性,针对可疑的攻击行为实施拦截 |
参考