基于内存篡改的攻击能够恶意地修改程序执行环境的关键数据,给程序提供一个安全可信的执行环境是抑制恶意软件的有效手段。本文提出了一种基于软硬件协同的解决方案,能够以函数调用为粒度,为程序执行提供相对隔离的安全执行环境。为了...基于内存篡改的攻击能够恶意地修改程序执行环境的关键数据,给程序提供一个安全可信的执行环境是抑制恶意软件的有效手段。本文提出了一种基于软硬件协同的解决方案,能够以函数调用为粒度,为程序执行提供相对隔离的安全执行环境。为了配合软件,在底层提供了2大硬件支撑:load/store指令在访存时都要进行地址检查,同时也设置了访问属性;在硬件页表上增加了函数调用隔离域(CFID),在TLB转换时进行安全隔离的检查。提供了2种不同场合的数据共享访问策略,在GEM5上实现了原型系统,通过运行安全测试集,能够有效地隔离非安全环境。相比于虚拟机和特权级切换的方法,本文的硬件实现几乎没有切换损耗。在SPEC CPU 2006的测试集中,本文提出的硬件隔离机制总体性能损耗低于3%。展开更多
文摘基于内存篡改的攻击能够恶意地修改程序执行环境的关键数据,给程序提供一个安全可信的执行环境是抑制恶意软件的有效手段。本文提出了一种基于软硬件协同的解决方案,能够以函数调用为粒度,为程序执行提供相对隔离的安全执行环境。为了配合软件,在底层提供了2大硬件支撑:load/store指令在访存时都要进行地址检查,同时也设置了访问属性;在硬件页表上增加了函数调用隔离域(CFID),在TLB转换时进行安全隔离的检查。提供了2种不同场合的数据共享访问策略,在GEM5上实现了原型系统,通过运行安全测试集,能够有效地隔离非安全环境。相比于虚拟机和特权级切换的方法,本文的硬件实现几乎没有切换损耗。在SPEC CPU 2006的测试集中,本文提出的硬件隔离机制总体性能损耗低于3%。