Behavioral Acoustic Emanations:Attack and Verification of PIN Entry Using Keypress Sounds

《Behavioral Acoustic Emanations: Attack and Verification of PIN Entry Using Keypress Sounds》(Sensors) 2020

摘要

  • 许多输入设备(Entry Devices, PEDs)使用短数据串(PIN、密钥或密码)作为验证用户合法性的手段
  • 本文提出了一种对4-6位随机PIN密钥的侧信道攻击,以及一种PIN密钥用户验证方法
  • 两次击键之间的间隔从声音中提取,并用于训练机器学习模型的特征
  • 攻击模型有60%的几率恢复PIN密钥。验证模型在识别用户上具有88%的准确度
  • 本文攻击方法可以通过声音作为侧信道,低成本地破解密钥。相对应的,本文的验证方法可以提高PIN输入设备的安全性

介绍

  • 个人识别码(PIN)密钥或数字密码广泛用于资源受限的环境中,PIN密钥基本上是较短的数据串,普遍用于用户认证和验证

  • 本文旨在分析现代PED的安全漏洞,例如ATM键盘或POS终端键盘;PIN输入时间很短,这使得信息推断非常具有挑战性

  • 首先,本文研究推测PIN密钥的可能性——记录PED键盘的击键声音,提取用于预测PIN的特征。其次,本文研究这些击键声音用于提高PED安全水平的可能性,如果每个用户在输入PIN密钥时表现出独特的行为,该行为可以视为另类的指纹,用于验证密钥持有者身份

  • 本文贡献

    • 利用PED键盘产生的声音,对随机的六位密码进行密码恢复攻击
    • 将击键声音作为用户身份的验证方法

声学侧信道PIN恢复

威胁模型

  • 考虑一个工业食堂中的自助结账机,当顾客结账时,顾客需要输入一些信息(如电话号码或其他按键),此时麦克风会记录击键声,收集关于用户特征的数据
  • 若系统使用用户的习惯性打字模式训练,它就提示用户输入他的借记卡和PIN码,以预测相应的按键

方法

  • 由四个系统组成:数据收集,特征提取,时频分析,声学/数据分析

    image-20220315132254238

数据收集

  • 在ATM PIN输入设备上进行实验,使用视频麦克风记录器记录发出的声音

    image-20220315132608060
  • 用户要记住一个六位的PIN,反复练习直到熟悉击键模式。之后,将PED放在记录工具下,要求用户输入记忆的PIN

  • 在输入下一个PIN序列之前,当前的PIN序列要连续输入四次

  • 候选的PIN列表由四个PIN组成,包括范围从短,长,对角线的所有可能的转换

  • 构建一个包含15个用户的音频信号存储库,每个用户输入四个不同的pin总共四次

特征提取

  • 声音信号中的不同区域可以与特定事件相关联,特别是按压和释放

  • 对相应事件的距离和相似性度量进行评估,公式如下

    image-20220315150648910
  • 下图显示了MatLab中构建的特征提取控制台。通过使用快速傅里叶变换来生成特征向量,并得出有用的特征

    image-20220315150858768 image-20220315150844142 image-20220315150943429

时频分析

  • 相关性

    • 使用MATLAB的xcorr函数,来计算功率归一化的两个声学信号的互相关

    • 两个信号是f和g,离散互相关测量f和g的移位拷贝之间的相似性——如果f和g的长度不同,函数会在较短的向量末尾附加零

    • 函数xcorr根据参数lag的不同,产生不同的输出

    • 选择所有参数lag下最大的互相关值

      image-20220315160155307 image-20220315160126511
  • 基于频率的距离

    • 测量两个信号频谱的欧几里得距离,来计算两个信号之间的频域距离

    • 通过计算0.4-22kHz之间的FFT系数得到频谱

    • 两个信号f和g之间的频率距离如下所示

      image-20220315160449625

机器学习模型

  • 基于时频分析提取的特征,用不同的机器学习模型训练

  • 模型

    • 高斯贝叶斯
    • 逻辑斯蒂回归
    • SVM
    • 本文的数据集可以被标记为正例和负例:如果PIN是由用户1输入的,将其标记为正,否则将其标记为负。
    • 从原始声音数据中提取了10种特征,包括:击键间潜伏期、保持时间、击中峰值、释放峰值、按压时间、释放时间、按压音量、释放音量、按压谱、释放谱
    • 证明可以使用声音来恢复PIN——只训练一个逻辑回归模型
    • 在用户验证上,三种模型都用到了
  • 评估指标:FAR、FRR、TAR

    • FAR:系统错误地接受未授权用户的访问尝试的可能性

      image-20220315165154942
    • FRR:系统错误地拒绝授权用户的访问尝试的可能性

      image-20220315165208248
    • TAR:安全系统将正确接受授权用户的访问尝试的可能性

      image-20220315165226286

实验和结果

  • 实验步骤

    image-20220315173411386
  • 时间频率分析

    • 实验结果表明,对击键声音做简单的互相关分析就可以得知正确的按键
    • 如果模型在多个用户上训练,然后针对特定用户进行测试,攻击效果很差,这是因为不同的用户有不同的打字风格
    • 如果模型不在PIN训练,攻击效果也很差,这是因为手指触碰按键的习惯和之前按下的键有关
    image-20220315173603314
  • 数据分析

    • 逻辑回归模型,采用成对的互相关矩阵作为特征输入,输出预测的击键

      image-20220315181043414
    • 结果如下

      image-20220315181122193

通过输入PIN的声音验证用户身份

基于声学分析的身份认证

  • 下图显示了在同一PED设备上输入相同的PIN时,两个不同用户的击键变化。连接点表示平均延迟,垂直线表示相应转换需要的延迟范围

    image-20220315181713961

威胁模型

  • 数据分析和结果

    • Gaussian Naïve Bayes classifier with Latency features:

      • every PIN sequence is encoded into a feature vector by extracting the latencies associated with all the five transitions in the six-digit numbered PINs. This vector is then fed into a Gaussian Naïve Bayes classifier that trains itself to output the predicted users.

        image-20220315183604830
      • 结果如下

        image-20220315183532238
    • Gaussian Naïve Bayes classifier with Latency and Hold features:

      • 考虑特征向量由延迟和基于保持的特征组成的情况

      • 保留从上一节收集的特征集,并将其与保持时间的特征连接

        image-20220315184114552

      • 结果有所提升

    • Logistic Regression with latency and hold features:

      • 使用基于延迟和保持的特征作为输入

      • 本模型达到最高精度

        image-20220315184457120
    • Support Vector Machine with Latency and Hold:

      • 评估SVM的分类效果

      • 性能和高斯朴素贝叶斯相似,但不如逻辑回归准确

      • 结果如下

        image-20220315184324047

  • 实验结果汇总:

    image-20220315184710152

总结