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

news2024/11/17 23:45:41

语音控制系统(VCS)提供了便捷的用户界面,涉及智能家居、自动驾驶汽车、智能客服等众多应用场景已成为现代智能设备不可或缺的一部分。其市场规模预计到2023年达到70亿美元,这种扩张带来了重大的安全挑战,如数据隐私和易受网络攻击的脆弱性,这些问题已成为VCS领域的重要担忧。作为软件和硬件组件的复杂融合,VCS天生就具有多样化的安全漏洞。这些漏洞为攻击者提供了设计一系列攻击方法的途径,挑战VCS设计者预见和理解这些问题。

我们介绍一个VCS的分层模型结构,提供了一个新的视角,用于系统地分类和分析现有攻击方法

1、VCS系统概述

当用户向VCS发出语音命令后,用户将从VCS接收到响应。基于该响应,用户可以选择向VCS发出另一个相关的命令。

分层工作流程图

1.1 物理层

传输通道:在VCS中,通过空气等媒介传输的声音信号会受到各种环境影响,这些影响可能会降低信号的质量。理想情况下,信号传输应该无损失地进行,但实际上,随着距离的增加,信号强度会减弱,减少了携带的信息量。这一限制在捕获足够的信号数据方面提出了挑战,从而限制了声源和目标设备之间的有效操作范围。

声学信号转换:为了让VCS处理声学信号,它们首先必须被转换成数字信号,这个过程涉及两个关键步骤麦克风,将声学信号转换成电信号模拟-数字转换器(ADC),将电信号数字化。

1.2 预处理层

信号预处理:信号预处理在VCS中至关重要,因为它涉及处理原始语音信号以提取清晰的语音进行分析。VCS使用带通滤波器将语音信号隔离在300-3400kHz的频率带内。使用多个麦克风进行多通道语音捕获需要采用多通道声学回声消除、混响控制和声源分离等技术。

声学特征提取:从语音信号中提取独特的特征,考虑到说话者特征、环境噪声和传输信道的变化。该过程首先使用滑动窗口技术将处理后的音频分割成帧,然后进行特征提取。常见的特征提取算法包括短时傅里叶变换(STFT)、线性预测编码(LPC)、梅尔频率倒谱系数(MFCC)和感知线性预测(PLP)。

​​​​​​​1.3 核心层

声学模型:在预处理层提取特征后,声学模型通过机器学习算法建立这些特征与音素等声学单元之间的统计关系。传统模型通常使用高斯混合模型(GMM)和隐马尔可夫模型(HMM),而现代模型越来越多地采用神经网络,如卷积神经网络(CNN)和循环神经网络(RNN),提高了音素转换的准确性和效率。

语言模型:语言模型预测词序列形成连贯句子的可能性,基于上下文区分同音词。此模型在利用常用词和语法规则控制VCS输出中起着关键作用。模型通常分为统计型(例如,N-gram,HMM)和基于神经网络,后者在现代VCS中变得越来越普遍。

语音词典:该组件通过将单词映射到音素,连接声学模型和语言模型,对VCS中解码用户意图至关重要。语音词典有助于建立模型单元之间的关系,从而辅助系统有效解码。

端到端模型:这些模型直接将声学特征转换为词序列,集成了声学和语言模型的功能。这种简化减少了潜在的攻击载体,增强了系统安全性。包括CTC、Transducer和Attention模型。

自然语言处理(NLP):NLP使机器能够理解和操作自然语言输入。它的发展已经从基于规则的模型发展到统计模型,再到像Word2vec和BERT这样的基于神经网络的模型,反映了行业向更复杂、上下文感知处理的转变。

说话人验证:与VCS的传统用途不同,说话人验证专注于识别说话者而不是解释语音内容。它包括说话人识别(SI)和说话人验证(SV),后者确认说话者的身份。在核心层,说话人验证与标准VCS不同,它通过确定潜在说话者的概率,因此需要专门讨论其安全影响。

​​​​​​​1.4 服务层

在理解了核心层中用户的意图之后,VCS在服务层做出响应。利用自然语言生成(NLG),系统通过文本或通过文本到语音(TTS)技术以听觉方式传达所需信息。技术进步已经扩大了VCS的能力,包括第三方服务,实现了更复杂的功能。然而,这种扩展引入了新的安全挑战,例如增加暴露于数据泄露和利用服务漏洞的风险,需要强大的安全措施。

2、对VCS的攻击及防御

VCS对一系列攻击的脆弱性,源于其复杂的架构,这在每一层都可能存在潜在的漏洞。为了使系统设计者能够全面了解这些威胁,本节深入探讨了针对VCS的攻击的性质,从威胁模型、攻击指标和攻击目标的角度进行检查

2.1 物理层

VCS的物理层在将声音信号转换为数字格式中起着关键作用。这一转换过程涉及通过空气等传输媒介将声音信号传输到麦克风设备,然后将其数字化。然而,由于传输通道中缺乏信号验证以及麦克风设备易受操纵,这一层容易受到多种攻击。

2.1.1 攻击方法

针对传感器的攻击

  • 激光信号:利用激光调制,攻击者可以通过超过100米的距离向VCS系统传输恶意指令。
  • 电磁波:通过耳机线、充电端口、电源线等传导路径,向VCS系统注入电磁波,并利用非线性放大器将电磁波转换为恶意指令。

声音合成攻击

物理层的声音合成攻击与传感器攻击不同,它们主要利用人耳听不到但大多数麦克风可以接收的超声波信号。这些攻击利用了这样一个事实:高于20千赫兹的超声波可以通过非线性放大器在被麦克风接收后解调,从而干扰VCS的正常功能。

  • 超声波信号:利用超声波信号与麦克风进行非线性调制,在VCS系统中产生恶意指令。
  • 电流信号:通过开关电源产生的电流波动,生成可被麦克风检测到的超声波信号,从而攻击VCS系统。

2.1.2 防御方案

  • 硬件防护:使用无法接收超声波信号的麦克风,类似于iPhone 系列麦克风使用遮光罩保护麦克风免受激光攻击,或在现有VCS产品中添加信号检测器识别电磁信号麦克风阵列可以计算不同麦克风处声波的衰减率,识别超声波起源的语音命令
  • 软件防护:在VCS中添加认证机制,如签名认证,用来检测和防御转换攻击。
  • 端到端防护:通过传输、转换和认证三个阶段的防护,可以有效防止物理层攻击。

2.2 预处理层

在VCS中,预处理层对于提炼从物理层获得的数字信号至关重要。这一层的主要功能是过滤和增强通常包含人声和背景噪声的音频信号。例如,G.729 [132] 这样的语音活动检测算法被用来隔离包含人类语音的部分,随后应用低通滤波器以减少噪声并提高VCS的识别能力。除了降噪,这层还负责使用诸如DFC、MFCC、LPC、MFCS和PLP等技术从音频信号中提取相关特征,为后续的音素、字符或单词序列识别做准备。然而,这些特征提取过程中的漏洞已被识别出来,允许攻击者执行声音合成和对抗性攻击,欺骗VCS

2.2.1 攻击方法

语音合成攻击: VCS预处理层的声音合成攻击利用技术创建特定的语音模式,这些模式可能被误解为合法指令。这些攻击可以利用VCS系统中信号处理和特征提取的弱点。例如,攻击者可以通过替换目标语音中的辅音音素来生成看似有语法错误的语音,但实际上仍然可以被VCS系统正确识别。

对抗攻击: 对抗攻击涉及在原始音频样本中引入微小的扰动,以欺骗VCS系统。这些扰动对人类听起来微不可闻,但足以导致VCS系统产生错误的识别结果。对抗攻击通常在特征提取阶段引入扰动,以破坏VCS系统对特征的理解和利用。

2.2.2 防御方案

防御VCS预处理层中的声音合成攻击涉及两种主要策略:检测和预防。

  • 检测指的是系统识别攻击并向用户发出警报的能力。如使用像CAPTCHA 这样的验证机制,系统在执行语音命令之前请求用户提供验证响应。
  • 预防是指调整VCS滤波器以稍微降低音频质量可以破坏合成音频,这些音频通常缺乏鲁棒性,同时仍然保留对人声的真实语音的识别 。

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

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

相关文章

【校园网网络维修】当前用户使用的IP与设备重定向地址中IP不一致,请重新认证

出现的网络问题:当前用户使用的IP与设备重定向地址中IP不一致,请重新认证 可能的原因: 把之前登录的网页收藏到浏览器,然后直接通过这个链接进行登录认证。可能是收藏网址导致的ip地址请求参数不一致。 解决方法: 方法…

LCD屏入门(基于ESP32)

主要参考资料: B站【乐鑫全球开发者大会】DevCon23 #17 |HMI 智能屏解决方案 目录 1.LCD屏幕硬件层2.LVGL驱动层 1.LCD屏幕硬件层 MCU常用的驱动接口在下面,大致可以划分为串口屏和并口屏。 串口屏相较于并行屏优势是占用IO少,相…

pcdn服务器应该怎么配?

要配置PCDN(Private Content Delivery Network)服务器,可以按照以下步骤进行: 需求分析:明确业务需求,确定所需的CDN功能和性能参数。这包括预期的流量、负载、内容类型、目标用户群体等。 硬件选择&#…

Xunsearch:实现拼音搜索和中文分词功能

首先我们需要安装xunsearch扩展库,参考 1、设置分词器和拼音搜索功能 在创建Xunsearch对象后,可以设置相应的分词器和拼音搜索功能。以下代码示例演示了如何设置分词器和拼音搜索功能: $index $xunsearch->index; $index->setToken…

[ue5]建模场景学习笔记(1)——混合材质

卷首:这部分会记录建模场景等相关学习内容,与ue引擎学习笔记不同的是,可能会略过一些基础内容,因为部分知识在blender中已经学习过了,不再继续记录。 1.需求分析: 想构建一个山地的场景,在ue5中…

10款AI工具,让工作生活学习更高效

我看大家都推荐的差不多了,常见好用的PC软件就那些,我不想反复“咀嚼”了,我想另辟蹊径推荐点不一样的,比如10款PC端的AI网站。AI已经全方位“侵入”我们的生活,从AI写作到AI绘画,从AI视频到AI语音&#xf…

详解makefile中addprefix

在 Makefile 中,$(addprefix prefix,names…) 是一个函数,用于将指定的前缀添加到一组空格分隔的文件名中。这个函数通常用于将相同的前缀添加到一组文件名或路径中,非常适合在 Makefile 中进行路径拼接操作。 语法: makefile C…

【小呆的力学笔记】连续介质力学的知识点回顾二:应变度量

文章目录 3. 格林应变与阿尔曼西应变 3. 格林应变与阿尔曼西应变 变形体在变形前的线元 O A → \overrightarrow{OA} OA ,在变形后变成 o a → \overrightarrow{oa} oa ,那么应变应该度量这种线元变形前后的差别。 ∣ o a → ∣ 2 − ∣ O A → ∣ 2 …

linux学习(六)

1.网络管理 (1)查看 ifconfig: root用户可以查看网卡状态, 普通用户: /sbin/ifconfig(需要加上命令的完整路径) (2)修改网络配置 通过命令修改网络配置 设置网卡的ip地址;禁用网卡和启用网卡了。 添加网关: (3)网络故障查询 ①ping 检测当前主机和目标主机是…

allure测试报告用例数和 pytest执行用例数不相同问题

我出现的奇怪问题: pytest执行了9条用例,但是测试报告确只显示3条用例 我将其中的一个代码删除后,发现allure测试报告又正常了 我觉得很奇怪这个代码只是删除了二维数组的第一列,我检查了半天都找不到问题,只有降低版本了。导致原因:allure-pytest版本使用的是最新版本,…

【Game】Powerful

文章目录 【小伙伴】隐藏小伙伴 【百趣集】【人物属性点】【宠物打造】【奇遇】【钓鱼】 【小伙伴】 刷新位置 小伙伴等级详情 克制关系 隐藏小伙伴 1、仙缘小伙伴(6种) 遇到仙缘驭宠师然后进入战斗抓取 107、七彩仙凤 108、小青兔 109、小布 110、黑腹蛛…

JAVA基础----线程池

①什么是线程池? 线程池是对所有线程进行统一的管理和控制,从而提高系统的运行效率。当我们要使用线程的时候可以直接从线程池中拿,用完也不用自己去销毁,省去创建和销毁的时间,提升系统的响应时间。 ②线程池的七大核…

linux安装srs

获取srs cd /opt git clone -b 4.0release https://gitee.com/ossrs/srs.git cd srs/trunk 启动srs ./objs/srs -c conf/srs.conf ./etc/init.d/srs status 访问http://192.168.220.146:8080/出现下方图片说明安装成功 点击进入SRS控制台看到下方图片

Java 中BigDecimal传到前端后精度丢失问题

1.用postman访问接口,返回的小数点精度正常 2.返回到页面里的,小数点丢失 3.解决办法,在字段上加注解 JsonFormat(shape JsonFormat.Shape.STRING) 或者 JsonSerialize(using ToStringSerializer.class) import com.fasterxml.jackson.a…

pelican,一个超强的 Python 库!

更多Python学习内容:ipengtao.com 大家好,今天为大家分享一个超强的 Python 库 - pelican。 Github地址:https://github.com/getpelican/pelican 在当今数字化时代,博客已经成为个人和企业分享信息、展示成果的重要途径。静态网站…

【最优化方法】实验二 一维搜索方法的MATLAB实现

实验二  一维搜索方法的MATLAB实现 实验的目的和要求:通过本次实验应使学生掌握如何使用MATLAB软件进行一维搜索,并学会对具体问题进行分析。 实验内容: 1、0.618法的MATLAB实现 2、Fibonacci法的MATLAB实现 学…

Jetpack架构组件_1.基本知识

1.什么是Jetpack? Jetpack 是一个由多个库组成的套件,可帮助开发者遵循最佳做法、减少样板代码并编写可在各种 Android 版本和设备中一致运行的代码,让开发者可将精力集中于真正重要的编码工作。Jetpack 包含一系列 Android 库,它…

6-继承

6-继承 1、基本语法和方式2、继承的基本特点2.1 三种继承方式相同的基本点2.2 三种继承方式的差别2.3 公有继承的独有特点 3、子类的构造、析构3.1 子类的构造3.2 子类的析构3.3 子类的拷贝构造函数3.4 子类的拷贝赋值 4、多重继承4.1 内存布局4.2 类型转换4.3 名字冲突问题 5、…

EtherCAT协议概述

EtherCAT 是由德国 BECKOFF 自动化公司于2003年提出的实时工业以太网技术。它具有高速和高数据有效率的特点,支持多种设备连接拓扑结构。其从站节点使用专用的控制芯片,主站使用标准的以太网控制器。 EtherCAT 的主要特点如下 : ①泛的适用性&#xff0c…

Python3 笔记:Python的turtle库

Python的turtle库是一个用于绘制图形的库。 举例: import turtle turtle.bgcolor(white) turtle.width(2) sides5 colors["red","yellow","blue","orange","green","purple"] for x in range(60):tu…