DOI QR코드

DOI QR Code

Implementation of the Kernel Hardening Function in the Linux Kernel

리눅스 커널에서 하드닝 기능 구현

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

Abstract

A panic state is often caused by careless computer control. It could be also caused by a kernel programmer's mistake. When panic is occurred, the process of the panic state has to be checked, then if it can be restored, operating system restores it, but if not, operating system runs the panic function to stop the system in the kernel hardening O.S. To decide recovery of the process, the type of the panic for the present process should be checked. The value type and the address type have to restore the process. If the system process has a panic state, the system should be designed to shutdown hardening function in the Linux operating system.

본 논문은 리눅스 커널 운영체제에서 커널 개발자의 실수나 의도하지 않은 오류 등으로 인하여 발생되는 시스템 정지 현상 또는 시스템 패닉 현상을 줄이기 위한 커널 하드닝 구현 내용을 제안한다. 본 논문에서 제안하는 커널 하드닝 기능은 문제가 발생한 리눅스 커널 부분을 수행중인 프로세스를 정지시킴으로써 안정적인 커널 수행을 보장한다. 그러나 커널 하드닝 기능을 구현할 경우에 문제가 있는 모든 프로세스를 무조건 복구하는 것이 아니라 복구 가능성을 판별하여, 복구 가능한 프로세스에 대해서만 동작이 되도록 한다. 오류가 발생한 커널 코드에 대해서 복구 가능한 경우에는 ASSERT( ) 함수에서 복구가 가능하도록 구현되었다.

Keywords

References

  1. 권수호, Linux programming bible, 글로벌, pp.20-35, 2002
  2. 장승주, 김해진, 김길용, '마이크로 커널 기반 운영체제에서 고장 감내 연구', 정보처리학회 추계학술발표대회논문집, 제3권 제2호, pp.408-411, 1996
  3. Jeffery Oldham and Alex Samuel, Advanced Linux Programming, pp.45-55, Mark Mitchell, 2001
  4. John Mehaffey, Montavista Linux Carrier Grade Edition [WHITE PAPER], Montavista Software Inc., April, 2002
  5. Tim Udalll, 'kernel Hardering Guidelines,' SEQUOIA, 1994
  6. SILBERSCHATZ&GALVIN&GAGNE, Operating System Concepts(6th), JOHNWILEY&SONGS INC., 2002
  7. Software Fault Tolerant, http;//user.chollian.net/~hsn3/korea/study_k2.html, 2000
  8. http;//www.mvista.com/cga/index.html, 2002
  9. Ichael Beck, Mirko Dziadzka, Ulrich Kunitz and Harald Bohme, Linux Kernel Internals, Addison-Wesley, 1997
  10. The Linux Online, http://www.linux.org
  11. Gary Nutt, Kernel Projects for Linux, Addison-Wesley L-ongman, 2001
  12. A. Rubini and J. Corbet, Linux Device Drivser(2nd), O'Relly, 2001
  13. BOVET and CESAT, OREILLY, Understanding the Linux Kernel, pp.216-222, 2001
  14. G. B. Adams III and H. J. Siegel, 'The Extra Stage Cube : A Fault-Tolerant Interconnection Network for Supersystems', IEEE Trans. on Comput, Vol. C-31, No. 5, pp. 443-454, May 1982 https://doi.org/10.1109/TC.1982.1676021
  15. Beck, Linux kernel Programming, ADDISON WESLEY, pp.2-5, 2002