场景:某大型互联网公司AI训练集群在8月28日凌晨遭定向入侵,攻击者利用GPU节点SSH弱口令突破边界,以内网横向移动方式窃取训练数据集与模型权重,直至数据外传才触发流量告警。
攻击 / 事件时间线
初始访问
攻击者通过扫描公网暴露的GPU管理节点,发现某台Ubuntu服务器SSH服务开启且支持密码登录。利用常见弱口令字典对root账号进行爆破,仅尝试27次即命中口令Admin@123。登录后立即执行history -c清除命令记录,并写入SSH公钥实现持久化,随后下载bash版本的SNOWLIGHT脚本建立C2通道。
hydraSNOWLIGHTSSH公钥后门
内网侦察
攻击者通过C2下发fscan对内网/24网段进行快速扫描,识别出3台NFS存储服务器和2台K8s管理节点。利用已控GPU节点作为跳板,尝试SSH横向登录,其中一台运维跳板机复用了相同口令Admin@123,成功获取该节点权限。继而读取/root/.kube/config文件,获得K8s集群管理员凭证。
fscanK8s kubeconfigSSH横向移动
权限提升与数据窃取
攻击者利用K8s管理员凭证,通过kubectl在AI训练命名空间创建恶意Pod,挂载宿主机/data目录。在Pod内置入tar命令批量打包训练数据集与模型权重文件(约2.3TB),经压缩后约480GB。随后通过C2分片回传至境外服务器,全程使用nohup后台执行,规避交互式会话检测。
kubectl恶意Podtar分片传输
蓝队视角 · 发现与处置
SOC在凌晨3:47收到流量分析设备告警,检测到GPU节点与境外IP之间存在异常大流量持续外传。值班人员立即登录EDR控制台核查该节点进程,发现bash脚本和Python反弹shell进程,判定为入侵。随即切断该节点外网通信,通过流量镜像回溯定位到SSH爆破来源IP,并利用K8s审计日志追踪到恶意Pod创建记录,最终在40分钟内完成全部恶意组件清除。
涉及关键技术 / 工具
SSH弱口令暴破SNOWLIGHT后渗透框架K8s恶意Pod逃逸EDR进程行为分析
防护经验总结
- 立即关闭GPU节点SSH密码登录,强制使用密钥认证并配置fail2ban限制尝试次数,同时对运维账号实施堡垒机统一托管。
- 对K8s集群启用RBAC最小权限策略,禁止默认ServiceAccount挂载宿主目录,并开启Kubernetes审计日志投递至SIEM平台。
- 部署出站流量白名单策略,对GPU节点仅允许访问内网NTP及镜像仓库,数据外传需经DLP审批流程并实时告警。
#AI安全#SSH爆破#K8s逃逸#数据窃取