Design of the Kernel Hardening Function for Stability the Linux Operating System

리눅스 운영체제 안정화를 위한 커널 하드닝 기능 설계

  • 장승주 (동의대학교 컴퓨터공학과)
  • Published : 2005.10.01

Abstract

This paper is based on the study to reduce a system panic state. A panic state could be caused by a programmer or an administrator's careless mistake. The proposed hardening Operating System of this paper stops the process which is running in the kernel with an error. The error process for the value type and the address type of a certain variable have to be restored. Installed with kernel hardening, Operating System checks the recovery possibility of the process first and then restores the process which can be recovered. When it is possible to recover the kernel code with an error, it is to be recovered in ASSERT() function.

본 논문은 리눅스 커널 운영체제에서 커널 개발자의 실수나 의도하지 않은 오류 및 시스템 오류로 인하여 발생되는 시스템 정지 현상을 줄이기 위한 커널 하드닝 기능을 설계한다. 본 논문에서 제안하는 커널 하드닝 기능은 문제가 발생한 커널 부분을 수행 중인 프로세스에 대한 동작을 정지시키는 기능과 오류가 발생한 코드에 대한 변수 값이나 주소 값이 가진 특정한 값을 복구시키는 기능을 가진다. 커널 하드닝 기능에서 문제가 있는 모든 프로세스를 무조건 복구하는 것이 아니라 복구 가능성을 판별하여, 복구 가능한 프로세스에 대해서만 복구 될 수 있도록 한다. 또한 오류가 발생한 커널 코드에 대해서 복구 가능한 경우에는ASSERT() 함수에서 복구가 가능하도록 설계하였다.

Keywords

References

  1. 권수호, Linux programming bible, pp20-35, 글로벌, 2002
  2. 장승주, 김해진, 김길용, '마이크로 커널 기반 운영 체제에서 고장 감내 연구', pp.408-411, 한국정보터리학회 추계학술발표 논문집 제3권 제2호, 1996
  3. Jeffery Oldham & Alex Samuel, Advanced Linux Programming, pp45-55, Mark Mitchell, 2001
  4. John Mehaffey, Montavista Linux Carrier Grade Edition[WHITE PAPER], Montavista Software Inc., April 8, 2002
  5. Tim Udalll, 'kernel Hardening Guidelines', SEQUOIA, 1994
  6. SILBERSCHA TZ&GALVIN&GAGNE, Operating System Concepts(6th), JOHNWILEY&SONGS INC. 2002
  7. Software Fault Tolerant, http://user.chollian.net/~hsn3/korea/study_k2.htm, 2000
  8. http://www.mvista.com/cge/index.html, 2002
  9. Michael Beck, Mirko Dziadzka, Ulrich Kunitz and Harald Bohme, Linux Kernel Internals, Addison-Wesley, 1997
  10. The Linux Online, http://www.inlux.org
  11. Gary Nutt, Kernel Projects for Linux, Addison Wesley L-ongman, 2001
  12. A.Rubini&J.Corbet, Linux Device Drvier (2nd), O'Reily, 2001
  13. BOVET & CESATI, OREILLY, Understanding the Linux Kernel, p216-p222, 2001
  14. Tim Udalll, 'kernel Hardening Guidelines', SEQUOIA, 1994