DOI QR코드

DOI QR Code

A Protection Technique for Kernel Functions under the Windows Operating System

윈도우즈 운영체제 기반 커널 함수 보호 기법

  • Back, Dusung (Dept. of Computer Science and Engineering, Chonbuk National Univ.) ;
  • Pyun, Kihyun (Dept. of Computer Science and Engineering, Chonbuk National Univ.)
  • Received : 2014.04.19
  • Accepted : 2014.08.07
  • Published : 2014.10.31

Abstract

Recently the Microsoft Windows OS(operating system) is widely used for the internet banking, games etc. The kernel functions provided by the Windows OS can perform memory accesses, keyboard input/output inspection, and graphics output of any processes. Thus, many hacking programs utilizes those for memory hacking, keyboard hacking, and making illegal automation tools for game programs. Existing protection mechanisms make decisions for existence of hacking programs by inspecting some kernel data structures and the initial parts of kernel functions. In this paper, we point out drawbacks of existing methods and propose a new solution. Our method can remedy those by modifying the system service dispatcher code. If the dispatcher code is utilized by a hacking program, existing protection methods cannot detect illegal operations. Thus, we suggest that protection methods should investigate the modification of the dispatcher code as well as kernel data structures and the initial parts of kernel functions.

오늘날 마이크로소프트사의 윈도우즈 운영체제는 가장 널리 사용되고 있고 인터넷 뱅킹, 게임 등 수많은 응용들에 널리 활용되고 있다. 윈도우즈 운영체제가 제공하는 커널 함수들은 실행되고 있는 임의의 프로세스들의 메모리 접근, 키보드 입출력 검사, 그래픽 출력 검사 등을 수행할 수 있기 때문에 많은 해킹 프로그램들이 이 기능들을 악용하여 메모리 해킹, 키보드 해킹, 불법적 게임 자동사냥 도구 제작 등의 목적으로 악용하고 있는 실정이다. 기존 보안 방식은 커널 데이터 구조나 커널 함수의 시작 부분의 변형을 검사하는 방식으로 해킹 프로그램의 존재 여부를 판별한다. 본 논문에서는 기존 보안 방법의 문제점을 지적하고, 이를 해결할 수 있는 새로운 방식을 제안한다. 이 방식은 시스템 서비스 디스패쳐 코드를 변형하는 방식으로 기본 보안 방식의 문제점을 보완할 수 있다. 이 서비스 디스패쳐 코드를 해킹 프로그램이 활용하게 되면 기존 보안 프로그램이 해킹 행위를 검출하지 못한다. 따라서 커널 데이터 구조나 커널 함수의 시작 부분뿐만 아니라 디스패쳐 코드의 변형 또한 보안 프로그램에서 검출해야 해야 한다.

Keywords

References

  1. Greg Hoglund, Jamie Butler, "Rootkits: Subverting the Windows Kernel", Chapter 4 - Chapter 5, Addison-Wesley, 2005
  2. ME Russinovich, DA Solomon, A Ionescu, "Windows Internals", Microsoft Press., 2012
  3. Jeffrey Richter, "Programming Applications for Microsoft Windows", Microsoft Press., 1999
  4. Galen Hunt, Doug Brubacher, "Detours: Binary Interception of Win32 Functions", Proceedings of the 3rd USENIX Windows NT Symposium, Vol. 3, pp. 14-23, 1999

Cited by

  1. An Efficient On-line Software Service based on Application Customized Graphic Offloading Library vol.16, pp.5, 2015, https://doi.org/10.7472/jksii.2015.16.5.49