来源:Higress
OneAPI是一款在GitHub上拥有2万Star的AI网关工具。最近,用户发现安装最新版本镜像后,CPU使用率异常升高。最终定位发现是DockerHub上的镜像被投毒,植入了XMR门罗币挖矿脚本。
目前可以确认是由于DockerHub推送密钥泄漏,导致黑客向多个镜像版本植入了挖矿脚本:
近年来,由于加密货币行情火热,挖矿脚本相关的安全事件呈上升趋势。Palo Alto Network的安全研究员Aviv Sasson曾发现了30个被植入挖矿木马的Docker镜像,这些镜像共被下载了2000万次,估计帮助黑客挖掘了价值20万美元的加密货币。
Docker镜像被注入挖矿脚本并不是个别现象,而是一个需要引起重视的安全问题。
DockerHub是世界上最大的容器镜像托管服务,有超过十万个来自软件供应商和开源项目的容器镜像。容器镜像是一个包含软件及其运行环境的完整包,在安装时可以省去复杂的配置过程。因为DockerHub提供免费服务,很多开源软件项目选择在这里发布他们的容器镜像,使得用户可以很方便地获取、安装和使用这些软件。
被黑客植入木马的OneAPI是一款开源的AI网关工具。随着AI供应商越来越多,LLM模型的能力逐渐趋同,AI网关工具应运而生。AI网关能统一接收用户的问题,然后转发给不同的LLM模型处理。使用AI网关有几个常见场景:提高整体服务的稳定性、降低成本等,并且这种切换对用户无感知。
本文作者是另一款开源AI网关项目Higress的维护成员之一。Higress是由阿里云开源的网关软件,与仅支持AI网关的OneAPI不同,Higress基于API网关能力之上构建了AI网关能力,并由阿里云API网关的研发团队共同维护。
Higress一直使用阿里云容器镜像服务用于镜像存储,并有自己的官方Helm仓库。使用阿里云容器镜像服务有两个好处:不受DockerHub网络封禁影响,对国内用户更友好;可以进行镜像安全扫描,自动拦截有风险的镜像提交。
基于阿里云容器镜像服务的云原生交付链功能,可以在镜像推送之后立即进行恶意脚本扫描,如若发现风险可以立即删除镜像。此外,每次新版本发布通过GitHub Action自动完成也很重要。
Higress AI 网关支持一行命令安装:
curl -sS https://higress.cn/ai-gateway/install.sh | bash执行完命令后可以通过命令行初始化配置,可以看到Higress的AI网关能力支持对接国内外所有主流LLM模型供应商:
也可以选择跳过这个步骤,到Higress的控制台进行配置对应供应商的API Key:
配置后,就可以直接使用了,例如使用OpenAI的SDK:
import jsonfrom openai import OpenAIclient = OpenAI( api_key=xxxxx, # 可以通过Higress生成消费者Key实现API key的二次分租 base_url="http://127.0.0.1:8080/v1")completion = client.chat.completions.create( model="deepseek-chat", # 可以填写任意模型名称,Higress根据模型名称路由到对应供应商 messages=[ {"role": "user", "content": "你好"} ], stream=True)for chunk in completion: print(chunk.choices[0].delta)可以在监控面板看到每个模型以及每个消费者的token消耗情况和调用延时:
相比OneAPI,Higress提供了更多实用的功能,例如API Key治理、消费者管理、兜底模型、模型灰度等。Higress的插件市场里还有很多开箱即用的插件,例如提示词模版、AI缓存、数据脱敏、内容安全等。
插件代码也都是开源的,并且支持自己开发插件,支持在网关上热装载,对流量完全无损。