- 1、本文档共30页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
事务内存机制与系统安全研究.PDF
事务内存机制与
系统安全研究
林璟锵
中国科学院信息工程研究所
华中科技大学“网络空间安全青年科学家论坛”
武汉,2017-5-26
事务内存机制
•Transactional Memory事务内存机制
• 高性能计算领域,1993年
• M. Herlihy and J. Moss, “Transactional memory: Architectural
support for lock-free data structures,” in 20th International
Symposium on Computer Architecture (ISCA).
事务内存机制vs. 加锁
• 多线程共享数据的读写
• 加锁 【常见做法】,不论冲突或者不存在——红绿灯
• 访问共享数据前,一律加锁
• 事务内存——环岛
• 直接进入
Picture from /~boutcher/stm/
事务内存机制——事务执行
• 执行在“事务内存状态”的二进制代码
• 维护Write-Set和Read-Set
• 在事务执行期间,如有如下事件,会有回滚Abort 、
保证原子性:
• 其它线程读取Write-Set
• 其它线程写入Write-Set或者Read-Set
• 否则,线程之间的数据共享出现问题
• Abort Handler
• 回滚等异常处理
一点澄清
• Memory 内存
• 有2个概念:
• Address Space/Memory Space
• RAM Chip
• 事务内存机制,几乎与RAM Chip没有任何关系
• 是对Address Space 的控制
• Address Space 的控制,通常实现在CPU、北桥、BIOS
• RAM Chip有实现数据访问的控制吗?——题外话
• If yes, will be another BIG topic
事务内存的实现
• 软件:OS支持
• 硬件:CPU支持
• Intel TSX, 2013
系统安全研究的角度(一)
• 事务内存
1. 跟踪任务的内存数据访问
2. 触发回滚
• 实现内存地址空间的控制
• 实现任务之间的通信机制(硬件事件触发)
系统安全的永恒题目
• 软件安全,内存控制权的争夺
• X Overflow
• Control flow hijack
• Data Leakage
• ……
TMI——CCS 2008
by Arnar Birgisson, Mohan Dhawan, et al.
• Software-based Transactional Memory (STM)
• 图中,虚线表示权限检查;实线表示事务内存
• 直接扩展STM功能:“事务代码”提交时,检查权限
• 需要访问重要资源的代码,设定为“事务执行”
• 同时具有恢复功能:越权访问时,回滚
Picture from TMI, CCS 2008
TMI——CCS 2008
• 扩展STM 的功能,只能针对Software-based TM
• 利用OS底层现成的事务内存控制
• 基础假设是OS系统功能的安全性
• 应用软件系统的常见访问控制和授权实现,依赖于“应用
软件自身代码”、没有与OS底层密切结合
TxIntro——HPCA 2014
by Y. Liu, Y. Xia, et al.
• Kernel Rootkit检测,基于Intel TSX
•VM Kernel 的关键数据结构,作为VMI工具运行代码
的Read-Set
• 当数据被改动时,自动触发转入VMI分析,检测Kernel
Rootkit
• 挑战:
• 有限容量的Read-Set
文档评论(0)