期刊文献+

SafeBird:一种动态和透明的运行时缓冲区溢出防御工具集 被引量:6

SafeBird:A Dynamic and Transparent Toolkit for Run-Time Buffer Overflow Preventions
下载PDF
导出
摘要 通过多种技术的有效运用,本文提出了一种动态和透明的运行时缓冲区溢出防护工具集SafeBird,其包含SIET,LibsafeXP和SLI三个工具.SIET用于从可执行文件ELF的符号表中抽取全局变量的起始地址和大小信息.Lib-safeXP作为对Libsafe扩展的动态链接库,包含C标准库中所有与缓冲区有关的函数的封装.这些封装的函数通过SIET提供的有关全局变量的信息,动态截获的有关堆变量的信息和以栈帧指针动态确定的栈变量的信息来防御缓冲区溢出攻击.SLI主要用于非干扰地完成对动态链接库函数的截获和注入LibsafeXP到被保护进程.与已有方法相比,SafeBird对被保护程序更透明:它工作在二进制级,既不需要源程序或者调试信息,也不需要终止和重起被保护软件.性能和有效性测试表明:SafeBird可以有效地应用于动态的缓冲区溢出防御,而且性能代价也平均只有10%. This paper presents a dynamic and transparent toolkit, SafeBird, to defend against run-time buffer overflows by combining several techniques. SafeBird consists of three tools: SIET, LibsafeXP and SLI. SIET extracts the size and starling address information of program global variables from the symbol section of ELF executable file. LibsafeXP, a dynamic shared library and an extension to Libsafe,contains wrapper functions for all the buffer related C Standard Library functions. These wrapper functions are enforced to check the source and target buffer's size using the following information:global buffer knowledge provided by SIET, heap buffer knowledge by intercepting/tracking memory allocation family functions,and stack buffer bound information by dynamically determined from the frame pointer. The third tool SLI is used to accomplish the function interception and inject the shared library, LibsafeXP, into the running process online without interruption. Compared with existing approaches, SafeBird is more transparent to programs:it works on binary mode,and neither requires the source code or any debug information, nor needs to stop/restart the protected software. Performance and effectiveness evaluations indicate that SafeBird could be used to prevent run-time buffer overflow attacks efficiently, and imposes only about 10 percent overhead on average.
出处 《电子学报》 EI CAS CSCD 北大核心 2007年第5期882-889,共8页 Acta Electronica Sinica
基金 国家863高技术研究发展计划(No.2003AA144010) 国家自然科学基金(No.60373064) 江苏省自然科学基金(No.BK2004093)
关键词 计算机安全 软件安全 程序漏洞 缓冲区溢出 computer security software security software vulnerability buffer overflows
  • 相关文献

参考文献18

  • 1NIST,National Vunerability Database[DB/OL].http://nvd.nist.gov.2006-05-01. 被引量:1
  • 2A Baratloo,N Singh,T Tsai.Transparent run-time defense against stack smashing attacks (Libsafe -Libverify)[A].In Proc of 2000 USENIX Annual Technical Conference (USENIX'00)[C].San Diego,California,USA:Usenix Association,2000. 被引量:1
  • 3S Clowes.Injectso:Modifying and spying on running processes under linux[A].In Black Hat Briefings[C].Black Hat Multimedia,2001. 被引量:1
  • 4M L Nohr.Understanding ELF Object Files and Debugging Tools[M].USA:Prentice Hall,Computer Books.1993. 被引量:1
  • 5T Cormen,C Stein,R Rivest,C Leiserson.Introduction to Algorithms[M].USA:MIT Press,2002. 被引量:1
  • 6C Cowan,C Pu,et al.StackGuard:automatic adaptive detection and prevention of buffer-overflow attacks[A].Proc of the 7th USENIX Security Symposium (Security'98)[C].Usenix Association,1998.63-78. 被引量:1
  • 7R Lee,D Karig,et al.Enlisting hardware architecture to thwart malicious code injection[A].Proc of Security in Pervasive Computing[C].Boppard,Germany,2003.237-252. 被引量:1
  • 8O Ruwase,M S Lam.A practical dynamic buffer overflow detector[A].Proc of the 11th Annual Network and Distributed System Security Symposium(NDSS'04)[C].San Diego,USA,2004.159-169. 被引量:1
  • 9N Dor,M Rodeh,M Sagiv.CSSV:towards a realistic tool for statically detecting all buffer overflows in C[A].Proc of the ACM SIGPLAN 2003 Conference on Programming Language Design and Implementation (PLDI'03)[C].San Diego,California,USA:ACM society,2003.155-167. 被引量:1
  • 10J Newsome,D Song.Dynamic taint analysis for automatic detection,analysis,and signature generation of exploits on commodity software[A].Proc of the 12th Annual Network and Distributed System Security Symposium (NDSS'05)[C].San Diego,California,USA,2005. 被引量:1

同被引文献89

  • 1夏耐,郭明松,茅兵,谢立.基于简化控制流监控的程序入侵检测[J].电子学报,2007,35(2):358-361. 被引量:5
  • 2David Brumley,et al.RICH:Automatically protecting against integer-based vulnerabilities .In Proceedings of the 14th Annual Network and Distributed System Security Symposium(NDSS’07) .Reston,VA:Internet Society,2007.351-363. 被引量:1
  • 3Vulnerability Type Distributions in CEV .http://cve.mitre.org/docs/vuln-trends/vuln-trends.pdf,May,2007. 被引量:1
  • 4Rafal Wojtczuk.UQBTng:a tool capable of automatically finding integer overflows in Win32 binaries .22nd Chaos Communication Congress .Bielefeld:Verlag Art d'Ameublement,2005.16-21. 被引量:1
  • 5T Wang,T Wei,Z Lin, W Zou.IntScope:automatically detecting integer overflow vulnerability in x86 binary using symbolic execution .Proceedings of the 16th Annual Network and Distributed System Security Symposium(NDSS’09) .San Diego,CA:Internet Society,2009.208-221. 被引量:1
  • 6David Molnar,Xue Cong Li,David Wagner.Dynamic test generation to find integer bugs in x86 binary linux programs .Proceedings of the USENIX’09 Annual Technical Conference .San Jose,CA,USA:USENIX Association,2009.67-82. 被引量:1
  • 7C.-K.Luk,et al.Pin:building customized program analysis tools with dynamic instrumentation .In PLDI’05 .Chicago,IL,USA:ACM,2005.190-200. 被引量:1
  • 8Michael James Van Emmerik.Static single assignment for decompilation .Master Thesis of The University of Queensland,2007. 被引量:1
  • 9Integer overflow in parse decode path() of slocate .http://www.cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2003-0326,2003. 被引量:1
  • 10Integer overflow in zgv-5.8. .http://www.cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2004-1095,2004. 被引量:1

引证文献6

二级引证文献14

相关作者

内容加载中请稍等...

相关机构

内容加载中请稍等...

相关主题

内容加载中请稍等...

浏览历史

内容加载中请稍等...
;
使用帮助 返回顶部