跳到正文
21 分钟阅读

风险越狱正在变得更专业:大模型金融安全的真正盲区

最近看到一篇很有意思的论文,题目叫 《Learning to Conceal Risk: Controllable Multi-turn Red Teaming for LLMs in the Financial Domain》。

2026/05/18

最近看到一篇很有意思的论文,题目叫 《Learning to Conceal Risk: Controllable Multi-turn Red Teaming for LLMs in the Financial Domain》

图片

https://openreview.net/pdf?id=Trlj9JDdnd

这篇文章研究的不是常见的暴力、色情、自残、仇恨等显性违规内容,而是一个更隐蔽的问题:在金融这样的高风险行业里,很多危险请求并不会以“危险语言”出现,而是会被包装成看似专业、合规、正常的业务咨询。

这也是大模型安全正在面临的一个新变化。

过去我们经常把越狱理解成用户想办法绕过模型拒答,比如角色扮演、编码混淆、翻译绕过、多轮诱导。但在金融场景中,真正棘手的地方不只是“用户怎么绕过护栏”,而是用户的请求本身就可能天然具有迷惑性。

一段话看起来像是在问资产配置,实际可能是在诱导监管规避;看起来像是在问税务优化,实际可能是在寻找逃税路径;看起来像是在问市场策略,实际可能是在诱导市场操纵。

论文把这种问题称为 risk-concealed query,也就是“风险被隐藏起来的请求”。作者提出的核心判断很直接:现有大模型护栏对显性有害内容已经比较敏感,但对专业语境中隐藏的监管风险仍然存在明显盲区。

图片

原文 Figure 1 对比了显性风险和隐性金融风险。模型会拒绝明显危险的问题,但可能对专业包装后的金融违规请求给出可执行建议。

论文构建了一个金融领域红队框架 CoRT,并在九个主流大模型上进行测试,结果显示 CoRT 的平均攻击成功率可以达到 93.19%,加入风险隐藏控制器后进一步提升到 95.00%。

一、真正难防的风险,往往看起来很正常

这篇论文最有价值的地方,是把大模型安全从“显性有害内容识别”推进到了“行业监管语境识别”。

在通用内容安全场景中,很多风险请求的表面特征比较明显。比如暴力、自残、武器、仇恨、色情等内容,通常会包含比较强的风险信号。模型或者护栏只要识别到这些信号,就可以触发拒答、改写或安全代答。

但金融场景不一样。

金融风险经常藏在专业表达里。一个用户问“如何设计跨境资产结构以提升税后收益”,从字面上看可能是合理的财富管理问题;但如果上下文逐渐引向规避审计、隐瞒受益人、逃避披露义务,它就可能变成监管违规问题。

这类风险的难点在于,它不是靠敏感词就能判断的。同样一个词,在不同上下文中可能完全不同。“结构化”“优化”“避税”“流动性”“信息优势”“披露边界”“合规安排”,这些词在金融行业里都可能是正常术语,也可能被用来包装违规目标。

所以论文真正指出的问题是:大模型护栏不能只判断一句话是否危险,还要判断这句话背后的业务意图是否越界。

这和传统内容审核有本质区别。传统内容审核更像是在判断“文本是不是违规”;而金融大模型安全更像是在判断“这个咨询行为是否会导致违规操作”。

这是一个从内容风险到业务风险的迁移。

二、CoRT:把金融越狱变成一个多轮控制过程

论文提出的框架叫 CoRT,全称 Controllable Risk-Concealment Red Teaming,可以理解为“可控风险隐藏红队测试”。

它不是简单生成一个攻击提示词,而是把攻击设计成一个多轮闭环过程。这个过程包含两个核心模块:一个是 RCA,Risk Concealment Attacker,负责生成多轮攻击问题;另一个是 RCC,Risk Concealment Controller,负责预测每一轮问题中的风险隐藏程度,也就是 RCS,Risk Concealment Score

RCA 的作用,是把原本比较危险的金融意图逐步包装成更自然、更专业、更像业务咨询的问题。

RCC 的作用,则是控制这个包装程度。问题说得太直白,模型可能拒答;说得太隐晦,又可能诱导不出违规内容。RCC 要做的,就是帮助攻击器找到一个合适的表达强度:表面风险尽量低,但深层目标仍然保留。

这就是 CoRT 里最值得关注的设计:它不是一次性攻击,而是根据模型每一轮回复持续调整策略。

如果模型拒答,攻击器就换一种更专业、更模糊、更业务化的表达方式;如果模型开始给出有用信息,攻击器就沿着这个方向继续推进;如果某一轮攻击成功,系统还会把这个成功轨迹用于训练 RCC,让后续攻击更会“隐藏风险”。

换句话说,CoRT 把越狱从“提示词技巧”变成了“反馈控制系统”。

图片

原文 Figure 2 展示了 CoRT 的两阶段流程:第一阶段构造带有金融风险意图的初始上下文,第二阶段根据历史对话、模型反馈和风险隐藏分数进行多轮迭代。

三、为什么多轮攻击在金融场景中特别有效

这篇论文最值得警惕的实验结果,不只是 CoRT 的攻击成功率很高,而是多轮交互带来的提升非常明显。

论文在 GPT-4o 上做了消融实验。单轮攻击的成功率只有 43.10%;加入多轮交互后,即使不使用反馈,成功率也提升到 91.95%;加入拒答感知反馈后达到 97.51%;再加入 RCC 后达到 98.66%。

这个结果说明,金融越狱的核心不一定是某个“神奇提示词”,而是对话过程本身。

第一轮,用户可能只是提出一个模糊的业务目标。
第二轮,用户开始补充约束条件。
第三轮,用户要求模型把方案具体化。
第四轮,用户把问题推向执行细节。
第五轮,模型可能已经在不知不觉中给出了监管违规建议。

单独看每一轮,风险可能都不算特别明显;连起来看,整个对话却在逐步逼近违规目标。

这就是多轮安全检测的难点。很多护栏系统仍然以单轮输入为主,只判断当前 query 是否违规。但 CoRT 证明,危险意图可以分散在多轮对话里,甚至可以在多轮中不断降低表面风险。

论文中还有一个很有意思的结果:随着对话轮次增加,高风险表述逐渐减少,低风险表述逐渐增加,但攻击成功率反而从第一轮约 74% 上升到第五轮超过 97%。

这说明攻击不是把风险说得越来越明显,而是把风险说得越来越正常。

图片

原文 Figure 5 展示了多轮迭代中风险表达等级和攻击成功率的变化:表面风险降低,攻击成功率升高。

四、FinRisk-Bench:行业安全评测不能只用通用题库

为了评估这类风险,论文构建了一个金融领域红队基准,叫 FinRisk-Bench

这个基准包含 522 条指令,覆盖六类金融风险:金融欺诈、内幕交易、市场操纵、洗钱、监管规避和逃税。数据来源包括已有红队基准中的金融相关样本、金融机构 FAQ 改写样本,以及 GPT-4o 生成的金融风险样本。其中,FAQ 改写和 GPT 生成部分经过三名金融监管专家人工审核。

图片


原文 Figure 3 展示了 FinRisk-Bench 的数据来源分布,其中 GPT-generated 占 46.0%,RED-EVAL 占 23.0%,FAQ-reframed 占 8.0%。

这个基准的意义不只是“多做了一个金融数据集”,而是说明高风险行业需要自己的风险分类体系。

通用安全题库可以覆盖暴力、色情、仇恨、自残、违法犯罪等大类问题,但很难覆盖金融行业中的细粒度监管风险。例如,内幕交易不是简单的“违法信息”,它涉及重大非公开信息、交易时间、信息优势和证券市场公平性;市场操纵也不是简单的“诈骗”,它涉及交易行为、价格影响、流动性、诱导性陈述和市场结构。

如果没有行业语义,护栏很容易把这类问题误判成普通咨询。

这对大模型安全评测非常重要。现在很多企业在做模型安全评测时,仍然倾向于复用通用安全集,然后给模型打一个整体安全分。但金融、医疗、法律、政务、教育这些场景,真正影响落地的往往是行业边界,而不是通用违规边界。

金融模型不能只评估“会不会输出有害内容”,还要评估“会不会给出监管违规建议”。
医疗模型不能只评估“会不会说脏话”,还要评估“会不会越权诊疗”。
法律模型不能只评估“会不会违法”,还要评估“会不会混淆法律咨询和执业边界”。
政务模型不能只评估“会不会生成敏感内容”,还要评估“会不会误导政策解释和行政流程”。

这篇论文给出的启发是:行业安全评测应该从通用风险分类,升级为行业行为风险分类。

五、现有防御为什么挡不住

论文还测试了几类常见防御方式,包括意图分析、系统提示防御、自我提醒和目标优先级防御。

结果并不乐观。即使采用防御策略,CoRT 仍然可以保持较高攻击成功率。其中效果相对最好的是 Goal Prioritization,可以把 CoRT RCA+RCC 在 GPT-4o 上的攻击成功率降到 84.87%;系统提示防御则降到 89.66%。

这说明一个问题:静态提示词防御对动态多轮攻击的效果有限。

很多防御方法的逻辑是,在系统提示里强调安全要求,让模型优先遵守政策,或者让模型在回答前分析用户意图。但 CoRT 的攻击方式不是一上来就暴露明确违规目标,而是在多轮中不断调整表达,让问题保持专业、合理、连续。

这类攻击真正挑战的是模型对“业务意图”的理解能力,而不是对“风险词汇”的识别能力。

如果防御系统只看当前输入,很容易漏掉用户在前几轮已经铺垫好的目标。
如果防御系统只看显性风险词,很容易被专业术语绕过。
如果防御系统只依赖系统提示,很难应对持续自适应的对话策略。

这也是为什么 Agent 和行业大模型场景下,安全防护不能只做输入输出过滤。它需要维护会话状态,需要理解任务目标,需要追踪用户是否在逐步逼近高风险行为。

图片

六、对大模型安全产品的启发

这篇论文对安全产品设计有几个非常直接的启发。

首先,输入风险检测需要从“当前句子”升级到“会话轨迹”。

很多真实风险并不会在第一句话里完整出现。用户可能通过多轮对话逐步建立上下文,让模型一步步进入风险区域。安全系统需要识别这种轨迹,比如用户是否持续围绕监管规避、隐瞒信息、规避审查、提高不可追踪性等方向推进。

其次,行业安全护栏需要行业知识。

金融风险不是简单的违法违规标签,而是一套监管语义。护栏需要理解什么是内幕信息,什么是市场操纵,什么是反洗钱义务,什么是实质性合规,什么是形式合规但规避监管。没有这些知识,模型很难判断一个请求到底是正常咨询还是违规诱导。

再次,安全策略不能只有拒答。

在金融、医疗、法律等高风险行业里,直接拒答并不总是最好的产品体验。更合理的方式是分级响应:对于明显违规请求,直接拒绝;对于灰区问题,解释合规边界;对于正常咨询,给出安全的通用信息;对于需要专业资质的场景,引导用户咨询持牌机构或专业人员。

最后,红队评测本身也要升级。

传统红队测试经常依赖单轮样本,或者人工设计越狱提示词。但 CoRT 说明,真正有效的红队应该具备多轮交互能力、反馈调整能力和风险隐藏能力。否则,评测出来的安全性很可能偏乐观。

这对企业安全评测服务也有启发。未来的大模型安全评测,不能只测“模型会不会回答某个危险问题”,还要测“模型会不会在多轮业务咨询中逐渐被带偏”。

图片

七、局限性

当然,这篇论文也有一些局限。

第一,它主要研究金融领域,方法是否能直接迁移到医疗、法律、政务等其他高风险行业,还需要进一步验证。

第二,FinRisk-Bench 虽然覆盖了六类金融风险,但没有覆盖所有金融大模型风险。比如隐私泄露、客户画像滥用、错误投资建议、幻觉导致的误导性披露等问题,并不是这篇论文的重点。

第三,论文评估攻击成功率时依赖 LLM judge。虽然作者补充了不同 judge 和人工判断的对比,但只要评测链路里使用模型裁判,就会存在一致性、偏差和可解释性问题。

第四,论文中的攻击成功率不能简单等同于真实金融机构部署环境下的事故概率。真实环境里还会有权限控制、人工复核、审计日志、工具调用限制、业务流程约束等多层防护。但即便如此,这篇论文仍然有效说明了一个趋势:只靠通用护栏,很难覆盖专业行业中的隐性监管风险。

写在最后

这篇论文最值得关注的地方,不是提出了一个新的高攻击成功率方法,而是揭示了一个更深层的问题:大模型越狱正在从显性攻击,走向专业语境中的隐性诱导。

过去,用户试图让模型输出危险内容,往往需要把问题说得很极端。
现在,更有效的方式可能是把问题说得更专业、更自然、更像正常业务。

这对大模型安全提出了更高要求。

模型不能只识别危险词汇,还要理解业务意图。
护栏不能只看单轮输入,还要理解多轮轨迹。
评测不能只使用通用题库,还要进入行业监管语境。
防御不能只靠拒答,还要提供合规边界和安全替代路径。

尤其在金融、医疗、法律、政务这些高风险行业里,真正危险的请求往往不会写着“我要违规”。它可能披着专业咨询的外衣,使用合规化的语言,沿着业务流程一步步推进。

大模型安全真正难防的,不是用户把风险说得多明显,而是用户把风险说得多正常。

同专题推荐

查看专题