基于LLVM的栈数据保护 |
| |
引用本文: | 沈达宇,黄皓.基于LLVM的栈数据保护[J].教育技术导刊,2012,11(8):129-132. |
| |
作者姓名: | 沈达宇 黄皓 |
| |
作者单位: | 南京大学软件新技术国家重点实验室;南京大学计算机科学与技术系; |
| |
摘 要: | 传统的栈保护都是对栈中的返回地址等控制数据进行保护,并没有对栈中的数据进行保护。提出了对栈数据保护机制的基本思想是对内存中的数据进行随机化。通过对程序的修改,插装新的指令,使得保存到内存上的数据随机化。这种方式能有效地阻止非控制数据的破坏,甚至起到一定效果的内存数据隐私保护。基于开源的LLVM编译器系统平台,实现了一个编译优化Pass模块,在获取源文件时经过该Pass模块优化后生成的可执行程序能够免受非控制数据攻击的危害。
|
关 键 词: | 软件安全 非控制数据 LLVM Pass模块 数据随机化 |
|
| 点击此处可从《教育技术导刊》浏览原始摘要信息 |
| 点击此处可从《教育技术导刊》下载免费的PDF全文 |
|