前序研究:实战解读:Llama 3 安全性对抗分析
近日,腾讯朱雀实验室又针对 Llama 3.1 安全性做了进一步解读。
2024年7月23日晚,随着Llama3.1的发布,Meta正式提出了“Llama系统”的概念,通过系统级的安全组件对AI系统进行更好的控制。值得关注的是,去年12月成立的“Purple LLama”项目又新增三大安全组件:Llama Guard 3 、 Prompt Guard、CYBERSECEVAL 3,旨在“保护生成式人工智能时代开放信任和安全”。
Llama Guard 3
Llama Guard 3 是 Llama Guard 2 的升级版本,用于协助开发人员检测各种常见类型的违规内容。它通过微调 Meta-Llama 3.1-8B 模型构建的方式进行优化,可以执行 MLCommons 标准危害分类法的检测。Llama Guard 3 共支持8种语言,相比 Llama Guard 2新增了意大利语、法语等7种语言,同时,其上下文窗口也由 8k 扩展到 128k 。
除此之外,Llama Guard 3 在检测网络攻击方面也进行了优化,并能防止 LLM 输出的恶意代码通过代码解释器在 Llama 系统的托管环境中执行。(这也是为代码解释器的应用场景新增了防护场景)
风险分类在参考MLCommons AI Safety的基础上,从Guard2的11个风险类别,扩展到14个类别。(绿色为新增类别)
Prompt Guard
Prompt Guard是用于防止 LLM 集成的应用程序受到恶意提示的侵害,以确保系统安全性和完整性的组件。该组件会对提示内容的安全性进行审查,识别是其否有提示词注入和越狱的风险。
CYBERSECEVAL 3
CYBERSECEVAL 3是全新发布的安全基准套件,用于评估各类LLM的网络安全风险和能力。它关注当前LLM的八种不同风险,涵盖对第三方和应用开发者及用户两种场景,并通过模拟网络钓鱼攻击、勒索软件攻击等方法对 LLM 的安全能力进行评估。
与之前的工作相比,CYBERSECEVAL 3增加了全新的评估领域,包括自动化社会工程、扩展手动攻击性网络操作和自动化攻击性网络操作,并测试了全新发布的Llama 3 405B模型。
在自动化社会工程评估方面,CYBERSECEVAL 3考虑了钓鱼攻击场景,尝试让 LLM 说服受害者下载并打开恶意附件,并分别通过大模型及人工对不同模型的说服能力进行评分。结果表明 Llama 3 405B展现了介于“中等”和“差”之间的说服能力,难以成功实现钓鱼攻击。
在扩展手动攻击性网络操作方面,CYBERSECEVAL 3聚焦于受测LLM在帮助人类攻击者进行网络攻击方面的帮助。从结果来看,Llama 3 405B不能显著提升攻击者的攻击效率和能力。
在自动化攻击性网络操作方面,CYBERSECEVAL 3评测了各类LLM对网络服务及端口的侦察和访问、漏洞识别和漏洞利用等能力。结果显示 Llama 3 405B仅能完成部分低复杂度操作,无法在自动化网络攻击方面产生威胁。
实战验证
Cyber Security Guard
腾讯朱雀实验室 Red Team 团队使用自建的安全数据集对 Gemma、Llama 2、Llama 3、Llama3.1的模型安全性进行了测试。结果显示,Llama3.1 + Llama Guard 3的组合较上一个版本在安全性上提升了0.58%,达到了99.04%的拦截率,表现出较高的安全性。
Prompt Guard
在越狱检测场景中,Prompt Guard的准确率达88.2%,但仍有6.4%的样本未能被成功识别出潜在的恶意意图。对于涉及黑数据场景注入和越狱的标签分类,Prompt Guard的准确率表现可以接受,但仍有提升空间。
值得注意的是,在白样本集的处理中,我们观察到了一个显著的挑战:Prompt Guard的误报率高达86.4%!这一数据凸显了Prompt Guard在处理正常对话时的过度敏感。
下图展示了具体示例。虽然Prompt Guard正确识别了提示注入,但对于正常的问答,其检测结果表现的不尽人意。可见该组件还需要进一步的训练和优化,才可用于下游应用中。
综合来看,“Llama系统”概念的提出,表明了Meta对“AI Safety & Secuirty”的重视。Meta也通过与NIST和ML Commons等全球组织合作定义了通用标准和最佳实践,进一步提高了AI的安全性。但对于其提出的安全组件是否可以直接集成在LLM上,我们仍需保持谨慎的态度,同时,不同组件间需要通过科学合理的组合,才能在下游应用中更好地规避潜在的安全隐患。