语音控制系统的安全挑战与防御策略(中)

2.3 核心层

在VCS中,核心层负责解码预处理层处理后的音频特征向量。这种解码传统上是通过声学模型实现的,它将特征向量转换为音素,并使用语言模型预测词序列概率,以输出最可能的句子。目前Wav2Letter(基于CNN)、Kaldi(DNN-HMM)和CMU Sphinx(GMM-HMM)这样的高级模型成为主流,因为它们在语音识别方面的准确性有较大提高。核心层仍然容易受到对抗性攻击的影响,这些攻击操纵解码过程和欺骗攻击,其中攻击者模仿合法的音频输入来欺骗系统,这突显了在这关键的VCS组件中需要强大的安全措施。

2.3.1 攻击方法

2.3.1.1 核心层的欺骗攻击

核心层的欺骗攻击主要针对VCS的说话人验证(SV)组件。这些攻击的目的是冒充目标说话者以获得VCS系统中的未经授权的访问或权限。通常,欺骗攻击分为四种类型:重放、模仿、语音合成和声音转换

  • 重放攻击重放攻击涉及使用录音设备录制受害者的声音,然后重放捕获的音频以欺骗SV系统。这种方法简单但非常有效,由于其简单性和可靠性,对各种SV系统构成了重大威胁。重放攻击的有效性已经在许多类型的SV系统中得到证明。
  • 模仿攻击模仿攻击是由攻击者手动模仿目标个体的语音模式和言语行为,不借助任何计算机化设备。这些攻击旨在欺骗SV组件错误地将攻击者识别为目标。研究表明,即使是非专业的模仿者也可以成功,特别是如果他们熟悉目标的语音模式或拥有自然相似的声音。专业的模仿者经常尝试复制目标语音的节奏特征以增强欺骗。然而,观察到模仿者和目标的自然声音之间存在显著差异,仍可被SV系统检测到。
  • 语音合成攻击语音合成(SS)是一种旨在从输入文本生成类似于受害者声音的技术,与标准的文本到语音(TTS)应用不同。其目标是通过模仿受害者来欺骗SV组件。传统的SS技术包括单元选择、统计参数建模以及结合两者的混合方法。深度学习的进步导致了神经网络在SS中的使用,如生成对抗网络(GAN)用于提高语音质量,以及特定模型如WaveNet和Tacotron用于受害者特定的语音生成。
  • 声音转换声音转换(VC)与SS不同,它将攻击者的语音转换为与受害者的语音模式相匹配通过修改攻击者的语音以类似于受害者来绕过活性检测系统。
  • 双胞胎同卵双胞胎在SV中提出了一个独特的挑战,因为他们的语音特征高度相似。虽然SV系统通常在区分不同个体方面非常有效,但它们在区分同卵双胞胎方面存在困难。研究表明,双胞胎共享类似的语音信号模式、音高轮廓、形式轮廓和语谱图,导致SV中出现更高的错误接受率(FAR)。有报道称,双胞胎能够通过绕过SV检查来访问彼此的账户。
2.3.1.2 核心层的对抗性攻击

与预处理层类似,核心层的VCS也容易受到对抗性攻击。然而,核心层中的攻击方法通常涉及直接向合法音频样本的音频波形中添加对抗性扰动。这种直接操作音频波形的方式区分了这些攻击与预处理层中的攻击。核心层的对抗性攻击对音频分类器构成了重大挑战,通常导致误分类和随后的安全漏洞。

在VCS的核心层,由于转向黑盒模型,传统的基于梯度的对抗性样本生成方法(如梯度下降(GD)和快速梯度符号方法(FGSM))变得不那么有效。为了解决这个问题,研究人员开发了用于制作对抗性样本的梯度不可知算法。

遗传算法(GA):GA采用基于搜索的方法,迭代地寻找可能欺骗机器学习模型的样本。通过使用交叉和变异等技术,GA改进搜索结果,优先选择适应度更高的样本进行后续迭代。这种方法适用于灰盒或黑盒攻击,因为它仅依赖于模型输出而不是梯度信息。然而,GA的迭代性质导致计算资源需求高。

粒子群优化(PSO):起源于群体智能的PSO模仿集体动物行为来寻找最优解。在对抗性样本生成中,样本被视为群体粒子,迭代地向搜索空间中最有效的位置移动。PSO的优点在于快速收敛,并且不需要梯度信息,使其在灰盒和黑盒攻击中高效。

集成算法:Chen等人引入了一种新颖的黑盒方法,结合了自然进化策略(NES)和基本迭代方法(BIM)。NES估计黑盒模型的梯度,然后使用这个估计的梯度在BIM中迭代生成对抗性样本。这种方法有效地制作适用于黑盒设置的对抗性样本。

基于深度学习的方法:像门控卷积自编码器(GCA)、对抗性转换网络(ATN)和生成网络(GN)等方法利用深度学习进行对抗性样本生成。GN在灰盒模型攻击中有效,而ATN显著减少了生成对抗性样本所需的时间。

2.3.2 防御方案

2.3.2.1 针对欺骗攻击的防御方案

针对VCS欺骗攻击的防御策略主要集中于在转录过程中识别音频信号的失真。

  • 对于重放攻击:已经开发出技术来通过分析远场录音的特征来区分原始和重放音频,这些特征是远距离攻击的特征。另一种方法是维护VCS中的先前音频录音数据库,并计算新输入的相似性分数以检测重放。
  • 对于语音合成(SS):传统的SS检测方法通常依赖于基于特定SS算法的声学差异的理解,例如分析频谱参数范围和mel-倒谱系数的变化。人声和合成音频之间的音高模式和声道模型的差异提供了额外的检测标记。
  • 对于声音转换(VC):针对VC攻击的防御从SS防御策略中汲取灵感,研究表明基于超向量的SVM分类器在对抗VC方面表现出固有的鲁棒性。分析人类与VC生成音频中连续特征向量之间的成对距离也证明是有效的。
2.3.2.2 针对对抗性攻击的防御方案

虽然在VCS的预处理层中使用的防御方法也适用于核心层,但针对核心层的攻击性质需要额外的策略。由于这些攻击通常针对模型本身,对抗性样本在不同模型之间的转移性往往受到限制。为一个特定模型制作的对抗性样本在应用于另一个模型时,往往产生不同的预测结果,这与正常音频信号不同。对抗性样本的这种独特行为为检测和抵御针对这一关键层的攻击提供了基础。通过利用模型对对抗性与正常音频的反应差异,可以设计防御机制,有效识别和减轻针对核心层的对抗性攻击。

2.4 服务层

2.4.1 攻击方法

2.4.1.1 服务层的抢占攻击

尽管VCS的第三方服务需要经过强制性审查以确保符合安全和隐私政策,但许多服务仍然违反这些规定,目前的审查流程难以发现这些违规行为。这种疏忽允许攻击者引入恶意服务,带来重大的隐私风险。抢占攻击发生在攻击者创建名称类似于合法服务的情况下,欺骗用户访问这些恶意选项。

类似声音的服务名称:攻击者可能会设计出与合法服务名称在语音上类似的服务名称,导致意外激活恶意服务。例如,“Capital Won”可能被误认为是“Capital One”,特别是在嘈杂的环境或基于用户的方言或性别。

利用最长匹配规则:VCS通常使用最长匹配规则匹配服务名称。攻击者利用这一点和用户习惯来构建抢占攻击。由于许多用户在服务命令中添加礼貌用语如“请”,一个名为“Capital One Please”的恶意服务可能会比预期的“Capital One”服务更优先被激活,正如用户习惯调查所观察到的

2.4.1.2 服务层的虚假终止攻击

用户对VCS(如Alexa和Google Assistant)服务终止协议的误解可以被利用。用户通常假设服务在沉默或告别响应后会自动结束。然而,恶意服务可以模拟终止声音,同时保持活跃状态,如果用户随后披露私人信息或发出命令,这将带来重大的安全风险。这种欺骗行为突显了需要更大的意识和更明确的终止协议在VCS中的必要性。

2.4.2 防御方案

2.4.2.1 针对抢占攻击的防御方案

抢占攻击通常涉及类似声音的服务名称或变体来欺骗VCS。Zhang等人开发了一个基于音素的服务名称扫描器来识别可疑的第三方服务。此外,建议服务平台提供商分析新服务是否有潜在的命名冲突,或者使用交互式工具进行策略违规检测。

2.4.2.2 针对虚假终止的防御方案

为了减轻与VCS中虚假终止相关的风险,建议加强服务发布认证机制。服务平台提供商应对新服务进行彻底的基于单词或音素的审查,以避免与现有服务混淆。此外,诸如语音交互分析和后端代码审查等方法在识别隐私侵犯或服务功能与其描述之间的差异方面是有效的。

2.5  恶意攻击案例

  • 亚马逊Alexa技能伪造:亚马逊Alexa技能市场上有大量恶意技能,这些技能会在用户不知情的情况下访问用户的个人信息,甚至进行未经授权的购买。为了提高隐蔽性,这些恶意技能通常会使用与合法技能相似的名字和描述。
  • Google Home技能欺骗:Google Home技能市场中也有类似的恶意技能。攻击者创建与合法技能相似名称的技能,诱使用户激活并执行恶意操作,如访问用户的联系人信息、控制智能家居设备等。
  • 苹果Siri服务攻击:攻击者利用Siri的语音识别和执行命令的功能,通过创建与合法服务相似名称的服务,诱使用户执行恶意操作,如访问用户的私人信息、发送诈骗短信等。
  • 微软Cortana服务欺骗:攻击者创建与合法服务相似名称的Cortana技能,诱使用户激活并执行恶意操作,如下载恶意软件、访问用户的私人信息等。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/18536.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

「架构」模型驱动架构设计方法及其运用

本文通过一个实际的软件项目案例,深入探讨了模型驱动架构(MDA)在软件开发全过程中的应用。MDA是一种以模型为中心的设计方法,它通过分离计算、数据和业务逻辑,提高了软件的可维护性、可扩展性和可移植性。文章将从需求分析、架构设计、实现与测试三个阶段出发,分析MDA的应…

FaceChain-FACT:开源10秒写真生成,复用海量LoRa风格,基模友好型写真应用

github开源地址:https://github.com/modelscope/facechain/tree/main/facechain_adapter 魔搭创空间应用体验:魔搭社区 一、效果演示 FaceChain FACT的代码和模型目前已经在github和modelscope创空间上同步开源。FaceChain FACT具有简单的交互式界面设…

AI图书推荐:基于ChatGPT API和Python开发应用程序的详细指南

ChatGPT已经以其革命性的能力引起了人们的关注,利用其API可能会成为你的游戏规则改变者。这不仅仅是关于编码;它是关于为您的创作添加一层智能,将它们提升到之前无法想象的水平。《基于ChatGPT API和Python开发应用程序的详细指南》&#xff…

[图解]企业应用架构模式2024新译本讲解03-事务脚本+表数据入口

1 00:00:00,570 --> 00:00:06,290 这里先创建一个service的对象 2 00:00:07,000 --> 00:00:12,470 然后调用对象的方法、操作 3 00:00:12,480 --> 00:00:13,750 就是事务脚本 4 00:00:14,700 --> 00:00:15,900 然后参数是1 5 00:00:16,660 --> 00:00:19,490…

《公正》孙溟㠭艺术

孙溟㠭艺术《公正》 孙溟㠭艺术《公正》

利用NewGIS平台将FME模板发布为接口

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 前言 一、模板编写 二、发布模板 三、接口获取 四、移动端调用 ​​​​​ 前言 在实际的应用生产过程中,尤其是移动端GIS软件的开发,针对一些闭…

【社区投稿】给 NdArray 装上 CUDA 的轮子

Ndarry是Rust编程语言中的一个高性能多维、多类型数组库。它提供了类似 numpy 的多种多维数组的算子。与 Python 相比 Rust 生态缺乏类似 CuPy, Jax 这样利用CUDA 进行加速的开源项目。虽然 Hugging Face 开源的 candle 可以使用 CUDA backend 但是 candle 项瞄准的是大模型的相…

12.2 通道-阻塞与流程控制、通道型函数、退出通道

阻塞与流程控制 通常在并发程序中要尽力避免阻塞式操作,但有时又需要让代码暂时处于阻塞状态,以等待某种条件、信号或数据,然后再继续运行。 对于无缓冲通道,试图从无人写入的通道中读取,或者向无人读取的通道中写入…

Redis教程(二十一):Redis怎么保证缓存一致性

传送门:Redis教程汇总篇,让你从入门到精通 Redis 的缓存一致性 Redis 的缓存一致性是指在使用 Redis 作为缓存层时,保证缓存中的数据与数据库中的数据保持一致的状态。在分布式系统中,数据一致性是一个重要的问题,因为可能存在多个客户端同时读写同一数据,或者数据在不同…

【量算分析工具-贴地面积】GeoServer改造Springboot番外系列十

【量算分析工具-概述】GeoServer改造Springboot番外系列三-CSDN博客 【量算分析工具-水平距离】GeoServer改造Springboot番外系列四-CSDN博客 【量算分析工具-水平面积】GeoServer改造Springboot番外系列五-CSDN博客 【量算分析工具-方位角】GeoServer改造Springboot番外系列…

SQL学习小记(三)

SQL学习小记(三) 功能实现思路代码部分名词解释 代码打包为可执行文件 功能说明:使用python代码,将数据库database1中的表格table1同步到数据库database2中 功能实现 思路 #mermaid-svg-R1pWrEWA799M299a {font-family:"tre…

go语言方法之基于指针对象的方法

当调用一个函数时,会对其每一个参数值进行拷贝,如果一个函数需要更新一个变量,或者 函数的其中一个参数实在太大我们希望能够避免进行这种默认的拷贝,这种情况下我们就需 要用到指针了。对应到我们这里用来更新接收器的对象的方法…

域名服务器是什么?

所谓域名服务器(即Domain Name Server,简称Name Server、DNS)实际上就是装有域名系统的主机。它是一种分层结构数据库,能够执行域名解析。

Rocksdb原理简介

100编程书屋_孔夫子旧书网 Rocksdb作为当下nosql中性能的代表被各个存储组件(mysql、tikv、pmdk、bluestore)作为存储引擎底座,其基于LSM tree的核心存储结构(将随机写通过数据结构转化为顺序写)来提供高性能的写吞吐时…

Google Benchmark库 简介

在C中,进行性能测试(Benchmarking)是一个常见的需求,用以测量代码块的执行时间,从而对代码进行优化。Google Benchmark库是一个广泛使用的C库,专门用于编写稳健的基准测试。以下是如何使用Google Benchmark…

Visual Studio 的使用

目录 1. 引言 2. 安装和配置 2.1 系统要求 2.2 安装步骤 2.3 初次配置 3. 界面介绍 3.1 菜单栏和工具栏 3.2 解决方案资源管理器 3.3 编辑器窗口 3.4 输出窗口 3.5 错误列表 3.6 属性窗口 4. 项目管理 4.1 创建新项目 4.2 导入现有项目 4.3 项目属性配置 5. 代…

C++之using

using是C11引入的关键字 1、类型别名 using可以用来为类型创建一个新的名字,方便代码维护。 // 定义类型别名 using data_type short;// 使用 data_type value 5;2、命名空间别名 using可以为非常长的命名空间创建一个别名,方便使用。 namespace ve…

当传统文化遇上数字化,等级保护测评的必要性

第二十届中国(深圳)国际文化产业博览交易会5月23日在深圳开幕。本届文博会以创办20年为契机,加大创新力度,加快转型升级,着力提升国际化、市场化、专业化和数字化水平,不断强化交易功能,打造富有…

《软件方法(下)》8.3.4.6 DDD话语“聚合”中的伪创新(1)

DDD领域驱动设计批评文集 做强化自测题获得“软件方法建模师”称号 《软件方法》各章合集 8.3 建模步骤C-2 识别类的关系 8.3.4 识别关联关系 8.3.4.6 DDD话语“聚合”中的伪创新 DDD话语中也有“聚合”。Eric Evans的“Domain-Driven Design: Tackling Complexity in the…

在今日头条上写文章:ChatGPT完整使用教程

了解如何充分运用ChatGPT进行创作 简介 在今日头条上发布文章变得越来越方便。本文旨在详细解析如何运用ChatGPT来创作文章,并提供全方位的使用指南及常见问题的答疑。 第一步:基础准备 确保你已注册今日头条账号。 登录ChatGPT并与你的今日头条账号进…