SafeBird:一种动态和透明的运行时 缓冲区溢出防御工具集 |
| |
作者姓名: | 林志强 王逸 茅兵 谢立 |
| |
作者单位: | 南京大学软件新技术国家重点实验室,南京大学计算机科学与技术系,江苏南京,210093;南京大学软件新技术国家重点实验室,南京大学计算机科学与技术系,江苏南京,210093;南京大学软件新技术国家重点实验室,南京大学计算机科学与技术系,江苏南京,210093;南京大学软件新技术国家重点实验室,南京大学计算机科学与技术系,江苏南京,210093 |
| |
基金项目: | 国家高技术研究发展计划(863计划),国家自然科学基金,江苏省自然科学基金 |
| |
摘 要: | 通过多种技术的有效运用,本文提出了一种动态和透明的运行时缓冲区溢出防护工具集SafeBird,其包含SIET,LibsafeXP和SLI三个工具.SIET用于从可执行文件ELF的符号表中抽取全局变量的起始地址和大小信息.LibsafeXP作为对Libsafe扩展的动态链接库,包含C标准库中所有与缓冲区有关的函数的封装.这些封装的函数通过SIET提供的有关全局变量的信息,动态截获的有关堆变量的信息和以栈帧指针动态确定的栈变量的信息来防御缓冲区溢出攻击.SLI主要用于非干扰地完成对动态链接库函数的截获和注入LibsafeXP到被保护进程.与已有方法相比,SafeBird对被保护程序更透明:它工作在二进制级,既不需要源程序或者调试信息,也不需要终止和重起被保护软件.性能和有效性测试表明:SafeBird可以有效地应用于动态的缓冲区溢出防御,而且性能代价也平均只有10%.
|
关 键 词: | 计算机安全 软件安全 程序漏洞 缓冲区溢出 |
文章编号: | 0372-2112(2007)05-0882-08 |
收稿时间: | 2006-05-23 |
修稿时间: | 2006-05-232006-12-08 |
本文献已被 CNKI 维普 万方数据 等数据库收录! |
| 点击此处可从《电子学报》浏览原始摘要信息 |
|
点击此处可从《电子学报》下载全文 |
|