场景:某省直机关政务服务平台于2026年8月17日凌晨遭遇定向攻击,攻击者绕过WAF与日志审计,直取公民隐私数据库。次日晨间,暗网出现售卖帖,数据疑似泄露。
攻击 / 事件时间线
初始访问
攻击者利用GitLab GraphQL未授权删除漏洞(CVE-2026-19478)对政务云开发测试环境发起探测。通过构造特制的GraphQL批量查询,绕过身份校验,枚举出内部项目列表。在其中一个遗留的API网关配置仓库中,发现硬编码的数据库连接串与云服务商密钥,此为后续深入提供了合法凭证。
GraphQLMapNucleiGitLab API
提权与横移
利用云服务商密钥,攻击者通过云控制台创建了新的具有高权限的RAM子账号,并配置了默认运维角色的信任策略。随后,其通过该子账号登录云数据库管理界面,利用PostgreSQL远程代码执行漏洞(CVE-2026-14669)在数据库实例上执行系统命令,成功获取了数据库宿主机的root shell,彻底瓦解了云隔离边界。
云厂商CLIPostgreSQL CVE-2026-14669 Exploitfscan
数据窃取
在获取数据库权限后,攻击者并未直接导出核心库,而是先通过SQL查询定位包含“公民”、“实名”等关键字的表结构。利用数据库自带的pg_dump与copy命令,将目标数据分段压缩并base64编码,伪装成正常的运维备份日志流量,分批次通过DNS隧道外传至攻击者控制的境外服务器,规避了传统流量审计设备的检测。
pg_dumpDNS隧道工具 (dnscat2)7z
痕迹清理
数据回传完毕后,攻击者利用数据库超级权限,清空了数据库的SQL审计日志与操作系统的history文件。同时,其删除并重建了云数据库的实例快照以覆盖原始记录,最后通过受控的跳板机撤销了临时RAM子账号的权限,试图将入侵痕迹彻底抹除,延迟安全团队发现时间。
云控制台truncatetimestomp
蓝队视角 · 发现与处置
次日晨间,SOC监测到政务外网域名解析请求异常频繁,指向一个未知的境外IP,且流量特征与DNS隧道高度吻合。值班人员立即通过防火墙封禁通信IP,并提取流量包进行深度分析。同时,数据库团队发现主库存在非业务时段的批量查询日志(虽被删除,但云平台侧留有快照)。蓝队通过比对云平台操作审计日志,逆向追踪到异常的RAM子账号创建记录,最终定位到攻击者利用的GitLab漏洞入口。应急响应小组随即隔离了受影响数据库实例,并启用异地灾备库恢复业务。
涉及关键技术 / 工具
云平台凭证滥用DNS隧道数据外传数据库系统命令执行(CVE-2026-14669)GitLab GraphQL API探测
防护经验总结
- 对云环境实行最小权限原则,定期审计RAM子账号与信任策略,禁用开发测试环境的硬编码密钥,强制使用密钥管理服务(KMS)动态获取。
- 在数据库与DNS出口网关处,建立基于行为基线的异常流量告警,重点监控非业务时段的DNS TXT记录查询与长域名解析请求。
- 启用云平台原生日志审计(如CloudTrail、操作审计)并设置异地存储,确保攻击者删除本地日志后仍能溯源,同时针对PostgreSQL等数据库禁用非必要的UDF与COPY TO PROGRAM功能。
#政务云#数据泄露#供应链攻击#云安全#CVE-2026-14669