论文部分内容阅读
旁路攻击利用程序运行过程中,执行程序的硬件平台所泄露出的信息来实现攻击。随着旁路攻击技术的不断提升,其危害性在不断提高,可应用的场景也愈发广泛。Cache攻击是一种典型的旁路攻击方式,其利用实现加密操作的平台的缓存特性来窃取与加密相关的信息,能够对几乎所有现代微处理器上加密程序实施攻击,因此,Cache攻击被普遍的应用于密码分析领域,已成为一种十分有效的密码分析手段。现有的Cache攻击检测技术通过分析攻击的软件级特性来进行检测,大体可以分为两类,第一类是通过分析攻击实施的行为特征实现攻击检测;第二类是通过机器学习中的异常检测方法进行攻击检测。这些检测技术在一定程度上可以实现对Cache攻击的检测,但是存在局限性。本文提出基于行为的Cache攻击技术,分析Cache攻击过程中的缓存访问行为特征,结合机器学习技术实现对Cache攻击的检测。论文主要包含的工作如下:(1)本文设计并实现了一个有效的Cache攻击检测系统,根据攻击进程和良性进程访问Cache的行为差异,将系统上运行的进程分为良性和攻击进程,从而实现Cache攻击的检测。(2)为了能够精确的获取攻击进程和良性进程访问Cache的行为信息,本文使用硬件性事件表征进程访问Cache的行为,并对硬件性能计数器编程以实现硬件性能事件收集以及监视的目的。(3)为了有效的、自动地进行Cache攻击检测,本文采用BP神经网络分类算法训练分类模型,通过实际的数据样本进行多次实验,选取最优的BP网络算法参数并对BP网络算法进行优化,以提高分类检测的精确度。在实验结果分析中,对比现有的两种检测方法的检测效果,验证了本检测系统的有效性;评估检测系统的负载,验证了系统的可行性。