KR100755960B1 - 서비스 테이블 변조 감지 및 복원 시스템, 방법 그리고 그방법을 수행하는 프로그램이 기록된 컴퓨터 판독 가능한기록매체 - Google Patents

서비스 테이블 변조 감지 및 복원 시스템, 방법 그리고 그방법을 수행하는 프로그램이 기록된 컴퓨터 판독 가능한기록매체 Download PDF

Info

Publication number
KR100755960B1
KR100755960B1 KR1020060006457A KR20060006457A KR100755960B1 KR 100755960 B1 KR100755960 B1 KR 100755960B1 KR 1020060006457 A KR1020060006457 A KR 1020060006457A KR 20060006457 A KR20060006457 A KR 20060006457A KR 100755960 B1 KR100755960 B1 KR 100755960B1
Authority
KR
South Korea
Prior art keywords
service table
ntoskrnl
exe
table value
value
Prior art date
Application number
KR1020060006457A
Other languages
English (en)
Inventor
이희국
Original Assignee
엔에이치엔(주)
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 엔에이치엔(주) filed Critical 엔에이치엔(주)
Priority to KR1020060006457A priority Critical patent/KR100755960B1/ko
Application granted granted Critical
Publication of KR100755960B1 publication Critical patent/KR100755960B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1458Management of the backup or restore process
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • G06F15/163Interprocessor communication

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Storage Device Security (AREA)

Abstract

본 발명은 서비스 테이블 변조 감지 및 복원 시스템, 방법 그리고 그 방법을 수행하는 프로그램이 기록된 컴퓨터 판독 가능한 기록매체에 관한 것으로, 본 발명에 따른 서비스 테이블 변조 감지 및 복원 시스템은 ntoskrnl.exe를 메모리의 소정 영역에 로딩하는 ntoskrnl.exe 로딩부; 상기 로딩된 ntoskrnl.exe에 의해 익스포트되는 서비스 테이블 값을 저장하는 현재 서비스 테이블 데이터베이스; 상기 현재 서비스 테이블 값과 원본 서비스 테이블 데이터베이스에 미리 저장된 원본 서비스 테이블 값을 비교하는 서비스 테이블 비교부; 및 상기 현재 서비스 테이블 값과 원본 서비스 테이블 값이 다를 경우 이를 통보하는 변조 서비스 테이블 통보부를 포함하는 것을 특징으로 한다.
서비스 테이블, 변조, 커널, 후킹, 감지, 복원, Hooking, Rootkit

Description

서비스 테이블 변조 감지 및 복원 시스템, 방법 그리고 그 방법을 수행하는 프로그램이 기록된 컴퓨터 판독 가능한 기록매체{SYSTEM AND METHOD FOR SENSING AND RESTORING OF SERVICE TABLE MODIFICATION AND COMPUTER READABLE RECORDING MEDIUM STORING FOR A PROGRAM FOR PERFORMING THE METHOD}
도 1은 루트-킷을 이용한 KiServiceTable의 후킹을 설명하기 위한 예시도.
도 2는 윈도우즈 운영체제의 서비스 제공 방법을 설명하기 위한 블록도.
도 3은 KeServiceDescriptorTable의 어셈블 코드를 도시한 예시도.
도 4는 본 발명의 바람직한 실시예에 따른 서비스 테이블 변조 감지 및 복원 시스템을 설명하기 위한 블록도.
도 5는 본 발명의 바람직한 실시예에 따른 서비스 테이블 변조 감지 및 복원 방법을 설명하기 위한 흐름도.
도 6은 본 발명의 바람직한 실시예에 따른 서비스 테이블 변조 감지 및 복원 프로그램 화면의 예시도.
<도면의 주요부분에 대한 부호의 설명>
100 : ntoskrnl.exe 로딩부 110: 서비스 테이블 비교부
113 : 현재 서비스 테이블 DB 115 : 원본 서비스 테이블 DB
120 : 변조 서비스 테이블 통보부 130 : 서비스 테이블 복구부
본 발명은 서비스 테이블 변조 감지 및 복원 시스템, 방법 그리고 그 방법을 수행하는 프로그램이 기록된 컴퓨터 판독 가능한 기록매체에 관한 것이다.
최근에는 각종 문서와 데이터들이 컴퓨터를 통하여 디지털화되고 있으며, 이메일, 홈페이지, 블로그 등의 디지털 저장매체 발달에 따라 디지털화된 정보들이 인터넷상에 공유되고 있다. 더욱이, 유무선 인터넷 통신 기술의 지속적인 발전과 장비 구축에 따라 원하는 정보에 더욱 신속하고 용이하게 접근할 수 있게 되었다.
하지만, 이러한 인터넷을 통한 정보 접근 용이성은 사용자에게 편리성을 제공하는 반면, 상대방의 컴퓨터 시스템까지 접근하여 개인적인 정보를 빼내거나 컴퓨터 시스템의 오동작을 유발시킬 수 있다는 문제를 발생시키고 있다. 이와 같이 컴퓨터 시스템의 오동작을 유발하는 대표적인 예가 루트-킷(root-kit)이다.
루트-킷은 일반적으로 환경 파일을 변경하거나 시스템 파일을 변경함으로써, 공격자가 의도하는 기능을 수행하도록 하는 특징을 가진다. 사용자 영역(user-space)에 설치된 루트-킷의 경우 백신 프로그램에 의해 쉽게 감지될 수 있기 때문에, 최근에는 커널 영역(kernel-space)에 루트-킷을 설치하는 형태로 변형되고 있다.
윈도우즈에서 서비스가 제공되는 과정을 살펴보면, 우선 사용자 영역의 응용 프로그램이 서비스 제공을 위하여 다양한 DLL(Dynamic Link Library) 파일에 의해 익스포트되는 API(Application Programing Interface)들을 호출한다. 그리고, 호출된 API는 ntdll.dll에 의해 익스포트되는 Native API를 호출하여 커널 영역으로 동작이 넘어간다. 이후, 커널 영역에서는 ntoskrnl.exe에 의해 익스포트되는 KiServiceTable에 따라 적절한 함수가 호출되어 시스템 서비스를 제공한다.
즉, 응용 프로그램을 동작시키는 과정에 있어 커널 영역에서는 시스템 서비스를 제공하기 위하여 미리 준비된 KiServiceTable을 참조하는 형식을 취하는 것이다. 따라서, 도 1에 도시된 바와 같이 KiServiceTable의 값을 직접 변조하는 루트-킷이 설치된 경우(10)나 상기 KiServiceTable이 호출하는 함수에 전혀 다른 동작을 하도록 하는 함수로 점프할 수 있는 점프(jump)문을 첨가하는 루트-킷이 설치된 경우(20)에는, 원하는 응용 프로그램의 동작을 얻어낼 수 없으며, 의도하지 않았던 전혀 엉뚱한 프로그램이 동작하게 되거나 사용자의 프로그램 진행 상황이 루트킷 설치자에 의해 감시당할 수 있다는 위험이 존재한다.
본 발명은 상기의 문제점을 해결하기 위한 것으로, 커널 영역의 서비스 테이블을 주기적 또는 비주기적으로 확인함으로써, 상기 서비스 테이블이 조작되어 원하는 어플리케이션이 아닌 다른 동작이 이루어지는 것을 막고 손쉽게 변조된 부분을 복원함으로써 사용자의 정보노출이나 시스템 오동작을 막을 수 있는 서비스 테이블 변조 감지 및 복원 시스템, 방법 그리고 그 방법을 수행하는 프로그램이 기록된 컴퓨터 판독 가능한 기록매체를 제공하는 것을 목적으로 한다.
상기한 목적을 달성하기 위하여, 본 발명에 따른 서비스 테이블 변조 감지 및 복원 시스템은, ntoskrnl.exe를 메모리의 소정 영역에 로딩하는 ntoskrnl.exe 로딩부; 상기 로딩된 ntoskrnl.exe에 의해 익스포트되는 서비스 테이블 값을 저장하는 현재 서비스 테이블 데이터베이스; 상기 현재 서비스 테이블 값과 원본 서비스 테이블 데이터베이스에 미리 저장된 원본 서비스 테이블 값을 비교하는 서비스 테이블 비교부; 및 상기 현재 서비스 테이블 값과 원본 서비스 테이블 값이 다를 경우 이를 통보하는 변조 서비스 테이블 통보부;를 포함하는 것을 특징으로 한다.
본 발명의 실시예에 따른 서비스 테이블 변조 감지 및 복원 방법 및 그 방법을 수행하는 프로그램이 기록된 컴퓨터 판독 가능한 기록매체는, ntoskrnl.exe를 메모리의 소정 영역에 로딩하는 제 1 단계; 및 상기 로딩된 ntoskrnl.exe에 의해 익스포트되는 서비스 테이블 값과 미리 저장된 원본 서비스 테이블 값을 비교하는 제 2 단계;를 포함하는 것을 특징으로 한다.
이 실시예에 있어서, 상기 제 2 단계 이후에 상기 서비스 테이블 값과 상기 원본 서비스 테이블 값이 다른 경우 상기 원본 서비스 테이블 값으로 상기 서비스 테이블을 교체하는 제 3 단계;를 더 포함하는 것을 특징으로 한다.
상기 목적들 외에 본 발명의 다른 목적 및 이점들은 첨부한 도면을 참조한 실시예에 대한 상세한 설명을 통하여 명백하게 드러나게 될 것이다.
이하, 본 발명의 바람직한 실시예들은 도면을 참조하여 상세하게 설명하기로 한다.
도 2는 윈도우즈 운영체제의 서비스 제공 방법을 설명하기 위한 블록도이다.
도시된 바와 같이, 사용자 모드에서 어플리케이션들이 시스템 서비스(ReadFile)를 제공받기 위해서는 Native API(ZwReadFile)을 호출한다. 이때, Native API(ZwReadFile)는 Ntdll.dll에 익스포트된다. 그리고, Native API에서는 인터럽트 INT 2E(윈도우즈 2000 이하의 경우) 또는 SYSENTER(윈도우즈 XP의 경우)를 발생시켜, KiSystemService의 내부 함수를 호출한다.
그리고, 호출된 KiSystemService 함수는 KeServiceDescriptorTable을 참조하여 Native API에 해당하는 시스템 서비스 엔트리 포인터(System Service Entry Pointer)를 알아온다. 이때, KeServiceDescriptorTable은 커널 영역에서 제공하는 서비스가 배열된 형태로 구성된다.
좀 더 구체적으로, 상기 KiSystemService 함수를 호출할 때 EAX 레지스터에는 Native API에 해당하는 서비스의 인덱스가 넘어오며, 이값을 이용하여 KiSystemService 함수는 시스템 서비스 엔트리 포인터를 찾는다. 그리고, 상기 서비스 테이블의 엔트리 포인터를 이용하여 상기 Native API에서 호출하는 해당 서비스 루틴의 주소를 알아내고, 서비스를 제공하게 된다.
도 3은 KeServiceDescriptorTable의 어셈블 코드를 도시한 예시도이다.
KeServiceDescriptorTable은 서비스 디스크립터 엔트리(ServiceDescriptorEntry)를 묶어놓은 구조체로 Native API의 자세한 정보가 담겨진 구조체이다.
서비스 디스크립터 엔트리는 서비스 테이블(Service Table)을 포함하고 있는데, 이 서비스 테이블이 해당 API가 호출될 때 커널 영역에서 원하는 작업을 수행 하도록 동작하는 함수가 위치하는 주소를 표시하는 역할을 담당한다.
이때, 상기 KeServiceDescriptorTable은 상대적인 가상 어드레스(Relative Virtual Address/RVA)값으로 표현된다. 상대적인 가상 어드레스 값이란 가상 메모리의 특정 위치에서 상대적으로 떨어진 값을 의미한다. 즉, 만약 특정 위치가 0*80이고 현재 위치가 0*50이라면 상대적인 가상 어드레스는 0*80 - 0*50인 0*30으로 표시된다.
이렇게 표시되는 상대적인 가상 어드레스 값을 통하여 해당 API가 원하는 작업을 수행하는 작업 메모리의 주소 값을 알아내어 실질적인 프로세스가 동작될 수 있다.
도 4는 본 발명의 바람직한 실시예에 따른 서비스 테이블 변조 감지 및 복원 시스템을 설명하기 위한 블록도이다.
본 발명에 따른 서비스 테이블 변조 감지 및 복원 시스템은 ntoskrnl.exe 로딩부(100), 서비스 테이블 비교부(110), 현재 서비스 테이블 데이터베이스(113), 변조 서비스 테이블 통보부(120) 및 서비스 테이블 복구부(130)를 포함하여 구성될 수 있다.
ntoskrnl.exe 로딩부(100)는 메모리의 소정 영역에 ntoskrnl.exe를 로딩하는 기능을 한다. 즉, ntoskrnl.exe 로딩부(100)는 실제로 실행파일을 구동하기 위한 명령을 내리는 프로세서로 구현될 있다.
로딩된 ntoskrnl.exe에 의해 익스포트되는 서비스 테이블 값은 현재 서비스 테이블 데이터베이스(113)에 저장된다. 그리고, 컴퓨터에 최초로 ntoskrnl.exe가 설치될 때 익스포트되는 서비스 테이블 값은 미리 원본 서비스 테이블 데이터베이스(115)에 저장되어 있다.
서비스 테이블 비교부(110)는 상기 현재 서비스 테이블 데이터베이스(113)에 저장된 현재 서비스 테이블 값과 원본 서비스 테이블 데이터베이스(115)에 저장된 원본 서비스 테이블 값을 비교하는 기능을 한다.
변조 서비스 테이블 통보부(120)는 상기 현재 서비스 테이블 값과 원본 서비스 테이블 값이 다를 경우 이를 통보하는 기능을 한다. 이때에는 각 함수를 나타내는 현재 서비스 테이블 값과 원본 서비스 테이블 값을 일대일로 매칭시켜 나열한 후, 서로 다른 서비스 테이블 값을 나타내는 수치를 글씨체 또는 굵기를 변화시켜 표시하거나 하이라이트 등으로 눈에 띄게 나타내어 사용자가 이를 손쉽게 확인할 수 있도록 한다. 그리고, 경우에 따라서는 경보음을 부가하여 인지시킬 수도 있다.
서비스 테이블 복구부(130)는 현재 서비스 테이블 값과 원본 서비스 테이블 값이 다른 경우 원본 서비스 테이블 값으로 현재 서비스 테이블 값을 복구시켜 정확한 시스템 서비스가 사용자에게 제공될 수 있도록 한다.
상기 분류된 각 구성요소(100, 110, 113, 115, 120, 130)는 설명의 편의를 위해 논리적으로 구분한 것이고 반드시 물리적으로 구분되어야 할 필요는 없으며 실제 구현에 있어서는 단일의 프로그램 또는 논리회로 등으로 구현될 수 있다.
도 5는 본 발명의 바람직한 실시예에 따른 서비스 테이블 변조 감지 및 복원 방법의 흐름도이다.
우선, ntoskrnl.exe를 메모리의 소정 영역에 로딩한다(S100). 이때 메모리는 프로그램을 로딩할 수 있도록 회로기판에 실장된 내부 메모리 형태인 램(Randon Access Memory/RAM), 롬(Read Only Memory/ROM) 또는 별도로 구성된 외부 확장메모리로 구현될 수 있다. 이때 외부 확장메모리는 메모리카드, 메모리스틱, USB(Universal Serial Bus) 메모리, 외장형 하드디스크와 같이 범용 컴퓨터 장치와 연결하여 운용가능한 저장장치를 의미한다.
상기 ntoskrnl.exe는 윈도우즈 운영체계가 설치되는 메모리 영역과 물리적으로나 가상적으로 분리된 메모리 영역에 로딩되는 것이 바람직하다. 윈도우즈 운영체계가 설치되는 메모리 영역에 상기 실행 프로그램이 로딩되는 경우, 현재 동작하고 있는 프로세스와 충돌이 발생할 위험성이 존재하기 때문이다.
다음으로, 상기 로딩된 ntoskrnl.exe에 의해 익스포트되는 서비스 테이블값과 상기 ntoskrnl.exe가 최초로 컴퓨터에 설치될 때 익스포트되었던 원본 서비스 테이블 값을 비교한다(S200). 즉, 최초로 컴퓨터에 부팅될 때 익스포트되었던 원본 서비스 테이블 값은 후킹이 이루어지지 않은 상태이므로, 이때의 원본 서비스 테이블 값과 이후 시간이 경과한 지점에서 익스포트되는 서비스 테이블 값을 비교함으로써 서비스 테이블 값의 변조 여부를 판단하는 것이다.
이와 같은 서비스 테이블 값의 비교는 사용자가 설정해놓은 주기에 따라 또는 사용자의 요청이 있을 때마다 주기 또는 비주기적으로 이루어지는 것이 바람직하다.
마지막으로, 상기 서비스 테이블 값과 상기 원본 서비스 테이블 값이 다른 경우 상기 원본 서비스 테이블의 값으로 상기 서비스 테이블을 교체한다(S300). 즉, 서비스 테이블의 변조 여부가 감지되면, 상기 원본 서비스 테이블 값으로 서비스 테이블을 복구하여 변조되지 않은 상태에서 프로그램이 제대로 수행될 수 있도록 하는 것이다.
도 6은 본 발명의 바람직한 실시예에 따른 서비스 테이블 변조 감지 및 복원 프로그램 화면의 예시도이다.
도 6에 도시된 바와 같이, 본 발명에 따른 서비스 테이블 변조 감지 및 복원 프로그램은 ntoskrnl.exe에 익스포트되는 각 함수를 나타내는 현재의 서비스 테이블 값(현재 주소)과 원래 저장된 원본 서비스 테이블 값(원본 주소)을 각각 불러와 나타낸다. 이때, 만일 원본 주소와 현재 주소가 동일하지 않은 경우에는 글씨체 또는 글씨의 굵기를 달리하거나, 하이라이트 등을 통하여 사용자가 손쉽게 서비스 테이블 변조 여부를 확인할 수 있도록 한다.
그리고, 도시되어 있지는 않지만 서비스 테이블 복구 버튼을 첨가하여 서비스 테이블 변조 확인 후 원본 서비스 테이블 값으로 손쉽게 복구할 수 있도록 구현할 수 있다.
이상에서 설명한 바와 같이 본 발명의 서비스 테이블 변조 감지 및 복원 시스템, 방법 그리고 그 방법을 수행하는 프로그램이 기록된 컴퓨터 판독 가능한 기록매체는 커널 영역의 서비스 테이블을 주기적 또는 비주기적으로 확인함으로써, 상기 서비스 테이블이 조작되어 원하는 어플리케이션이 아닌 다른 동작이 이루어지는 것을 막고 손쉽게 변조된 부분을 복원함으로써 사용자의 정보노출이나 시스템 오동작을 막을 수 있는 효과를 제공한다.
아울러 본 발명의 바람직한 실시예들은 예시의 목적을 위해 개시된 것이며, 당업자라면 본 발명의 사상과 범위 안에서 다양한 수정, 변경, 부가 등이 가능할 것이며, 이러한 수정, 변경, 부가 등은 이하의 특허청구의 범위에 속하는 것으로 보아야 할 것이다.

Claims (10)

  1. ntoskrnl.exe이 최초로 컴퓨터에 설치될 때 사용되는 메모리 영역과 물리적 또는 가상적으로 분리된 메모리의 소정 영역에 상기 ntoskrnl.exe를 로딩하는 ntoskrnl.exe 로딩부;
    상기 로딩된 ntoskrnl.exe에 의해 익스포트되는 서비스 테이블 값을 저장하는 현재 서비스 테이블 데이터베이스;
    주기적으로 상기 현재 서비스 테이블 값과 원본 서비스 테이블 데이터베이스에 미리 저장된 원본 서비스 테이블 값을 비교하는 서비스 테이블 비교부;
    상기 현재 서비스 테이블 값과 원본 서비스 테이블 값이 다를 경우 이를 통보하는 변조 서비스 테이블 통보부; 및
    상기 변조 서비스 테이블 통보 후 상기 현재 서비스 테이블 값을 상기 원본 서비스 테이블 값으로 복구하는 서비스 테이블 복구부;를 포함하는 것을 특징으로 하는 서비스 테이블 변조 감지 및 복원 시스템.
  2. 삭제
  3. ntoskrnl.exe이 최초로 컴퓨터에 설치될 때 사용되는 메모리 영역과 물리적 또는 가상적으로 분리된 메모리의 소정 영역에 상기 ntoskrnl.exe를 로딩하는 제 1 단계;
    주기적으로 상기 로딩된 ntoskrnl.exe에 의해 익스포트되는 서비스 테이블 값과 미리 저장된 원본 서비스 테이블 값을 비교하는 제 2 단계; 및
    상기 서비스 테이블 값과 상기 원본 서비스 테이블 값이 다른 경우 이를 통보하고 상기 원본 서비스 테이블 값으로 상기 서비스 테이블 값을 복구하는 제 3 단계;를 포함하는 서비스 테이블 변조 감지 및 복원 방법.
  4. 삭제
  5. 삭제
  6. 삭제
  7. 삭제
  8. 삭제
  9. 삭제
  10. 삭제
KR1020060006457A 2006-01-20 2006-01-20 서비스 테이블 변조 감지 및 복원 시스템, 방법 그리고 그방법을 수행하는 프로그램이 기록된 컴퓨터 판독 가능한기록매체 KR100755960B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020060006457A KR100755960B1 (ko) 2006-01-20 2006-01-20 서비스 테이블 변조 감지 및 복원 시스템, 방법 그리고 그방법을 수행하는 프로그램이 기록된 컴퓨터 판독 가능한기록매체

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020060006457A KR100755960B1 (ko) 2006-01-20 2006-01-20 서비스 테이블 변조 감지 및 복원 시스템, 방법 그리고 그방법을 수행하는 프로그램이 기록된 컴퓨터 판독 가능한기록매체

Publications (1)

Publication Number Publication Date
KR100755960B1 true KR100755960B1 (ko) 2007-09-06

Family

ID=38736663

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020060006457A KR100755960B1 (ko) 2006-01-20 2006-01-20 서비스 테이블 변조 감지 및 복원 시스템, 방법 그리고 그방법을 수행하는 프로그램이 기록된 컴퓨터 판독 가능한기록매체

Country Status (1)

Country Link
KR (1) KR100755960B1 (ko)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20020063355A (ko) * 2001-01-27 2002-08-03 임형택 실시간으로 알려지지 않은 컴퓨터 바이러스의 감염을감지하는 방법
KR20030086722A (ko) * 2002-05-06 2003-11-12 한국전자통신연구원 커널 백도어 탐지 시스템, 이를 이용한 커널 백도어 탐지방법 및 커널 데이터 복구 방법
KR20040003221A (ko) * 2002-07-02 2004-01-13 김상욱 유닉스 커널 모드에서의 커널 백도어 탐지 및 대응 장치및 그방법
KR20050073702A (ko) * 2004-01-09 2005-07-18 한국과학기술원 네트워크 기반의 보안 솔루션 시스템
KR100635130B1 (ko) 2005-07-08 2006-10-17 한국전자통신연구원 윈도우 네트워크 감시를 통한 커널 백도어 탐지 시스템 및방법

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20020063355A (ko) * 2001-01-27 2002-08-03 임형택 실시간으로 알려지지 않은 컴퓨터 바이러스의 감염을감지하는 방법
KR20030086722A (ko) * 2002-05-06 2003-11-12 한국전자통신연구원 커널 백도어 탐지 시스템, 이를 이용한 커널 백도어 탐지방법 및 커널 데이터 복구 방법
KR20040003221A (ko) * 2002-07-02 2004-01-13 김상욱 유닉스 커널 모드에서의 커널 백도어 탐지 및 대응 장치및 그방법
KR20050073702A (ko) * 2004-01-09 2005-07-18 한국과학기술원 네트워크 기반의 보안 솔루션 시스템
KR100635130B1 (ko) 2005-07-08 2006-10-17 한국전자통신연구원 윈도우 네트워크 감시를 통한 커널 백도어 탐지 시스템 및방법

Similar Documents

Publication Publication Date Title
US8856932B2 (en) Rootkit monitoring agent built into an operating system kernel
CN102799817B (zh) 用于使用虚拟化技术进行恶意软件保护的系统和方法
CN107690645B (zh) 使用解释器虚拟机的行为恶意软件检测
JP5543156B2 (ja) 仮想化されたブロック入出力切り替えによるアプリケーション管理のエージェントレス・エンフォースメント
US8943592B1 (en) Methods of detection of software exploitation
WO2018130904A1 (en) Early runtime detection and prevention of ransomware
US20090126017A1 (en) Methods and systems for preventing security breaches
WO2015113052A1 (en) Detecting and preventing execution of software exploits
JP2008097597A (ja) 高インテグリティファームウェア
MX2007011026A (es) Metodo y sistema para la deteccion de codigo extrano.
US20120047579A1 (en) Information device, program, method for preventing execution of unauthorized program code, and computer readable recording medium
KR101064164B1 (ko) 리눅스 커널 기반 스마트 플랫폼 내에서의 커널 무결성 검사 및 변조된 커널 데이터 복구 방법
US10114948B2 (en) Hypervisor-based buffer overflow detection and prevention
CN112541178A (zh) 控制流完整性实施的设备和方法
US20070271609A1 (en) Security system of flash memory and method thereof
CN111062032A (zh) 异常检测方法和系统及计算机可读存储介质
CN106682512B (zh) 一种防止程序被修改的方法及其装置、系统
KR20170060815A (ko) 메모리의 커널영역을 보호하기 위한 전자장치 및 방법
CN108009039B (zh) 终端信息的记录方法、装置、存储介质及电子设备
CN108416210B (zh) 一种程序保护方法及装置
KR100755960B1 (ko) 서비스 테이블 변조 감지 및 복원 시스템, 방법 그리고 그방법을 수행하는 프로그램이 기록된 컴퓨터 판독 가능한기록매체
CN111259392B (zh) 一种基于内核模块的恶意软件拦截方法及装置
CN109388948B (zh) 一种基于虚拟化技术的潜在恶意软件分析方法及相关装置
JP2009199529A (ja) 情報機器、プログラム及び不正なプログラムコードの実行防止方法
JP2017174426A (ja) ユーザモードコンポーネント注入技法

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
AMND Amendment
E601 Decision to refuse application
J201 Request for trial against refusal decision
AMND Amendment
B701 Decision to grant
GRNT Written decision to grant
G170 Publication of correction
FPAY Annual fee payment

Payment date: 20130626

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20140701

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20150817

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20160726

Year of fee payment: 10

FPAY Annual fee payment

Payment date: 20170711

Year of fee payment: 11

FPAY Annual fee payment

Payment date: 20180702

Year of fee payment: 12

FPAY Annual fee payment

Payment date: 20190708

Year of fee payment: 13