LLMs拒绝服务&资源耗尽
风险概览
风险编号:GAARM.0008
子风险:无
安全阶段:基座安全
生命周期:应用阶段
创建时间:2024.05.01
修改时间:2024.08.09
攻击概述¶
攻击者可能会通过发送大量请求来攻击机器学习系统,以降低ML服务速度或者导致服务关闭。由于LLMs系统需要大量的专用计算资源,攻击者可以有意地构造需要大量无用计算的输入,以消耗LLMs系统的资源,导致LLMs和其他用户的服务质量下降,并可能产生高额的资源成本。由于LLM的资源密集型特性和用户输入的不可预测性,这种漏洞的危害性很容易被放大。
攻击案例¶
| 案例 | 描述 |
|---|---|
| 案例一 | 在agent中进行Prompt注入,诱骗其重复调用 LLM 和 SerpAPI,快速增加成本。 |
| 案例二 | 由于Sourcegraph站点管理员访问令牌意外泄漏,并被利用来冒充用户以获得对系统管理控制台的访问权限,导致API使用量显著增加并泄露大量用户数据。 |
| 案例三 | 利用Prompt注入让MathGPT泄露API密钥,并导致拒绝服务 |
| 案例四 | 在电力系统中应用LLM进行决策,如果发生DOS攻击,可能导致决策的延误和错误,最终影响电力系统的稳定运行 |
攻击风险¶
- 资源耗尽攻击:攻击者可能会发送大量的请求来占用模型的计算资源,使得服务不可用,影响用户体验,甚至导致服务中断。
- 数据泄露和滥用:攻击过程可能导致模型异常泄露API令牌等敏感信息,攻击者可能会进行未授权访问。
缓解措施¶
| 缓解方式 | 描述 |
|---|---|
| API速率限制 | 强制执行API速率限制,限制个体用户或IP地址在特定时间内可以发出的请求数量 |
| 限制执行数量 | 限制排队操作的数量和对LLM响应的系统中的总操作数量 |
| 实时监控与告警 | 持续监视硬件的资源利用情况,以识别异常的峰值或模式,可能表明存在拒绝服务攻击 |