Heap과 Stack 영역에서의 경계 체크를 통한 Buffer Overflow공격 방지 기법에 대한 연구

  • 손태식 (아주대학교 정보통신공학과 정보통신 및 시큐리티 연구실) ;
  • 서정택 (ETRI 부설 국가보안기술연구소) ;
  • 은유진 (아주대학교 정보통신공학과 정보통신 및 시큐리티 연구실) ;
  • 장준교 (아주대학교 정보통신공학과 정보통신 및 시큐리티 연구실) ;
  • 이철원 (ETRI 부설 국가보안기술연구소) ;
  • 김동규 (아주대학교 정보통신공학과)
  • Published : 2001.12.01

Abstract

인터넷 기술의 발전은 정보화 사회로의 촉진이라는 측면 외에 사용 인구의 증가에 따라 해킹, 바이러스·악성 코드의 유포 등 그 역기능적인 측면이 점점 심각한 사회 문제로서 대두되고 있다. 현재 공개 운영체제로 각광 받고 있는 리눅스(Linux) 운영체제의 경우 운영체제 커널은 물론이거니와 관련 프로그램들에 대한 소스가 공개되어 단순한 기술 습득의 목적이 아닌 악의의 목적을 가진 사용자들에 의한 시스템 침해 사례가 빈번한 추세이다. 특히 이러한 시스템 침해 사례 중 프로그램 작성 과정의 오류 및 설계상 실수로 인한 버퍼 오버플로우(Buffer Overflow) 취약성을 이용한 공격은 해킹에 있어 큰 범주를 차지하고 있다. 따라서 본 논문에서는 버퍼 오버플로우 공격에 있어 그 기반이 되는 스택을 이용한 버퍼 오버플로우 및 스택 외에 힙과 같은 메모리 영역을 이용하는 공격 유형에 대하여 분석한다. 그 후 이러한 버퍼 오버플로우 공격 방지를 위한 메모리에서의 경계 검사 기법을 제안하고자 한다. 추후에는 본 논문에서 제안된 기법에 대한 실제 구현과 검증이 필요하다.

Keywords

References

  1. Phrack v.7 no.49 Smashing The Stack For Fun And Profit. Aleph One
  2. Apache HTTP Server version 2.0 Documentation A pache HTTP server Documentation project
  3. Libsafe: Protecting Critical Elements of Stacks Baratloo, A.;T. sai;t. Singh, N.
  4. Pharck v.10 no.56 Bypassing StackGuard and StackShield Bullba;Kil3r
  5. MIME Conversion Buffer Overflow in Sendmail Versions 8.8.3 and 8.8.4 CERT Advisory CA-1997-05
  6. Multiple Vulnerabilities in BIND CERT Advisory CA-2001-02
  7. 7th USENIX Security Symposium Automatic Detection and Prevention of Buffer_Overflow Attacks Cowan, C.;Pu, C.;D., Hinton;H., Bakke;P., Beattie;S., Grier;A., Wagle;P., Zhang Q.
  8. DARPA information Survivability Conference and Exposition, 2000. DISCEX'00. proceedings v.2 Buffer overflows attacks and defenses for the vulnerability of the decade Cowan, C.;Wagle, F.;Pu, C.;Beattlie, S.;Walpole, J.
  9. The Frame Pointer Overwrite v.9 no.55 klog
  10. Format String Attacks Newsham, Tim
  11. Red hat Linux Security Advisory
  12. Phrack v.10 no.56 Taking advantage of okno-terminated adjacent memory spaces twitch
  13. Secure Programming for Linux and Unix HOWTO Wheeler, D.
  14. CERT coordination center
  15. Proceedings of the 7th USENIX SEcurity Conference StackGuard:automatic adaptive detection and prevention of buffer-overflow attakcs Crispin Cowan;Calton Pu;Dave Maier;Heather Hiltom;Peat Bakke;Steve Beattie;Aaron Grier;Perry Wagle;Qian Zhang
  16. Stack Overwriting attacks and defences in unix environment Ville Alkkiomaki
  17. Openwall Project Linux kernel patch from the openwall project
  18. Proceedings 7th Network and Distributed System Security Symposium A first step towards automated detection of buffer overrun vulnerabilities David Wagner;Jeffrey S. Foster;Eric A. Brewer;Alexander Aiken
  19. Defeating solar designer non-executable stack Rafel Wojtczuk
  20. How to Write Buffer Overflows
  21. Compliers:Principles, Techniques and Tools Alfred V. Aho;R. Hopcroft;Jeffrey D. Ullman
  22. Linux Expo Protecting Systems from Stack Smashing Attacks with StackGuard Crispin Cowan;Steve Beattie;Ryan Finnin Day;Calton Pu;Perry Wagle;Erik Walthinsen
  23. IEEE Symposium on Security and Privacy StackGuard 1.1: Stack Smashing Protection for Shared Libraries Crispin Cowan;Tim Chen;Calton Pu;Perry Wagle
  24. Non-Executable User Stack Solar Designer
  25. Bugtraq mailing list Nasty security hole in lprm Chris Evans
  26. Stack Smashing vulnerabilities in the UNIX Operating System Nothan P. Smith
  27. Defeating Solar Designer Non-Executable Stack Patch Bugtraq mailing list Rafel Wojtczuk
  28. Tool Interface Standard(TIS) Executable and Linking Format(ELF) Specification V.1.2 TIS Committee