论文部分内容阅读
随着移动互联网的普及,智能手机不仅仅是一个用来打电话沟通的工具,还承担着社交、电子金融和网络购物等任务。因此用户隐私信息泄漏问题一直是网络安全研究中的重要话题。目前Android和iOS两大主流手机操作系统均允许应用程序自由读取动作传感器数据而无需用户许可。而近年的研究表明,通过采集智能手机内置传感器数据,可以从中推测出用户的输入内容,从而对用户的隐私安全造成显著威胁。本文主要研究基于智能手机内置的加速度传感器、陀螺仪传感器、方向传感器等动作传感器的用户隐私安全问题。针对现有研究基于传感器数据时域特征的PIN码推测准确率较低的问题,本文提出了一种新型的传感器数据频域特征提取算法—改进的MFCC算法。在此基础上构建了一种基于时域频域特征相结合的PIN码推测通用框架。该框架通过手机内置动作传感器采集按键数据并进行预处理,使用改进的MFCC算法提取频域特征,结合时域特征共同对神经网络算法中的多层感知机模型进行训练并推测用户PIN码。最后本文设计并实现了原型系统,对该框架的可行性进行了验证。本文主要工作内容如下:(1)研究Android和iOS操作系统的手机内置传感器安全机制,对动作传感器的权限控制机制进行了安全性分析。研究了机器学习中数据采集、预处理、特征提取、模型训练等各个阶段的理论和算法,并对本文将会使用的几种分类算法做了分析。(2)在传感器数据采集方面,本文提出了一种基于Web和NodeJS的跨平台多终端手机传感器数据采集方法。该方法可通过手机浏览器运行采集程序将传感器数据实时传输到后台服务器存储。为了解决不同平台下传感器采样率不同导致的数据差异,本文使用三次样条插值算法对传感器数据做平滑滤波预处理得到一致的数据样本。(3)在特征提取方面,本文提出一种改进的MFCC算法来提取动作传感器数据频域特征。该算法考虑动作传感器信号与语音信号均具有频域能量分布集中、信号特异性强的相似特性,针对动作传感器信号自身特点,去除原MFCC算法中预加重和汉明窗口的处理,推导了动作传感器信号0-4kHz频域范围内Mel弯折公式,提取出动作传感器信号的频域特征。(4)在模型训练方面,本文基于神经网络中的多层感知机算法建立分类模型,选择ReLU作为激活函数,Adam为优化算法,通过反向传播算法进行训练。(5)设计并实现了基于时域频域特征相结合的PIN码推测原型系统。该系统由传感器数据采集系统、机器学习推测系统、PIN码推测概念验证程序构成。可在Android和iOS平台下采集PIN码输入时的动作传感器数据样本,使用不同超参数对多层感知机模型进行迭代训练得到最佳结果,在XSS模拟攻击环境下实现PIN码推测。本文通过在校园里随机邀请的方式采集了10k个样本进行训练,经测试表明该系统在iOS和Android平台下PIN码4次推测准确率分别达到94.34%和91.28%,优于现有研究4次推测准确率43%-71.6%的结果。(6)针对通过传感器推测PIN码可能导致隐私泄漏的安全风险,本文提出一种基于噪声注入的防御措施,通过在传感器数据中加入可编程控制的自适应噪声来抵御基于动作传感器的隐私窃取。经测试表明在引入该防御措施后PIN码识别的准确率降低到19.3%。进一步,本文还从操作系统设计、应用程序开发、用户使用等方面的安全改进进行探讨。