大家好,我是个平平无奇的技术人。最近公司大模型项目搞得风生水起,我也跟着喝了点汤,每天不是在调Prompt就是在跑Fine-tuning,感觉自己走在了科技的最前沿。

直到那天……

我也没想到,AI 还能这样被扒光

一个风和日丽的下午,我正享受着摸鱼的快乐时光。老板突然从背后飘过,幽幽地问了一句:“小王,咱们的AI系统安全吗?

我心里咯噔一下,但脸上依旧保持着专业的微笑:“老板放心,当然安全啊,GPU服务器都在内网..."

"那你看下这个某家AI公司因为Ray框架配置不当,被黑客白嫖算力薅了7个月,不仅模型数据泄漏,连OpenAI的API密钥都被扒走了咱们排查AI暴露面问题" 老板甩出链接

表面稳如老狗"放心老板这就看看"

内心完了AI暴露

回想去年护网,我还在为传统IT资产的暴露面忙得焦头烂额传统的Web安全我懂,但AI这套新玩意儿,它的命门到底在哪?万一哪个环节暴露在公网上,我岂不是成了公司的罪人?

想到这,我后背一阵发凉,手里的奶茶瞬间不香了。

AI暴露究竟

我开始疯狂补课。传统web安全讲的暴露面,无非就是端口、域名、服务这些。但AI时代不一样了,暴露面的概念被重新定义

开发调试工具成了香饽饽

  • Jupyter Notebook:一个没密码的交互式终端,等于直接给root权限
  • TensorBoard:模型架构、超参数、训练数据统计...商业机密一览无余
  • MLflow、Wandb:模型版本管理界面,历史实验记录全暴露

模型服务接口防不胜防

  • /v1/chat/completions 这种标准接口,直接导致滥用算力
  • Gradio的 /api/predict 接口,直接调用模型
  • 各种自研API,输入验证经常是摆设

AI框架组件漏洞成堆

  • LangChain 有37个已知漏洞
  • Gradio 50个安全问题
  • Dify、ComfyUI这些新兴框架,更新快但安全跟不上

数据存储随便访问

  • 向量数据库暴露,训练语料被下载
  • 模型文件直接放对象存储,还没访问控制
  • 配置文件里硬编码API密钥,一抓一个准

MCP安全隐患

  1. 工具描述投毒:恶意MCP服务器在工具描述中嵌入隐藏指令,诱导AI执行恶意操作
  2. 供应链攻击:恶意MCP服务器伪装成可信工具,进行typosquatting攻击
  3. 权限过大:MCP工具获得不应有的系统访问权限

Agent的安全隐患

  1. 提示词注入:通过恶意输入控制Agent行为,绕过安全限制
  2. 越权操作:Agent执行超出预期的危险操作
  3. 目标绕过:被诱导执行与原始目标相悖的任务

我踩过的 3 个坑,每个都社死级别

理论补完了,我决定开始排查。不查不知道,一查吓一跳。自己犯了好多安全问题

坑1:Gradio的"一键共享"变成"一键送人头"

那是一个月黑风高的夜晚(其实是周二下午),我用Gradio给客户做了个文本生成的demo。为了方便客户测试,直接 demo.launch(share=True),心想着Gradio会自动生成一个临时链接,多省事啊。

结果第二天一早,运营妹子火急火燎找过来:"你是不是把咱们的GPT接口公开了?网上到处都是截图!"

我一查才发现,那个临时链接不仅24小时有效,还被人爆破分享到了各种AI交流群。更过分的是,有人直接拿我们的接口刷小说,一天消费了3000刀的tokens。

坑2:API密钥硬编码在代码里,早已传遍GitHub

为快速调试,曾在代码中直接写了API密钥。后来这份代码被传到GitHub,密钥随之泄露。随即token就被大量消耗幸好发现及时,否则后果不堪设想。

坑3:AI基础设施的"算力被薅"

为了压测模型性能,运维同学部署了一套triton推理服务集群,把HTTP端口全开在了公网。攻击者不仅可以通过API查询到我们正在使用的所有模型名称和版本,找到对应版本安全漏洞导致业务全部瘫痪。

更绝的是,有一天我发现GPU使用率居然100%满载运行,还以为是团队训练任务太多了。结果一查才知道,有人通过我们暴露的Jupyter直接在服务器上挖矿!更可恶的是,还顺便把我们的模型weights文件给下载走了。

每一个坑,都足以让我在全公司大会上做检讨。

手工排查?三天后我放弃了

经历过这些"血泪教训"后,我痛定思痛,决定做一次全面的AI基础设施安全排查。

第一天:端口扫描

用nmap扫了一下公司的IP段:

nmap -p 1-65535 -T4 target_ip

光是AI相关的常见端口就发现了一堆:

  • 7860(Gradio):发现3个实例,2个没密码
  • 8888(Jupyter):发现5个实例,全部未授权访问
  • 6006(TensorBoard):发现2个实例,训练日志全暴露
  • 8080(各种AI管理界面):发现4个实例,都是直接可以访问

第二天:指纹识别

手工挨个访问这些端口,想确认到底跑的什么服务。结果发现:

  • 有些改了默认端口,不好识别
  • Gradio的界面千篇一律,但版本不同漏洞也不同
  • 一些自研的AI服务,根本不知道有什么安全问题

光这个环节就花了我整整一天,还漏了不少。

第三天:漏洞检测

拿着收集到的信息开始查漏洞库,结果崩溃了:

  • CVE数据库里AI组件的漏洞少得可怜
  • 每个框架的安全公告分散在不同地方
  • 新出的组件压根找不到相关安全信息
  • 版本对应关系复杂,经常搞错

三天下来,效果差强人意,效率还极其低下。我意识到,手工排查这条路走不通。

白嫖了一个脚本,30 分钟扫完全网

柳暗花明又一村

正当我为这事头疼的时候,在某个安全群里看到有人分享了一个GitHub项目:AI-Infra-Guard。说是专门针对AI基础设施安全检测的工具,还是腾讯朱雀实验室开源的。GitHub - Tencent/AI-Infra-Guard: A.I.G (AI-Infra-Guard) is a comprehensive, intelligent, and easy-to-use AI Red Teaming platform developed by Tencent Zhuque Lab.

抱着试试看的心态,我试试看

官方给了一条命令可以安装

curl https://raw.githubusercontent.com/Tencent/AI-Infra-Guard/refs/heads/main/docker.sh | bash

体贴提供WEB操作页面界面简洁明了,点点鼠标就能完成扫描。连不懂技术的运营妹子都说这个好用。

输入公司内网ip30秒后,扫描报告就出来了。我简直不敢相信,之前手工花三天才搞定的事情,这个工具30秒就完成了!

  • 发现AI组件:Gradio、Jupyter、TensorBoard、Dify、ComfyUI... 专门针对AI组件组件应有尽有
  • 检出潜在漏洞:从高危的远程代码执行到信息泄露,分类清晰
  • 智能指纹识别:即使改了端口也能准确识别服务类型
  • 风险分级明确:高中低危,优先级一目了然

MCP安全分析,走在前沿

最让我惊喜的是,这工具还支持MCP(Model Context Protocol)安全分析。这是最近很火的AI Agent协议,但安全风险研究还很少。工具可以自动分析MCP服务器代码,检测工具投毒、数据泄露等风险:

这功能简直是雪中送炭,直接MCP源码访问链接扔给他就能检查MCP这个新兴领域安全风险

把 star 点了,让老板请你喝奶茶

有了这个工具,我对着扫描报告逐条修复,我对着表格逐条打补丁,一下午全清零。

护网结束,我们团队因为AI安全“0失分”被点名表扬。老板一高兴:“今天奶茶我请!要什么奶茶?”

我:“全糖加波霸,顺便给开源项目点个 star。”

老板:“star 能当饭吃?”

我:“能,当精神粮食,下次别再让我社死就行。”

Logo

有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

更多推荐