【论文阅读】基于符号执行的软件缓存侧信道脆弱性检测技术

本文介绍了基于符号执行的软件缓存侧信道脆弱性检测技术,通过动态符号执行获取程序traces,定位依赖secret的分支代码和访存操作作为可疑脆弱点。关键阶段包括可疑脆弱点定位、差分代码执行逻辑和数据内存访问脆弱点的可利用性判断。系统实现中,利用angr-ANA进行动态符号执行和脆弱点定位,isExploitable模块判断可利用性。

【论文阅读】基于符号执行的软件缓存侧信道脆弱性检测技术


电子学报 2019 杨超
本文提出基于符号执行的缓存侧信道脆弱性检测技术,通过符号化敏感信息的数据传播过程定位潜在的脆弱点,并通过比较其可能的不同缓存访问地址,判断上述代码在缓存攻击中的可利用性. 本文开发了原型系统 CSCVulDiscover,并针对 RSA 等 3 种密码算法的 12 类实现代码进行测试,总共发现了 125 个脆弱点.
cacheD缺点:
( 1) 只关注 secret 依赖的访存操作地址,未考虑 secret 依赖的访存行为( 见图 2) ;
( 2) 判断脆弱性的符号条件往往无法包含 secret 的所有约束,仅用求解结果作为判断依据将降低其准确性( 见 4. 3 节的示例程序) ;
( 3) 未研究依赖于 secret 的程序控制流的脆弱性

根据缓存的不同利用方式,可以将缓存侧信道脆弱性分为以下两类.
1、基于差分代码执行逻辑的脆弱点 ( 指令缓存 )
请添加图a片描述
2、基于差分数据内存访问的脆弱点 ( 数据缓存 )
请添加图片描述

本文的检测代码脆弱性的方法:
本文提出一种基于符号执行的软件缓存侧信道脆弱性检测技术,整体思路如图 3 所示:
请添加图片描述
1、首先基于动态符[7 ]号执行技术获取程序 traces( 执行轨迹) ,然后符号化secret,针对每条 trace 应用符号执行技术,定位所有依赖于 secret 的分支代码或访存操作为可疑的脆弱点,
2、结合这些 traces 判断基于差分代码执行逻辑的脆弱点的可利用性,同时利用可疑脆弱点的符号约束求解技术和具体执行技术,判断基于差分数据内存访问的脆弱点的可利用性.
该技术有以下三个关键阶段:

  1. 可疑脆弱点定位
    采用 PosVulLocator 算法定位可疑脆弱点
  2. 基于差分代码执行逻辑脆弱点可利用性判断
    需要定位分支汇聚点。本文提出一种基于路径比较的分支汇聚点定位法,改进了 BranchTailLocator 算法,提出基于同一函数层面的 trace 比较法,在比对 trace 时,仅考虑其在分支开始的函数层面内的部分,不对比被调用函数的代码细节
  3. 基于差分数据内存访问脆弱点可利用性判断
    访存类型分析、目标地址分
### 全球3G网络频段分配概述 全球3G网络的频段分配基于不同的技术和标准,主要包括WCDMA(UMTS)、cdma2000以及TD-SCDMA等技术体系。以下是各主要频段及其用途: #### WCDMA(UMTS)频段 WCDMA作为主流的3G技术之一,在全球范围内广泛使用,其频段划分如下: - **Band I (IMT)**:1920–1980 MHz / 2110–2170 MHz 这一频段主要用于FDD模式下的下行链路和上行链路分离操作[^1]。 - **Band II (PCS)**:1850–1910 MHz / 1930–1990 MHz 主要用于北美地区的3G部署,属于个人通信业务(PCS)的一部分。 - **Band V (Cellular)**:824–849 MHz / 869–894 MHz 此频段适用于农村地区或其他需要广覆盖的应用场景。 #### cdma2000频段 对于采用cdma2000技术的国家和地区来说,则有另外一套特定的工作频率安排: - **BC0**: 824–849 MHz / 869–894 MHz 类似于WCDMA中的Band V,也侧重于提供广泛的地理区域覆盖能力。 - **BC1**: 1850–1910 MHz / 1930–1990 MHz 同样服务于美国及其他部分美洲市场的移动通信需求。 #### TD-SCDMA频段 在中国主导开发并推广使用的TD-SCDMA制式下,所利用的是单独指定给该系统的特殊频带区间: - **A频段**:2010–2025 MHz - **E频段**:2300–2400 MHz 这些频段的选择充分考虑到与其他现有无线通讯系统的兼容性和干扰最小化原则。 ### 技术发展影响因素分析 随着新一代通信技术如5G甚至未来的6G逐步推进,原有3G频谱资源面临着重新规划调整的压力。例如中国联通正在实施策略转型过程中涉及到了对既有2G网络设施拆除后释放出来的宝贵频谱加以再利用的情况描述可以参见相关内容说明[^1];而针对更高阶别的下一代通信技术研发方向探讨则可以从关于6G候选工作频域范围讨论中获得启示[^2]。此外值得注意的是人工智能技术融入通信领域所带来的变革效应同样不可忽视——通过智能化手段实现更加高效灵活的频谱管理和调度方式将成为未来发展的重要趋势之一[^3]。 ```python bands_3g = { 'WCDMA': [ {'name': 'Band I', 'uplink': '1920–1980 MHz', 'downlink': '2110–2170 MHz'}, {'name': 'Band II', 'uplink': '1850–1910 MHz', 'downlink': '1930–1990 MHz'} ], 'cdma2000': [ {'name': 'BC0', 'uplink': '824–849 MHz', 'downlink': '869–894 MHz'}, {'name': 'BC1', 'uplink': '1850–1910 MHz', 'downlink': '1930–1990 MHz'} ] } def display_bands(): for tech, bands in bands_3g.items(): print(f"{tech} Bands:") for band in bands: print(f"- {band['name']}: Uplink-{band['uplink']} Downlink-{band['downlink']}") display_bands() ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值