从 DeepSeek 敏感信息泄露谈可观测系统的数据安全预防

作者:孙玉梅

数据泄露分析

Wiz Research 发现了一个属于 DeepSeek 的公开可访问的 ClickHouse 数据库,该数据库允许完全访问并控制数据库操作,包括访问内部数据。泄露的信息包括超过一百万条日志流,其中包含聊天记录、密钥、后端详情和其他高度敏感的信息。Wiz Research 团队迅速且负责任地向 DeepSeek 报告了这一问题,DeepSeek 随即快速修复了此漏洞。--- Wiz Research [ 1]

在 DeepSeek 引发广泛关注后,Wiz Research 迅速发布了一份安全漏洞报告。报告表明,一个与 DeepSeek 相连的可公开访问的 ClickHouse 数据库,未采取身份验证机制,暴露了敏感数据。其中,log_stream 表包含大量高度敏感的日志信息:

  • timestamp:记录自 2025 年 1 月 6 日起的日志时间戳。
  • span_name:涉及 DeepSeek 内部各种 API 端点的引用。
  • string.values:以明文形式存储的日志信息,包括聊天记录、API 密钥、后端详细信息和操作元数据。
  • _service:记录 DeepSeek 服务的日志信息。
  • _source:日志请求来源,包含聊天记录、API 密钥、目录结构和聊天机器人元数据日志。

分析报告揭示,DeepSeek 在 ClickHouse 中记录了 API 接口访问日志、后端服务日志、操作日志以及密钥等多类敏感数据。然而,由于管理员未启用身份验证机制,这些数据面临着严重的泄露风险。比如 API 密钥的泄露,可能使攻击者获得全局访问权限,从而通过 API 接口窃取敏感信息。这一事件暴露出 AI 应用程序即时安全风险的根源------不仅来自于应用程序本身,还包括其底层的基础设施和支持的工具平台。

AI 数据安全反思

在 AI 技术飞速前进的浪潮中,数据安全问题成为了每一家 AI 企业无法回避的重大挑战。这次 DeepSeek 事件敲响了整个行业在数据保护方面的警钟,AI 初创企业利用基础设施或工具平台开发、部署 AI 服务时应增强数据安全意识,并建立完善的数据安全可观测体系。首先,应实施严格的访问控制机制,以确保只有授权人员能够访问敏感数据;其次,要建立安全审计与可观测平台,实时监控数据访问以便及时识别潜在的安全隐患。

阿里云日志服务(SLS [ 2] )作为云原生可观测与分析平台,不仅提供一站式的数据采集、加工、查询与分析、可视化、告警等功能,还具备多层次的数据安全防护机制。这些措施包括数据采集脱敏、访问控制和日志审计等,旨在确保敏感数据在整个生命周期中的安全。下面我们简单介绍下 SLS 的数据安全防护。

数据安全防护实践

下图展示了一个简化的 AI 应用架构,其中 AI 模型通过 API 网关向外提供服务。用户的查询请求首先通过 API 网关进入 AI 模型的服务层。在服务层中,AI 能力平台托管着多个后端服务。请求在到达后端服务时,会首先经过身份鉴权流程。通过鉴权的请求将进行意图识别等分析处理,随后结果被返回给用户。在这个过程中,生成的服务日志和用户访问日志会被存储在数据层。同时,一个可观测平台实时监测访问数据,以确保系统的稳定性和安全性。

在简化架构中,可能导致数据安全风险点已用红色标识:

  • 访问控制:在数据访问阶段,如果用户访问身份权限管理不够严格,会导致数据查询权限的滥用,从而使个人数据的访问超出必要范围。
  • 数据存储:
    • 敏感数据:访问日志中可能包含用户请求的查询、令牌以及用户身份信息等敏感数据,这些信息若未妥善保护,将面临泄露风险。
    • 数据隔离:不同类别的业务日志和用户数据需实现数据隔离,否则存在数据合规风险。此外,若发生数据泄露,也会导致全量数据的暴露。
  • 可观测平台:AI 平台在正常访问流量之外,还可能遭受异常的攻击流量。如果可观测平台无法识别异常访问行为(例如攻击者利用泄露的 AK 请求大量数据,引发该 AK 外部查询请求激增),企业将无法及时发现并采取应对措施,从而增加数据泄露的风险。

SLS 是如何解决上述问题?下面我们从数据采集、数据查询、数据监控三个功能场景方面做下介绍:

  • 在将数据写入到 Logstore 时,通过配置脱敏插件,确保敏感数据在写入时即被脱敏,从而保护数据隐私。
  • 根据业务分类,为不同服务的日志使用独立的 Logstore、通过 StoreView 预置字段过滤项,并结合阿里云的访问控制对访问密钥(AK)进行精细化管理,从而严格限制不同 RAM 用户的 Logstore 以及字段查询,实现有效的数据隔离。
  • 利用 SLS 的报表和告警功能,对 AK 的访问流量、访问 IP 来源、访问路径、访问端口进行监控,以便及时识别和应对潜在的风险访问。

数据采集

接入层脱敏:阻断敏感数据落库

Logtail 脱敏插件 是在数据接入阶段对敏感信息进行保护的高效工具。通过在 Logtail 中配置脱敏插件,可以在数据被采集并传输到日志服务之前,对敏感字段进行自动识别和处理。此过程通常利用正则表达式匹配来查找敏感信息,并将其替换或隐藏为非敏感格式。这种方式可以灵活地根据不同的字段和格式进行定制化处理,确保数据在采集的初始阶段就得到了保护。对于复杂规则处理的场景,也可以通过配置 SPL(Streaming Processing Language) 解析语句对日志进行多层次的解析和脱敏处理。配置如下:

原始日志:

json 复制代码
{"chat_msg":"分析一下固体火箭助推器,可以包括其发明或发展,历史发展,历史意义等", "access_key":"L00I0t8peAl7nmt4aUujhDUO", "ip_address":"105.156.33.72", "account_name": "微笑的小羊","phone_number":"+86 230 345 2201"}

处理后的脱敏效果如下:

更多的接入端脱敏方案可参考:《云上数据安全保护:敏感日志扫描与脱敏实践详解

数据查询

查询权限精细化管控:避免"万能钥匙"

数据隔离

不同应用服务的日志可存储在不同地域的 Project 中,或存储在同一地域的不同 LogStore 中,并结合访问控制(RAM)来实施最小权限策略。通过 RAM,可以为不同用户配置细粒度的访问控制策略,建立针对性的 Logstore 资源分级访问控制制度,以有效保护数据安全。例如,研发工程师可能仅被授予访问应用业务日志的权限,而对于敏感的聊天记录,只有拥有较高权限的安全工程师才有权限查看。

AK受限访问

访问密钥(AK)的管理是数据安全的第一道防线。通过精细化的 AK 管控,可以确保每个密钥具有明确且有限的权限范围,避免"万能钥匙"的存在。具体措施包括为不同的应用服务和用户设定独立的 AK,定期轮换密钥,以及在使用过程中进行严格的权限审查。这将有效防止未经授权的访问和操作,确保数据在访问层面的安全性。

StoreView 字段集控制:防止"全量泄露"

日志服务 Project 的数据集(StoreView [ 3] )是基于 Logstore 创建的虚拟资源,旨在实现对不同 Logstore 中的日志进行统一查询和分析。通过在 StoreView 中设置联合查询字段,限制查询返回的字段范围,确保用户仅能访问实际所需的部分数据。这一机制不仅提升了查询效率,还显著增强了数据安全性。在发生数据泄露时,StoreView 能有效防止所有有效数据被一次性获取,从而降低敏感信息的不当访问和泄露风险。对于企业而言,这提供了一种在复杂数据环境中更为安全的查询解决方案。

数据监控

智能监控:实时监控异常拖库

如何快速识别日志库的异常流量?CloudLens for SLS [ 4] 为日志服务提供自监控解决方案。通过监控指标数据、详细日志、重要日志等多种自监控日志类型,CloudLens for SLS 能够实现对数据采集和读取过程的全面监控。CloudLens for SLS 自监控报表,提供 Project/Logstore 维度的写入、读取次数/流量数据统计,以及 Top 类 Project/Logstore 的读写流量分析,帮助用户实时跟踪服务运行状态。

操作趋势图展示了 Project/Logstore 的实时读写状况。当读取请求或查询请求的数量突然激增时,可以结合 SLS 的详细日志构建自定义报表进行进一步分析,以判断这些激增的查询请求是正常现象,还是表明存在潜在的安全风险。

自定义分析报表: 基于 SLS 服务日志,我们可以配置一个涵盖访问密钥(AK)和查询 IP 维度的查询请求分析报表。如下表所示,我们能够清晰地识别出外部网络中哪些 AK 和 IP 地址的查询请求量最大。这种数据分析不仅帮助我们了解请求来源和行为,还能帮助判断某些 AK 是否存在异常使用的迹象。

总结

以上我们探讨了 SLS 中增强数据安全的几种方式:权限精细化管控有效减少了潜在安全风险;接入层脱敏技术阻止敏感数据落库,提升了隐私保护;StoreView 字段集控制通过限制查询数据范围,降低数据泄露损害。智能监控系统提供实时监测,快速识别并阻断异常拖库行为,为企业提供了迅速响应和抵御威胁的能力。

相关链接:

1\] Wiz Research *[www.wiz.io/blog/wiz-re...](https://link.juejin.cn?target=https%3A%2F%2Fwww.wiz.io%2Fblog%2Fwiz-research-uncovers-exposed-deepseek-database-leak "https://www.wiz.io/blog/wiz-research-uncovers-exposed-deepseek-database-leak")* \[2\] SLS *[help.aliyun.com/zh/sls/](https://link.juejin.cn?target=https%3A%2F%2Fhelp.aliyun.com%2Fzh%2Fsls%2F "https://help.aliyun.com/zh/sls/")* \[3\] StoreView *[help.aliyun.com/zh/sls/user...](https://link.juejin.cn?target=https%3A%2F%2Fhelp.aliyun.com%2Fzh%2Fsls%2Fuser-guide%2Fdataset-storeview-overview "https://help.aliyun.com/zh/sls/user-guide/dataset-storeview-overview")* \[4\] CloudLens for SLS *[help.aliyun.com/zh/sls/user...](https://link.juejin.cn?target=https%3A%2F%2Fhelp.aliyun.com%2Fzh%2Fsls%2Fuser-guide%2Fcloudlens-for-sls%2F "https://help.aliyun.com/zh/sls/user-guide/cloudlens-for-sls/")*

相关推荐
huoren_no16 小时前
基于Netlify + Localtunnel 实现本地项目“无服务器”部署上线
云原生·serverless
Lyqfor7 小时前
虚拟机与Docker与K8s的比较
docker·云原生·容器·kubernetes
Aphelios3807 小时前
Java全栈面试宝典:内存模型与Spring设计模式深度解析
java·学习·spring·设计模式·云原生·面试
阿里云云原生7 小时前
免去繁琐的手动埋点,Gin 框架可观测性最佳实践
云原生
老马啸西风9 小时前
MOSN(Modular Open Smart Network)是一款主要使用 Go 语言开发的云原生网络代理平台
网络·后端·算法·阿里云·云原生·中间件·golang
登登登__9 小时前
微服务与分布式系统
微服务·云原生·架构
demonlg011210 小时前
Go 语言 net/http模块的完整方法详解及示例
开发语言·后端·http·云原生·golang
hxdcxy11 小时前
k8s中pod详细
云原生·容器·kubernetes
风轻扬77711 小时前
kubeadm部署k8s-1.32版本集群(1个master,1个worker)
云原生·容器·kubernetes
东风微鸣14 小时前
我的家庭实验室服务器集群硬件清单
docker·云原生·kubernetes·可观察性