[论文解读] CSI Neural Network: Using Side-channels to Recover Your Artificial Neural Network Information
本文展示了侧信道分析——通过功耗测量——可以在嵌入式系统上逆向工程多层感知器神经网络,仅用一次测量即可恢复激活函数、网络架构细节、权重甚至输入。该攻击在实际的ARM Cortex-M3硬件上具有可行性,表明在缺乏侧信道防护的情况下,神经网络知识产权面临暴露风险。
Machine learning has become mainstream across industries. Numerous examples proved the validity of it for security applications. In this work, we investigate how to reverse engineer a neural network by using only power side-channel information. To this end, we consider a multilayer perceptron as the machine learning architecture of choice and assume a non-invasive and eavesdropping attacker capable of measuring only passive side-channel leakages like power consumption, electromagnetic radiation, and reaction time. We conduct all experiments on real data and common neural net architectures in order to properly assess the applicability and extendability of those attacks. Practical results are shown on an ARM CORTEX-M3 microcontroller. Our experiments show that the side-channel attacker is capable of obtaining the following information: the activation functions used in the architecture, the number of layers and neurons in the layers, the number of output classes, and weights in the neural network. Thus, the attacker can effectively reverse engineer the network using side-channel information. Next, we show that once the attacker has the knowledge about the neural network architecture, he/she could also recover the inputs to the network with only a single-shot measurement. Finally, we discuss several mitigations one could use to thwart such attacks.
研究动机与目标
- 研究仅通过被动侧信道泄漏(如功耗)恢复神经网络参数的可行性。
- 评估针对嵌入式系统中实际神经网络实现的侧信道攻击的实用性。
- 证明攻击者可仅从侧信道痕迹中重构完整的神经网络架构,包括权重和激活函数。
- 展示在已知网络架构后,仅用一次侧信道测量即可恢复网络输入。
- 提出并评估掩码化和恒定时间实现等对策,以保护神经网络免受此类侧信道泄漏影响。
提出的方法
- 该攻击使用简单功耗分析(SPA)和差分功耗分析(DPA),从ARM Cortex-M3微控制器上神经网络推理过程中的功耗痕迹中提取信息。
- 通过分析指数运算等操作中与输入值相关的非恒定时间行为,识别激活函数。
- 通过在乘法运算中将功耗痕迹与未知权重的假设进行相关性分析,恢复权重。
- 通过分析功耗痕迹中操作的结构和序列,推导出网络层数、每层神经元数及输出类别数。
- 在架构重建后,应用高精度攻击(HPA)仅用一次侧信道痕迹恢复秘密输入。
- 对策包括掩码化(计算过程中随机化敏感数据)和操作的恒定时间实现,以消除数据依赖性泄漏。
实验结果
研究问题
- RQ1能否利用侧信道功耗痕迹恢复部署在嵌入式系统上的多层感知器神经网络的架构?
- RQ2从功耗测量中,激活函数和权重的逆向工程程度如何?
- RQ3在神经网络架构重建后,是否可能仅用一次侧信道痕迹恢复网络输入?
- RQ4标准侧信道对策(如掩码化和恒定时间实现)在保护神经网络方面的有效性如何?
- RQ5现代微控制器(如ARM Cortex-M3)如何影响此类侧信道攻击的可行性和实用性?
主要发现
- 攻击者通过检测指数运算中与数据相关的时序变化,成功恢复了神经网络中使用的激活函数。
- 通过分析功耗痕迹中操作的序列和结构,重构了网络的层数、每层神经元数及输出类别数。
- 通过在乘法运算中将功耗痕迹与未知权重的假设进行相关性分析,攻击者恢复了网络中的所有权重。
- 在应用高精度攻击(HPA)后,攻击者仅用一次侧信道测量即恢复了网络输入,前提是架构已重建。
- 该攻击额外需要约20秒的测量时间,且随网络规模呈线性可扩展性,证明了良好的可扩展性。
- 掩码化和恒定时间实现等对策被证明有效,但伴随显著的性能和面积开销。
更好的研究,从现在开始
从论文设计到论文写作,大幅缩短您的研究时间。
无需绑定信用卡
本解读由 AI 生成,并经人工编辑审核。