#arm-mte

共收录 1 条相关安全情报。

← 返回所有主题
👥 作者: Floris Gorter, Taddeus Kroes, Herbert Bos, Cristiano Giuffrida

空间内存错误(如缓冲区溢出)在C/C++程序中依然是最常见的漏洞类型之一。尽管已有大量研究,但即使部分缓解方案的实际性能开销仍然过高,难以在生产环境中部署。为了降低成本,近年来的解决方案转向硬件辅助技术,例如Arm的内存标记扩展(MTE)。然而,现有MTE方案面临两大挑战:一是频繁的内存(重新)标记导致较高开销,尤其是在栈上;二是依赖随机内存标签的保密性,仅提供概率性的安全保证。本文首先通过实验证明随机标签的保护有限,攻击者可以通过推测执行(speculative probing)推断出内存标签。接着,作者提出StickyTags,一种确定性的MTE解决方案,能够高效缓解有界空间内存错误。StickyTags将栈和堆组织成按大小分类的区域,对每个区域应用预先确定的持久内存标签模式。这样,内存标签只需初始化一次,之后同一大小类的对象可以复用这些标签,从而消除了昂贵的重新标记开销。标签采用固定的循环分配方式,为每个对象周围提供较大的隐式空间防护。尽管防护大小受限于4位MTE的16种标签,但该保护是高效且确定性的。实验表明,StickyTags在SPEC CPU2006基准测试上实际运行时开销不超过4%,并且能完全缓解一个基于概率性MTE方案评估的8个空间CVE中的7个。该工作为低开销、确定性内存安全缓解提供了新思路。

💡 推荐理由: 该研究提出了一种低性能开销且具备确定性安全保证的空间内存错误缓解方案,有望推动硬件内存标签(如ARM MTE)在实际系统中的部署,对依赖C/C++的底层安全加固具有重要参考价值。

🎯 建议动作: 研究跟进

排序因子: 来自网络安全顶级会议 (+8) | Community 数据源 (+1) | LLM 评分加成 (+0.5)