观察 | 探秘App“偷听”(二)低功耗监听并提取关键字的可行性分析

  • A+
所属分类:逆向工程
观察 | 探秘App“偷听”(二)低功耗监听并提取关键字的可行性分析
观察 | 探秘App“偷听”(二)低功耗监听并提取关键字的可行性分析

扫码订阅《中国信息安全》杂志

权威刊物 重要平台 关键渠道

邮发代号 2-786


● App治理工作组 邓诗智

在本系列文章第一篇中,笔者分析了App窃听用户语音的技术可行性,链接:观察 | 探秘App“偷听”(一)技术可行性分析,可得知,App直接通过麦克风进行窃听的概率较小,而且手机操作系统等通过透明及限制机制极大降低了这种风险。但是,随着语音识别技术的发展,采用服务进程进行“低功耗”识别语音并转换成文字的方式是否可用于“偷听”成为大家关注的焦点,毕竟在5G时代,不光是处理器效率不断提高,数据传输的速度和成本给这种行为制造了可行空间。就比如很多人提出,语音识别功能需要24小时对环境进行监听,直至触发进一步进行识别的关键字,这种方式也存在滥用的可能。本文将针对这种“监听并提取关键字”的方式,从技术角度分析其可行性,并给广大用户一些建议。


1.“监听并提取关键字”实现原理探讨


实现“监听并提取关键字”的核心技术就是语音识别,目前已经非常普及和高效,比如微信就有语音转文字功能(图1),科大讯飞也有这样的功能,而且支持25种方言和12个语种,小于60秒的短音频,可以实时转化为文字(图2)。


观察 | 探秘App“偷听”(二)低功耗监听并提取关键字的可行性分析

   图1 微信的语音转文字功能 


观察 | 探秘App“偷听”(二)低功耗监听并提取关键字的可行性分析

 图2 科大讯飞的语音识别能力介绍


很多语音识别公司都提供SDK用于实现语音向文本的转换,利用这些SDK,App很容易就能实现微信类似的语音转文字功能,通过设定关键字等规则对转换后的文字进行过滤,从而提取出需要的用户信息,再通过网络传输到App的后台服务器,具体实现原理图如图3。
观察 | 探秘App“偷听”(二)低功耗监听并提取关键字的可行性分析

图3 “关键字提取窃听”可能的实现原理



2.“监听并提取关键字”的可行性分析

为了验证上述原理的可行性,可以将可行性的验证问题分解为两个核心问题:

1. 在用户无感情况下,App能持续录音获取周围声音数据;

2. App录音和语音识别过程中的可操作性:耗电量是否过高。
(1)可行性验证:无感录音
据本专题文章(一)分析可知,为避免极高的法律风险和实现成本,获取录音权限后进行录音,这里讨论的App已经具有录音权限,重点关注用户无感的情况下是否可以做到长时间录音。笔者编写测试程序,模拟录音程序(如图4) 
观察 | 探秘App“偷听”(二)低功耗监听并提取关键字的可行性分析

图4 无感录音测试App程序(安卓版本)


观察 | 探秘App“偷听”(二)低功耗监听并提取关键字的可行性分析

图5 无感录音测试App录音时无通知


编写测试App,其功能设计如下:点击按钮即开始录音,松开继续后台录音,以保证用户无感(Android 9版本Google Pixel 3手机,实验结果:用户无任何提示,包括通知栏,见图5),测试条件为:程序置于前台、程序置于后台、手机锁屏,测试时间:10分钟。最终的实验结果见表1。

表1 无感录音实验结果

测试条件(录音10分钟)

实际获取麦克风录音时

App置于前台(手机未锁屏)

10分钟(均采集到数据)

App置于前台(手机锁屏)

1分钟(剩余9分钟均未采集到数据)

App置于后台(手机未锁屏)

1分钟(剩余9分钟均未采集到数据)

App置于后台(手机锁屏)

1分钟(剩余9分钟均未采集到数据)


从上述实验结果得到,正如专题文章(一)的结论一样,静默录音最长也只能获取麦克风1分钟左右的时间。还有一种可能,就是App可以内置录音功能,并通过设定特定的逻辑,引导用户主动点击启动录音功能,同时,手机未锁屏并且将App置于前台,才能以实现长时间的无感录音。显然,这种方式非常低效,很难实现。


(2)可操作性验证:耗电量分析


耗电量主要在于录音和语音识别两部分,针对语音识别,主要采用第三方SDK实现,这些SDK模块也进行了大量优化,因此短期耗电量是在可控范围之内,因此,主要考察长时间录音的耗电量。
对于录音功能,采样率和比特率是重要的参数,直接影响耗电量,具体来说就是CPU和内存使用效率和占用时间,下面就从实际应用角度出发,进行不同采样率和比特率的实验,验证低功耗窃听的可能性。其结果见表2,其中采样率表示每秒钟的采样次数。比特率表示用数字量来量化模拟量的时候的精度。 

表2 无感录音实验结果

序号

录音文件

(格式/大小)

采样率

比特率

录音

时间

录音时的外部环境

电量消耗


1


M4a/112.39M

48khz

256 kbps 立体声

1小时

歌曲循环

音量中等

6%


2


M4a/20.79M

8khz

48 kbps 立体声

1小时

歌曲循环

音量中等

5%

3

3gp

8khz

1小时

真实环境

比较安静

3%-4%

4

不录音

1小时

真实环境

比较安静

1%

从实验结果看,低功耗长时间录音的耗电量事实上不是很大,如果App采用低功耗长时间录音方式可能用户是较难察觉的。但是,如果多个App、多个SDK同时使用该方式,能耗会很大,手机发热发烫完全有可能。


3.观点与建议

综上,App“监听并提取关键字”理论的可行性是存在的,但有如下条件:


1. App自带录音功能,并且获取录音权限;

2. App置于前台,并且不锁屏


从这个条件来看,用户长期在前台使用的App便具备“监听并提取关键字”的能力。但是,这种行为并不改变其具有“高技术门槛、高商业成本、高法律风险”的本质,是一种性价比很差的模式。


此外,最新的手机操作系统不断强化对“录音”的权限使用的透明性,事实上上述行为的暴露可能性会很大,因此反过来来看其出现的可能性会很小。

有以下具体建议,供大家参考:


1. 更新手机操作系统到最新版本;

2. 使用App发语音、录音等功能时,结束录音后不使用App时,切换到主界面(将App置于后台)或者锁屏。



 结语 

技术能给我们带来便捷、智能,就会伴随着风险,也就是说,任何技术都有可能被拿来滥用。因此,只是觉得技术有风险,便因噎废食并非解决问题的路径,科学地分析风险、处置风险,将风险控制在可接受范围,技术就能给我们带来进步,创造价值。

(来源:App治理工作组)


观察 | 探秘App“偷听”(二)低功耗监听并提取关键字的可行性分析
观察 | 探秘App“偷听”(二)低功耗监听并提取关键字的可行性分析
观察 | 探秘App“偷听”(二)低功耗监听并提取关键字的可行性分析
观察 | 探秘App“偷听”(二)低功耗监听并提取关键字的可行性分析

扫码关注我们

更多信息安全资讯

请关注“中国信息安全”

本文始发于微信公众号(中国信息安全):观察 | 探秘App“偷听”(二)低功耗监听并提取关键字的可行性分析

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: