我们经常看到各种基于生物信息的认证方式,比如刷脸支付、指纹解锁之类常见的认证,还有什么基于掌纹、虹膜的比较小众的认证方法。而人的发音特征可能是一种比较容易模仿的生物信息,毕竟最近一段时间诈骗团伙用AI合成技术来换脸、换声音进行诈骗的新闻屡屡曝光。今年的IEEE S&P会议上就有一篇来自加拿大滑铁卢大学的论文 Breakin Security-Critical Voice Authentication 就专门讨论了如何破解利用人声进行认证的系统:
针对目前主流的语音认证(voice authentication,VA)系统,作者首先给了一个很厉害的结论:Our attack can circumvent any state-of-the-art VA platform implementing the authentication protocol in its strictest form and is fully black-box, query efficient, real-time, model-agnostic (transferable), and targeted. 也就是说,攻击者完全可以在不了解VA系统的黑盒情况下,欺骗系统并绕过认证。听上去好像很厉害,不过我们要先了解一些背景知识:针对VA系统的攻击并不是今年才刚刚出现,此前就有很多相关攻击,主要针对VA系统的核心组件——automatic speaker verification system(ASV)实施的模仿攻击(spoofing attack),就连一些大众科技媒体都报道了这种问题,安全威胁已经凸显:
https://www.vice.com/en/article/dy7axa/how-i-broke-into-a-bank-account-with-an-ai-generated-voice
正是因为声音模仿这种技术其实已经出现了许多年,为了对抗fake audio,VA系统的设计者在ASV系统上往往会部署一些防御(spoofing countermeasure,CM),作者特别强调了他们的工作针对的限制条件:
-
攻击者只能进行有限次尝试,无法实施暴力破解
-
攻击者必须在短时间内快速回应认证要求,因此合成语音的速度要够快
-
攻击者不知道VA系统内部的实现细节,不能针对特定的模型去优化
-
VA系统会随机产生需要用户朗读的文本信息,以对抗重放攻击
在这种情况下,作者提出的攻击依然可以奏效。具体到攻击渠道,作者主要通过两种途径来注入fake audio,第一种是在root过的手机上针对那些使用VA的APP进行注入,第二种是通过电话call in的时候提供fake audio来注入。
作者通过观察,发现主流的一些VA系统的防护方案,依赖于几个关键要素来识别正常的人声和机器合成的fake audio:
-
检查人说话间隙的自然背景噪声是否存在
-
检查麦克风导致的“颤音”(和正常的声音交织在一起)是否存在,同时检查环境回声
-
重点检查低频(1−4 KHz)区域,忽略高频区域
-
检查噪声是否为“人造”——也就是与已知的spoofing algorithm产生的噪声的频谱分布相似
为了对抗检查,本文对fake audio额外又进行了7种变换(transformation),保证它能逃避检查,具体包括:
F1. 对录音开始和结束的静音部分加入真实的“安静片段”(从真实环境中copy过来)
F2. 对合成的声音中间的静音片段进行删减
F3. 增强声音频段的中频部分
F4. 模拟本地回声
F5. 使用预加重(Pre-emphasis,一种信号处理手段,增强信号上升沿和下降沿处的幅度)处理声音
F6. 去噪(搜索那种特定模式,然后降噪处理)
F7. Adversarial speaker regularization(ADVSR):选择一个通用的ASV(和要攻击的VA系统里面的ASV并不一定相同),利用它来辅助制造一些对抗性信号变换
利用这7种变换,攻击者可以让一个fake audio样本变得不那么容易被现有的防御机制发现。作者把当前表现最好的一些公开的CM机制都拉出来进行了测试,并且将自己的攻击与2019年(?)典型的一些spoofing算法进行了比较(大家都针对ASVsof2019
测试集,生成fake audio样本)。
下表展示的是执行了上面提到的7种变换中各类特定组合,对VA系统进行欺骗的成功率变化:
不过作者还有一个很诚实的对比,表明自己的攻击,并不总是最好的,例如对Google和AWS的VA系统,CCS 2021的论文 “Hello, It’s Me”: Deep Learning-based Speech Synthesis Attacks in the Real World 的攻击似乎更好。不过作者觉得自己的攻击方法更为general,而此前的spoofing algorithm可能只是针对某些VA系统表现特别好而已~
本文提出的攻击在利用电话进行的语音认证中能够更为明显的提升成功率(虽然好像也不怎么样):
作者最后还邀请了人类来当裁判,让他们随机听真实语音和合成语音,结果当然是人类惨遭羞辱,以50%的正确判定率结束比赛,和随机抛硬币一个水平(手动狗头)。
黑产团伙们,快点访问下面的网址吧:
代码:https://github.com/andrekassis/Breaking-Security-Critical-Voice-Authentication
论文:https://cs.uwaterloo.ca/~uhengart/publications/oakland23.pdf
原文始发于微信公众号(安全研究GoSSIP):G.O.S.S.I.P 阅读推荐 2023-05-29 大破语音验证系统
- 左青龙
- 微信扫一扫
- 右白虎
- 微信扫一扫
评论