[论文解读] Cache Telepathy: Leveraging Shared Resource Attacks to Learn DNN Architectures
论文提出 Cache Telepathy,一种缓存侧信道攻击,通过将超参数映射到 BLAS 库中的 GEMM 参数来推断 DNN 架构,极大地缩小 架构搜索空间。
Deep Neural Networks (DNNs) are fast becoming ubiquitous for their ability to attain good accuracy in various machine learning tasks. A DNN's architecture (i.e., its hyper-parameters) broadly determines the DNN's accuracy and performance, and is often confidential. Attacking a DNN in the cloud to obtain its architecture can potentially provide major commercial value. Further, attaining a DNN's architecture facilitates other, existing DNN attacks. This paper presents Cache Telepathy: a fast and accurate mechanism to steal a DNN's architecture using the cache side channel. Our attack is based on the insight that DNN inference relies heavily on tiled GEMM (Generalized Matrix Multiply), and that DNN architecture parameters determine the number of GEMM calls and the dimensions of the matrices used in the GEMM functions. Such information can be leaked through the cache side channel. This paper uses Prime+Probe and Flush+Reload to attack VGG and ResNet DNNs running OpenBLAS and Intel MKL libraries. Our attack is effective in helping obtain the architectures by very substantially reducing the search space of target DNN architectures. For example, for VGG using OpenBLAS, it reduces the search space from more than $10^{35}$ architectures to just 16.
研究动机与目标
- 激发 MLaaS 中架构信息泄露的风险,以及为何 DNN 超参数是有价值的攻击目标。
- 展示 DNN 推理映射为分块 GEMM 运算,其参数揭示架构细节。
- 演示在通用 CPU 上基于缓存的侧信道攻击以恢复 DNN 架构。
- 提供一种将超参数映射到 GEMM 参数并通过映射约束来裁剪架构搜索空间的方法。
提出的方法
- 分析 DNN 层类型(全连接和卷积)如何映射到 GEMM 矩阵大小和块。
- 开发一种使用 Prime+Probe 与 Flush+Reload 的 Cache Telepathy 攻击,以监控 GEMM 执行并从 BLAS 实现中提取 m、n、k。
- 使用超参数与矩阵参数之间的映射来进行架构的反向推断。
- 检查层间连接(捷径/分支)以通过 GEMM 约束识别非序列连接。
- 通过探测缓存访问模式识别激活函数,区分 sigmoid 与 ReLU 家族。
- 通过利用映射和层连接中的约束来裁剪架构搜索空间。
实验结果
研究问题
- RQ1缓存侧信道信息是否能够揭示 DNN 的层数、层大小和激活函数?
- RQ2如何从常见 BLAS 库中的 GEMM 参数轨迹推断 DNN 的超参数?
- RQ3在多大程度上可以通过缓存为基础的观测来减少潜在架构的搜索空间?
- RQ4在常见的 DNN 后端中,激活函数是否可通过缓存时序差异区分?
- RQ5攻击者是否需要同处一个物理位置或共享库才能成功推断架构?
主要发现
- Cache Telepathy 通过暴露对应超参数的 GEMM 参数来降低 DNN 架构搜索空间。
- 对于使用 OpenBLAS 的 VGG,搜索空间从超过 10^35 种架构缩小到 16 种。
- 该攻击针对在通用处理器上运行 OpenBLAS 和 Intel MKL 的 DNN。
- 该方法将 DNN 超参数映射到 GEMM 的维度和计数,从而实现对架构的精确逆向工程。
- 通过针对具体实现细节(例如 sigmoid)的缓存探针可以区分激活函数。
- 该方法可应用于常见的 ML 框架(TensorFlow、Caffe、Theano、MXNet)和后端(OpenBLAS、MKL)。
更好的研究,从现在开始
从论文设计到论文写作,大幅缩短您的研究时间。
无需绑定信用卡
本解读由 AI 生成,并经人工编辑审核。