KR100420132B1 - Intrusion detection method for linux kernel based computer system - Google Patents

Intrusion detection method for linux kernel based computer system Download PDF

Info

Publication number
KR100420132B1
KR100420132B1 KR10-2001-0029899A KR20010029899A KR100420132B1 KR 100420132 B1 KR100420132 B1 KR 100420132B1 KR 20010029899 A KR20010029899 A KR 20010029899A KR 100420132 B1 KR100420132 B1 KR 100420132B1
Authority
KR
South Korea
Prior art keywords
intrusion
intrusion detection
program
processor
file
Prior art date
Application number
KR10-2001-0029899A
Other languages
Korean (ko)
Other versions
KR20020091340A (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 KR10-2001-0029899A priority Critical patent/KR100420132B1/en
Publication of KR20020091340A publication Critical patent/KR20020091340A/en
Application granted granted Critical
Publication of KR100420132B1 publication Critical patent/KR100420132B1/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1408Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
    • H04L63/1416Event detection, e.g. attack signature detection
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/12Messaging; Mailboxes; Announcements

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Debugging And Monitoring (AREA)
  • Computer And Data Communications (AREA)

Abstract

본 발명은 컴퓨터 시스템에 대한 침입을 실시간으로 탐지하는 새로운 기술로서 컴퓨터 운영시스템의 최하위 레벨인 커널에서 수행되는 침입탐지 시스템이다. 이를 위하여 본 발명은 컴퓨터 프로그램이 수행되는 시점에서 작업환경에 대한 정보를 획득하여 저장하도록 커널을 수정하였다. 이렇게 보고된 정보는 일종의 감시 프로그램인 데몬(daemon) 프로그램에 의하여 작업을 수행시킨 사용자의 위치, 프로그램의 수행계통, 작업의 적법성 유무를 판단하게 되며, 그 결과를 시스템 단말기인 콘솔(console)과 침입감시제어장치, 전자우편, 관리자 휴대폰 등으로 알린다.The present invention is a new technology for detecting intrusion into a computer system in real time, and is an intrusion detection system performed in a kernel which is the lowest level of a computer operating system. To this end, the present invention has modified the kernel to obtain and store information about the working environment at the time when the computer program is executed. The reported information determines the location of the user who performed the work by the daemon program, which is a kind of monitoring program, the execution system of the program, and whether or not the work is legitimate. Notify by supervisory control device, e-mail, administrator mobile phone, etc.

따라서 본 발명은 컴퓨터에서 수행되는 작업에 대한 직접 추적을 통해 우회 가능성을 배제함으로써 거의 모든 침입을 탐지할 뿐만 아니라 관리자의 허가 없는 작업명령이 수행되는 것을 방지하고, 해커들의 침입흔적 은폐 및 삭제를 원천적으로 봉쇄할 수 있다.Therefore, the present invention not only detects almost all intrusions by eliminating the possibility of detour through direct tracking of the work performed on the computer, but also prevents the administrator's unauthorized work orders from being performed and prevents hackers from concealing and deleting intrusion traces. Can be sealed.

Description

리눅스 커널 기반의 실시간 탐지 방법 { Intrusion detection method for linux kernel based computer system }Intrusion detection method for linux kernel based computer system}

본 발명은 리눅스 운영체제를 사용하는 컴퓨터 시스템의 보안기술에 관한 것으로, 더욱 상세하게는 리눅스 운영체제의 핵심인 커널을 수정하고 감시 프로그램인 데몬 프로그램을 이용하여 컴퓨터 시스템에 무단으로 침입하는 것을 탐지하기 위한 실시간 침입 탑지 방법에 관한 것이다.The present invention relates to a security technology of a computer system using a Linux operating system, and more particularly, to modify an kernel, which is the core of the Linux operating system, and to detect an intrusion into a computer system using a daemon program, a monitoring program, in real time. It is about an invasion tower method.

일반적으로, 컴퓨터 보안기술은 침입탐지(Intrusion Detection System: IDS)와 침입차단(Fire wall system)으로 구분되며, 다시 네트웍을 기반으로 하는 기술과 호스트(컴퓨터)를 기반으로 하는 기술로 나누어 진다. 하지만 이러한 종래의 보안기술은 다음과 같은 이유로 목적한 바를 완벽하게 이루지 못하고 있다.In general, computer security technology is classified into an intrusion detection system (IDS) and a firewall system, and is further divided into a network-based technology and a host-based technology. However, these conventional security technologies do not achieve their purpose perfectly for the following reasons.

첫째, 기존의 보안 시스템은 컴퓨터 시스템 침입자들의 예상경로 몇 가지 만을 감시한다. 침입자는 다양한 침입경로를 이용하며 감시경로를 우회할 수 있다.First, existing security systems monitor only a few of the predicted paths of computer system intruders. Intruders can use a variety of intrusion paths and bypass the surveillance path.

둘째, 침입상태에 대한 보고가 관리자 입장에서 효과적이지 못하다. 즉, 관리자가 수시로 확인하지 않는 한 감지된 침입에 대해서도 알 수가 없다.Second, reporting on intrusion status is not effective from an administrator's point of view. In other words, detected intrusions are not known unless the administrator checks them from time to time.

셋째, 컴퓨터 시스템 접근에 성공한 침입자는 자신의 침입 흔적을 지워 차후 추적을 불가능하게 만들며 시스템의 복구를 어렵도록 한다.Third, an intruder who successfully accesses a computer system erases his trace of intrusion, making it impossible to trace later and making the system difficult to recover.

넷째, 현재 시중에서 판매되는 침입탐지 시스템(IDS)은 그 탐지율이 50% 이하이고, 시간이 경과하면 새로운 침입 기법에 대하여 프로그램을 개정하여야 한다.Fourth, the current intrusion detection system (IDS) has a detection rate of 50% or less, and over time, the program should be revised for a new intrusion technique.

이러한 이유로 종래의 침입탐지 기술은 그 탐지율이 50%를 넘어서지 못하고 있으며, 침입탐지 시스템의 평가가 50%를 기준으로 우수제품과 보통제품으로 구분되고 있는 형편이다.For this reason, the conventional intrusion detection technology does not exceed 50% of the detection rate, and the evaluation of the intrusion detection system is classified into excellent products and ordinary products based on 50%.

이에 본 발명은 상기와 같은 문제점을 해결하기 위하여 컴퓨터 시스템에서 모든 작업이 수행되기 위한 유일한 절차를 찾아내어, 작업수행과 관련한 정보들을 수집할 수 있도록 커널을 수정하고, 데몬 프로그램으로 이와 같이 획득된 정보를 바탕으로 수행되는 작업의 적법성과 작업자의 네트웍상의 위치, 작업자의 수행권한 등을 평가하여 효과적으로 침입을 탐지할 수 있는 리눅스 커널 기반의 실시간 탐지방법을 제공하는 데 그 목적이 있다.In order to solve the above problems, the present invention finds a unique procedure for performing all tasks in a computer system, modifies the kernel to collect information related to task execution, and obtains the information thus obtained by a daemon program. The purpose of this study is to provide a Linux kernel-based real-time detection method that can effectively detect intrusions by evaluating the legitimacy of the work performed, the worker's network location, and the worker's execution authority.

또한, 본 발명의 다른 목적은 침입감시제어장치와 전자우편 자동전송 프로그램, 휴대폰 호출 프로그램 등을 이용하여 탐지된 침입을 관리자에게 효과적으로 알려 관리자가 적시에 대응토록 하고, 침입정보를 기록하여 침입자의 흔적 지우기나 사실 부인을 막을 수 있도록 하는 것이다.In addition, another object of the present invention is to effectively notify administrators of intrusions detected using an intrusion monitoring and control device, an automatic e-mail transmission program, a mobile phone call program, and the like so that the administrators can respond in a timely manner, and record intrusion information to trace the intruder. It is to prevent erasure or true denial.

도 1은 본 발명에 따른 실시간 탐지 개념을 도시한 도면,1 is a diagram illustrating a real-time detection concept according to the present invention,

도 2은 본 발명에 따라 리눅스 커널 내에서 프로세서의 정보를 획득하는 절차를 도시한 플로우 챠트,2 is a flowchart illustrating a procedure of acquiring information of a processor in a Linux kernel according to the present invention;

도 3은 본 발명에 따라 침입이 탐지될 경우, 경광등 점등 및 경보 벨을 울려 관리자에게 알려주는 감시제어장치의 구성을 도시한 블럭도,도 4는 본 발명에 따른 데몬이 침입을 탐지하는 절차를 도시한 플로우 챠트,도 5는 본 발명이 적용될 수 있는 일반적인 네트워크의 구성 예이다.Figure 3 is a block diagram showing the configuration of a monitoring control device to notify the administrator by warning lights and alarm bells when intrusion is detected in accordance with the present invention, Figure 4 shows a procedure for the daemon to detect intrusion according to the present invention 5 is a configuration example of a general network to which the present invention can be applied.

*도면의 주요부분에 대한 부호의 설명* Explanation of symbols for main parts of the drawings

102: 실행 프로그램 104: 커널102: executable program 104: kernel

106: 프로그램 구동정보 108: 데몬106: program driving information 108: daemon

310: 서버 320: 침입감시제어장치310: server 320: intrusion monitoring and control device

324: RS232C 드라이버 322: 마이컴326,328: 계전기 330: 경광등340: 경보벨324: RS232C driver 322: microcomputer 326,328: relay 330: warning light 340: alarm bell

상기와 같은 목적을 달성하기 위하여 본 발명은, 리눅스 운영체제를 사용하는 컴퓨터 서버에 로컬 클라이언트나 원격 클라이언트가 접속할 수 있도록 된 컴퓨터 시스템에서 외부의 불법침입을 탐지하기 위한 방법에 있어서, 상기 클라이언트로부터 프로그램 실행이 요구되면, 리눅스 운영체제에 커널에서 프로그램 구동정보가 포함된 환경변수를 검색하는 제1 단계; 상기 환경변수의 로그네임을 분석하여 권한이 루트인 원격 클라이언트가 검출되면 해당 클라이언트의 원거리 호스트 아이피를 획득하여 침입탐지정보 파일을 생성하고, 데몬에 시그널을 전송하는 제2 단계; 상기 데몬은 상기 시그널이 수신되면 상기 침입탐지정보 파일을 읽어와 원격 호스트 아이피가 허용된 아이피가 아니면 불법침입으로 판단하는 제3 단계; 및 상기 불법침입으로 판단되면, 해당 프로그램의 실행을 중지시키고, 침입감시제어장치로 경보신호를 전송함과 아울러 관리자에게 침입탐지 사실을 통지하는 제4 단계로 이루어진 것을 특징으로 한다.In order to achieve the above object, the present invention provides a method for detecting an external illegal intrusion in a computer system that allows a local client or a remote client to access a computer server using a Linux operating system, the program execution from the client If required, a first step of retrieving an environment variable including program driving information from the kernel to the Linux operating system; A second step of analyzing the log name of the environment variable, obtaining a remote host IP of the client to generate an intrusion detection information file, and transmitting a signal to the daemon when a remote client having root authority is detected; A third step in which the daemon reads the intrusion detection information file and determines that the remote host IP is an illegal intrusion if the signal is not received; And if it is determined that the illegal intrusion, characterized in that the fourth step of stopping the execution of the program, transmitting an alarm signal to the intrusion monitoring control device and notifies the administrator of the intrusion detection fact.

이하, 첨부된 도면을 참조하여 본 발명의 바람직한 실시예를 자세히 설명하기로 한다.먼저, 본 발명이 적용될 수 있는 일반적인 네트워크의 구성은 도 5에 도시된 바와 같이 리눅스 운영체제를 사용하는 서버(310)에 LAN을 통해 로컬 클라이언트(530)가 접속될 수 있고, 인터넷(502)을 통해 원격 접속자(540)(원격 클라이언트)가 접속할 수 있는 개방구조이다. 이때 로컬 네트워크는 라우터(510)를 통해 인터넷(502)으로 접속될 수 있고, 내부 망을 보호하기 위해 망접속단에 방화벽(520)을 구축할 수 있으며, 본 발명에 따라 서버(310)에는 침입감시제어장치(320)가 연결되어 있다.Hereinafter, preferred embodiments of the present invention will be described in detail with reference to the accompanying drawings. First, a general network configuration to which the present invention can be applied is a server 310 using a Linux operating system as shown in FIG. The local client 530 can be connected to the local area network via a local area network (LAN) and can be accessed by the remote accessor 540 (remote client) via the Internet 502. In this case, the local network may be connected to the Internet 502 through the router 510, and a firewall 520 may be constructed at the network connection end to protect the internal network. The supervisory control device 320 is connected.

도 1은 본 발명에 따른 실시간 탐지 개념을 도시한 도면이고, 도 2는 본 발명에 따라 커널 내에서 프로세서의 정보를 획득하는 절차를 도시한 플로우 챠트이다.1 is a diagram illustrating a real-time detection concept according to the present invention, and FIG. 2 is a flowchart illustrating a procedure of acquiring information of a processor in a kernel according to the present invention.

본 발명에 따라 리눅스 운영체제에서 프로그램이 실행되는 절차는 도 1에 도시된 바와 같다. 먼저, 실행 프로그램(102)이 리눅스 운영체제의 커널(104)에 프로그램 구동을 요청한다(①). 이에 따라 커널(104)은 프로그램 구동정보를 프로그램 구동정보 DB(106)에 저장하고(②), 본 발명에 따라 침입탐지를 감시하는 데몬 프로그램(108)에 프로그램 구동을 통보한다(③). 이에 따라 데몬 프로그램(108)은 프로그램 구동정보를 읽어(④)와 판독 및 분석한 후 침입탐지가 검출되면, 해당 침해 프로그램의 구동을 중지시키고(⑤), 침입 탐지사실을 경보장치나, 이메일, 휴대폰 등을 이용하여 관리자에게 실시간으로 통지한다(⑥).The procedure of executing the program in the Linux operating system according to the present invention is as shown in FIG. First, the execution program 102 requests the program drive to the kernel 104 of the Linux operating system (①). Accordingly, the kernel 104 stores program driving information in the program driving information DB 106 (2), and notifies the program driving to the daemon program 108 for monitoring intrusion detection according to the present invention (3). Accordingly, the daemon program 108 reads (④) and reads and analyzes the program driving information, and when intrusion detection is detected, stops the operation of the infringement program (⑤) and alerts the intrusion detection fact to an alarm device, an e-mail, Notify the administrator in real time using a mobile phone (⑥).

통상, 리눅스 시스템에서 프로그램이 기동하면 프로세서를 생성하기 위해 실행(do_execve) 함수가 호출되는데, 실행(do-execve) 함수는 프로그램의 포맷에 맞는 프로그램 핸들러를 찾기 위해 서치 바이너리 핸들러(search_binary_handler) 함수를 호출한다.본 발명이 적용된 리눅스 커널의 서치 바이너리 핸들러(search_binary_handler) 함수는 프로세서 기동시 다음 표 1과 같은 환경변수를 프로그램 구동정보로서 기록한다. 따라서 환경변수 테이블을 검사하면, 프로세스 아이디(process ID), 명령(command), 로그네임(logname), 리모트 호스트 아이피(remote host IP), 유저 아이디(Set-user-ID), 그룹 아이디(Set-group-ID) 등을 알 수 있다.한편, 본 발명에 따라 프로세서의 정보를 확인하기 위한 커널의 동작 흐름은 도 2에 도시된 바와 같다.Typically, when a program is launched on a Linux system, the do_execve function is called to create a processor. The do-execve function calls the search binary handler search_binary_handler to find a program handler that matches the program's format. The search binary handler (search_binary_handler) function of the Linux kernel to which the present invention is applied records the environment variables as shown in Table 1 below when the processor starts. Therefore, if you check the environment variable table, you can check the process ID, command, logname, remote host IP, set-user-ID, and group ID. group-ID), etc. Meanwhile, the operation flow of the kernel for checking the information of the processor according to the present invention is as shown in FIG.

도 2를 참조하면, 로컬 클라이언트나 외부 접속자(원격 클라이언트)등으로부터 프로그램 실행이 요귀되면, 프로세서를 생성하기 위한 실행(do_execve) 함수가 서치 바이너리 핸들러(search_binary_handler) 함수를 호출한다(단계 201, 202).Referring to FIG. 2, when program execution is requested from a local client or an external accessor (remote client), the execution (do_execve) function for generating a processor calls a search binary handler (search_binary_handler) function (steps 201 and 202). .

이어 서치 바이너리 핸들러(search_binary_handler) 모듈에서 실효 사용 권한(effective user ID: euid)이 시스템의 최고 권한인 '루트(root)' 권한을 가지고 있는지 확인한다. 통상, euid변수가 "0"인 경우 루트 권한을 나타낸다(단계 203).In the search binary handler (search_binary_handler) module, make sure that the effective user ID (euid) has the system's highest level of root. Normally, when the euid variable is "0", the root authority is represented (step 203).

만일, 루트(root) 권한을 가진 프로세서라면, 단계 204에서는 프로세서의 환경변수에서 작업자 계정인 "로그네임(logname)"을 획득한다.If it is a processor with root authority, step 204 obtains a worker account "logname" from the processor's environment variable.

이어 로그네임을 분석하여 원격 접속자이면, 환경변수를 검색하여 원격 검색자의 위치를 나타내주는 "리모트 호스트 아이피(remote host IP)"를 획득하고, 침입탐지정보(idsinfo) 파일을 생성한다(205~207). 여기서, 침입탐지정보는 후수하는 바와 같이 "proc_dir_entry" 구조체에 "idsinfo"라는 파일로 정의된다.After analyzing the log name, if the remote accessor searches for environment variables, obtains a "remote host IP" indicating the location of the remote searcher, and generates an intrusion detection information (idsinfo) file (205 ~ 207). ). Here, the intrusion detection information is defined as a file called "idsinfo" in the "proc_dir_entry" structure as described later.

이어 단계 208에서 데몬에 시그널(SIGINT)을 보내고, 단계 209에서 보안 데몬이 동작하고 있는지를 확인한다. 이후, 서치 바이너리 핸들러(search_binary_handler) 모듈은 실행(do_execve) 함수로 복귀한다.In step 208, a signal (SIGINT) is sent to the daemon, and in step 209, it is checked whether the security daemon is running. Thereafter, the search binary handler (search_binary_handler) module returns to the do_execve function.

이렇게 알아낸 침입탐지정보는 기록됨과 아울러 겟 아이디에스인포(get_idsinfo) 코드에 의해 프로세서(proc) 파일시스템에 침입탐지정보(idsinfo) 라는 가상파일을 통해 데몬으로 전달된다. 이것을 위해 필요한 커널내 추가 코드는 다음과 같다.The detected intrusion detection information is recorded and transmitted to the daemon through a virtual file called intrusion detection information (idsinfo) to the processor (proc) file system by the get_idsinfo code. The additional code in the kernel required for this is:

첫째, 프로세서 디렉토리 엔트리(proc_dir_entry) 구조체에 침입탐지정보(idsinfo)라는 파일을 정의한다. 둘째, 프로세서 등록(proc_register)함수를 사용하여 프로세서(proc) 파일시스템에 침입탐지정보(idsinfo) 파일을 등록한다. 셋째, 프로세서 파일 디렉토리의 침입탐지정보(/proc/idsinfo) 파일에 프로세서 정보를 넣는 겟 아이디에스인포(get_idsinfo)를 정의한다. 넷째, 이후 데몬이 침입탐지정보(idsinfo) 파일을 읽으려고 하면, 겟 루트 어레이(get_root_array) 함수에서 겟 아이디에스인포(get_idsinfo)를 호출하도록 한다.First, a file called intrusion detection information (idsinfo) is defined in a processor directory entry (proc_dir_entry) structure. Second, the intrusion detection information (idsinfo) file is registered in the processor (proc) file system using the processor registration (proc_register) function. Third, get_idsinfo (get_idsinfo) is defined that puts processor information in the intrusion detection information (/ proc / idsinfo) file of the processor file directory. Fourth, when the daemon later attempts to read the intrusion detection information (idsinfo) file, the get root array (get_root_array) function calls get_idsinfo.

다른 한편, 단계 208에서 커널이 정보전달을 위해 데몬에게 시그널(SIGINT)를 보내며, 시그널를 받은 데몬은 도 4에 도시된 바와 같은 절차를 수행하여 침입탐지여부를 판단하고, 침입탐지가 검출되면 경고벨을 울리고 관리자에게 통지한다.도 4를 참조하면, 데몬은 시그널이 수신되면, 프로세서 디렉토리 내 침입탐지정보(/proc/idsinfo) 파일에서 해당 정보를 읽어 온다(401,402). 이어, 침입탐지정보 파일에 있는 원격 접속자의 IP를 미리 정의된 허용 IP 리스트(403a)와 비교하여 허용IP인가를 판단한다(403,404).만일, 허용IP가 아니면 불법 침입으로 판단하여 침입감시제어장치(320)로 경고신호를 전송함과 아울러 관리자의 휴대폰이나 이메일로 침입탐지 사실을 통보한다(405~407). 즉, 데몬은 기동시 확인한 디스크내 셋 유저 아이디(Set-user-ID), 셋 그룹아이디(Set-group-ID) 프로세서를 제외한 모든 원거리 루트(root) 권한 프로세서의 정보를 콘솔 및 프린터로 출력하고, 이메일이나 휴대폰 문자메시지를 통해 관리자에게 알려준다.On the other hand, in step 208, the kernel sends a signal (SIGINT) to the daemon for information transfer, and the daemon receiving the signal determines whether the intrusion is detected by performing a procedure as shown in FIG. 4, when the signal is received, the daemon reads the information from the intrusion detection information (/ proc / idsinfo) file in the processor directory (401, 402). Subsequently, the IP of the remote accessor in the intrusion detection information file is compared with the predefined allowed IP list 403a to determine whether it is an allowed IP (403, 404). In addition to sending a warning signal to the 320, and notifies the fact of intrusion detection to the administrator's mobile phone or email (405 ~ 407). That is, the daemon prints the information of all remote root authority processors except the set-user-ID and set-group-ID processors checked at startup to the console and the printer. Inform the administrator via e-mail or text message.

침입감시제어장치(320)는 도 3에 도시된 바와 같이, 서버(310), 경광등(330) 및 경보벨(340)을 연결되어 경고신호에 따라 관리자가 지정한 IP를 제외한 모든 루트(root) 권한 프로세서의 IP에 대해서는 동작을 하도록 함으로써, 관리자뿐만 아니라 다수의 직원들에 의해 감시가 이루어질 수 있도록 한다.Intrusion monitoring and control device 320 is connected to the server 310, the warning light 330 and the alarm bell 340, as shown in Figure 3, all the root (root) except the IP specified by the administrator according to the warning signal By operating on the IP of the processor, it can be monitored by a large number of employees as well as administrators.

도 3은 본 발명에 따라 침입이 탐지될 경우, 경광등 점등 및 경보 벨을 울려 관리자에게 이를 알려주는 감시제어장치의 구성을 도시한 블럭도이다. 도 3을 참조하면, 서버(310)와 침입감시제어장치(320)는 RS232C 직렬포트를 통해 연결되어 있고, 침입감시제어장치(320)는 마이컴(322)과 RS232C 드라이버(324), 경광등(330)을 제어하기 위한 계전기(326), 경보벨(340)을 제어하기 위한 계전기(328)로 이루어져 있다.Figure 3 is a block diagram showing the configuration of a monitoring control device to notify the administrator by warning lights and alarm rings when intrusion is detected in accordance with the present invention. Referring to FIG. 3, the server 310 and the intrusion monitoring controller 320 are connected through an RS232C serial port, and the intrusion monitoring controller 320 is a microcomputer 322, an RS232C driver 324, and a warning light 330. ) Is configured as a relay 326 for controlling, an alarm 340 for controlling the alarm bell 340.

본 발명에 따라 침입탐지가 검출되었을 경우 데몬에 관련된 경보기능은 다음과 같다.According to the present invention, when an intrusion detection is detected, alarm functions related to the daemon are as follows.

1) 콘솔(console)출력사용자의 요구사항에 따라 다양한 형태의 이벤트를 표시할 수 있다, 출력방식은 그래픽과 텍스트방식으로 표시할 수 있으며, 이는 사용자의 편의성을 고려하여 표출할 수 있는 경보기능의 일부이다.1) Console output Various events can be displayed according to the user's requirements. The output can be displayed graphically and textually, which is an alarm function that can be displayed in consideration of the user's convenience. It is part.

2) 침입감시 제어장치도 3에 나타나 있는 것처럼 리눅스 서버(310)의 통신포트(시리얼 또는 USB)에서 침입감시 제어장치(320)에게 통신하게 된다, 침입감시 제어장치(320)의 제어신호는 특정신호를 송/수신하도록 자체적으로 원칩 마이컴(OneChip CPU)을 사용하여 부품의 간소화 및 효율성을 높였으며, 또한 경광등(330) 및 경보벨(340) 제어는 마이컴(CPU:322)이 제어하는 계전기들(326,328)에 의해 이루어진다.2) The intrusion monitoring control device communicates with the intrusion monitoring control device 320 at the communication port (serial or USB) of the Linux server 310 as shown in FIG. 3, and the control signal of the intrusion monitoring control device 320 is specified. The one-chip microcomputer (OneChip CPU) is used to transmit / receive signals to increase the simplification and efficiency of the parts.Also, the warning lamp 330 and the alarm bell 340 control are controlled by the microcomputer (CPU: 322). (326,328).

도 3의 기능을 설명하면, 리눅스 서버(310)에 대해 해킹을 시도하면 데몬이 이를 감지하여 경광등(330) 및 경보벨(340)로 경보를 출력한다. 따라서 시스템 관리자가 24시간 서버(310) 앞에서 관리하지 않고 자리를 이동할 경우에도 본 발명에 따른 경보기능를 동작시키면 외부 해킹으로부터 실시간으로 모니터링 및 감시를 할 수 있다.Referring to the function of Figure 3, when the hacking attempt to the Linux server 310, the daemon detects this and outputs an alarm to the warning light 330 and the alarm bell 340. Therefore, even if the system administrator moves the seat without managing in front of the server 310 24 hours, if the alarm function according to the present invention operates, it can be monitored and monitored in real time from external hacking.

3) 이메일 전송메일 전송 방식은 서버 관리자가 외출 및 퇴근시 비상대책의 일환으로 서버에 해킹 침투 발생시 신속하게 이메일을 전송하기 위한 제어 방식이다. 제어방식은 데몬이 메일 명령어를 호출하여 서버 관리자 및 관련자의 메일 주소로 메일을 전송하게 된다.3) Sending E-mail The e-mail transmission method is a control method for the server administrator to quickly send an e-mail when a hacking infiltration occurs in the server as part of emergency measures when going out and leaving the office. The control method is that the daemon calls the mail command to send the mail to the server administrator and the person's mail address.

4) 관리자 휴대폰 문자메시지 전송4) Manager mobile phone text message transmission

또한 휴대폰 전송 방식은 서버 관리자가 외출 및 퇴근시 비상대책의 일환으로, 서버에 해킹 침투 발생시 신속하게 휴대폰으로 전송하기 위한 제어 방식이다.In addition, the mobile phone transmission method is a control method for the server administrator to quickly transmit to the mobile phone when a hacking infiltration occurs in the server as part of the emergency measures when going out and leaving the office.

5) 데몬의 관리자모드 제어 방식5) Daemon Administrator Mode Control Method

- 전체 확인모드 방식-Full confirmation mode

이 방식은 모든 프로세서의 동작 상태를 상시 감시하여 정보를 전달하는 방식이다.This method always monitors the operating status of all processors and transmits the information.

- 자동 확인모드 방식-Automatic confirmation mode

리모트 호스트 아이피(remote host IP)를 가진 침입이라고 판단되는 프로세서의 정보만을 전달한다.It only sends information about the processor that it determines to be an intrusion with a remote host IP.

- 통과 IP 설정 방식-Pass IP setting method

관리자가 외부에서 원격관리를 해야 할 경우, 경보가 발생하지 않도록 하는 리모트 호스트 아이피(remote host IP)를 설정할 수 있도록 한다.Allows administrators to set a remote host IP to prevent alarms when remote management is required.

이상에서 설명한 바와 같이, 본 발명은 리눅스 시스템의 커널 단계에서의 감시에 의해 기존의 리눅스 시스템이 갖고 있는 침입확인의 어려움을 해결함으로써 관리자는 침입이 발생시 즉시 그 사실을 인지하고 신속하게 대처할 수가 있다. 특히, 사용자 IP를 커널 단계에서 확인시켜줌으로써 시스템의 수행률을 떨어뜨리지 않으면서도 사용자 구분이 이루어져 동시에 여러 명의 침입자가 발생하더라도 관리자는 시스템의 상황을 항상 정확하게 알 수가 있다. 즉, 실시간 감시는 커널 단계에서 하는 것이 가장 효과적인데, 본 발명에 따라 감시 데몬이 주기적으로 프로세서를 확인하는 것은 시스템에 부하를 주지만 프로세서 기동을 확인하는 커널 감시는 수행률(Performance)에 거의 영향을 미치지 않는다.또한 커널에서의 감시는 발생하는 모든 프로세서의 기동을 감시할 수 있으므로 침입자에 의한 쉘 획득 후 쉘을 포함한 프로그램들의 기동에 대해 실시간으로 관리자에게 상황을 알려줄 수 있다.그리고 본 발명으로 인한 부수적인 효과로, 기존의 침입탐지 시스템이 침입을 탐지만하고 차단하지 못하는 단점을 개선하여 자동으로 차단하는 기능까지 가능하다.As described above, the present invention solves the difficulty of verifying the intrusion of the existing Linux system by monitoring at the kernel level of the Linux system, so that the administrator can immediately recognize the fact and respond quickly when the intrusion occurs. In particular, by verifying the user IP at the kernel level, the user can be identified without degrading the system's performance, and even if several intruders occur at the same time, the administrator can always know the system status accurately. In other words, real-time monitoring is most effective at the kernel level. According to the present invention, the monitoring daemon periodically checks the processor, which puts a burden on the system, but the kernel monitoring that confirms the processor startup has little effect on performance. In addition, monitoring in the kernel can monitor the startup of any processor that occurs, so that the administrator can inform the administrator in real time about the startup of programs, including the shell, after the shell has been acquired by an intruder. With the in effect, the existing intrusion detection system can detect the intrusion and prevent the blockage of the inability to automatically block the function.

Claims (5)

리눅스 운영체제를 사용하는 컴퓨터 서버에 로컬 클라이언트나 원격 클라이언트가 접속할 수 있도록 된 컴퓨터 시스템에서 외부의 불법침입을 탐지하기 위한 방법에 있어서,A method for detecting external intrusions in a computer system in which a local client or a remote client can access a computer server using a Linux operating system, 상기 클라이언트로부터 프로그램 실행이 요구되면, 리눅스 운영체제에 커널에서 프로그램 구동정보가 포함된 환경변수를 검색하는 제1 단계;A first step of retrieving an environment variable including program driving information from a kernel to a Linux operating system when a program execution is requested from the client; 상기 환경변수의 로그네임을 분석하여 권한이 루트인 원격 클라이언트가 검출되면 해당 클라이언트의 리모트 호스트 아이피를 획득하여 침입탐지정보 파일을 생성하고, 데몬에 시그널을 전송하는 제2 단계;A second step of analyzing the log name of the environment variable, obtaining a remote host IP of the client to generate an intrusion detection information file, and transmitting a signal to the daemon when a remote client having root authority is detected; 상기 데몬은 상기 시그널이 수신되면 상기 침입탐지정보 파일을 읽어와 리모트 호스트 아이프가 허용된 아이피가 아니면 불법침입으로 판단하는 제3 단계; 및A third step in which the daemon reads the intrusion detection information file and judges illegal intrusion if the remote host IP is not allowed when the signal is received; And 상기 불법침입으로 판단되면, 해당 프로그램의 실행을 중지시키고, 침입감시제어장치로 경보신호를 전송함과 아울러 관리자에게 침입탐지 사실을 통지하는 제4 단계로 이루어진 것을 특징으로 하는 리눅스 커널 기반의 실시간 탐지 방법.If it is determined that the intrusion is illegal, Linux kernel-based real-time detection comprising the fourth step of stopping the execution of the program, transmitting an alarm signal to the intrusion monitoring control device and notifying the administrator of the intrusion detection fact Way. 제1항에 있어서, 상기 침입탐지정보 파일은According to claim 1, wherein the intrusion detection information file 프로세서 디렉토리 엔트리(proc_dir_entry) 구조체에 침입탐지정보(idsinfo)라는 파일을 정의하고, 프로세서 등록(proc_register) 함수를 사용하여 프로세서(proc) 파일시스템에 침입탐지정보(idsinfo) 파일을 등록하며, 프로세서 파일 디렉토리(/proc/idsinfo)에 위치시키는 것을 특징으로 하는 리눅스 커널 기반의 실시간 탐지 방법.Define a file called intrusion detection information (idsinfo) in the processor directory entry (proc_dir_entry) structure, and register the intrusion detection information (idsinfo) file in the processor (proc) file system using the processor registration (proc_register) function, and the processor file directory. Linux kernel-based real-time detection method, characterized by the location (/ proc / idsinfo). 제1항에 있어서, 상기 실시간 탐지방법은The method of claim 1, wherein the real-time detection method '전체 확인모드' 방식에서는In full verification mode 모든 프로세서의 동작 상태를 상기 감시하여 정보를 전달하고,Monitor and monitor the operating status of all processors, '자동 확인모드' 방식에서는 리모트 호스트 아이피(rmote host IP)를 가진 침입이라고 판단되는 프로세서의 정보만을 전달하고,In the 'auto verification mode' method, only the information of the processor determined to be an intrusion with the remote host IP is transmitted. '통과 IP 설정' 방식에서는In the 'pass through IP configuration' method, 관리자가 외부에서 원격관리를 해야 할 경우, 경보가 발생하지 않도록 하는 리모트 호스트 아이피(remote host IP)를 설정할 수 있도록 하는 것을 특징으로 하는 리눅스 커널 기반의 실시간 탐지 방법.Linux kernel-based real-time detection method, characterized in that the administrator can set the remote host IP (remote host IP) to prevent the alarm when the remote management from the outside. 제1항에 있어서, 상기 제4 단계는The method of claim 1, wherein the fourth step 경보벨이나 경광등을 구비한 침임탐지제어장치나 이메일이나 휴대폰 문자 메시지 중 어느 하나 이상을 이용하여 통지하는 것을 특징으로 하는 리눅스 커널 기반의 실시간 탐지 방법.Linux kernel-based real-time detection method characterized in that the notification by using any one or more of the intrusion detection control device equipped with an alarm bell or a warning light, e-mail or mobile phone text message. 삭제delete
KR10-2001-0029899A 2001-05-30 2001-05-30 Intrusion detection method for linux kernel based computer system KR100420132B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR10-2001-0029899A KR100420132B1 (en) 2001-05-30 2001-05-30 Intrusion detection method for linux kernel based computer system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR10-2001-0029899A KR100420132B1 (en) 2001-05-30 2001-05-30 Intrusion detection method for linux kernel based computer system

Publications (2)

Publication Number Publication Date
KR20020091340A KR20020091340A (en) 2002-12-06
KR100420132B1 true KR100420132B1 (en) 2004-03-02

Family

ID=27707019

Family Applications (1)

Application Number Title Priority Date Filing Date
KR10-2001-0029899A KR100420132B1 (en) 2001-05-30 2001-05-30 Intrusion detection method for linux kernel based computer system

Country Status (1)

Country Link
KR (1) KR100420132B1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104123192A (en) * 2014-08-04 2014-10-29 浪潮电子信息产业股份有限公司 Performance optimization method based on memory subsystem in linux system

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100456512B1 (en) * 2002-05-06 2004-11-10 한국전자통신연구원 System for detecting a kernel backdoor, method for detecting a kernel backdoor and method for recovering a kernel data using the same
KR100544674B1 (en) 2003-11-11 2006-01-23 한국전자통신연구원 Dynamic Changing Method of Intrusion Detection Rule In Kernel Level Intrusion Detection System
KR100609700B1 (en) 2004-07-20 2006-08-08 한국전자통신연구원 Apparatus and method for simplifying packet intrusion detection rule, and apparatus and method for detecting a intrusion packet using the simplified detection rule
KR100759089B1 (en) * 2005-09-26 2007-09-19 (주)나즌커뮤니케이션 method for controlling over-load of linux server
KR100800090B1 (en) * 2006-09-01 2008-02-01 주식회사 하우리 System for real-time watching irp dispatching to windows device driver and method thereof

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104123192A (en) * 2014-08-04 2014-10-29 浪潮电子信息产业股份有限公司 Performance optimization method based on memory subsystem in linux system

Also Published As

Publication number Publication date
KR20020091340A (en) 2002-12-06

Similar Documents

Publication Publication Date Title
JP3165366B2 (en) Network security system
EP1491019B1 (en) Method and system for reducing the false alarm rate of network intrusion detection systems
US7380279B2 (en) System for integrating security and access for facilities and information systems
US6775657B1 (en) Multilayered intrusion detection system and method
CA2391701C (en) Method and system for remotely configuring and monitoring a communication device
TWI234707B (en) Method and system for responding to a computer intrusion
US7975302B2 (en) System for real-time detection of computer system files intrusion
US8624720B2 (en) Security infrastructure
KR20040101490A (en) Detecting and countering malicious code in enterprise networks
JP2006331401A (en) Person tracking method, security guard using method and person tracking device
WO1997036246A1 (en) Method and device for managing computer network
Hegazy et al. A multi-agent based system for intrusion detection
KR100420132B1 (en) Intrusion detection method for linux kernel based computer system
US20080184368A1 (en) Preventing False Positive Detections in an Intrusion Detection System
JP2004355450A (en) System and method for supervising state of terminal
JP2002232451A (en) Communication management method, communication monitoring system, and computer system
KR20010105490A (en) Hacking detection and chase system
KR100424723B1 (en) Apparatus and Method for managing software-network security based on shadowing mechanism
KR100376618B1 (en) Intelligent security system for network based on agent
CN110417578B (en) Abnormal FTP connection alarm processing method
JP2006331402A (en) On-line security management system
KR20070008804A (en) Host-based security system and method for providing security service
JPH10107795A (en) Network management system
KR100439169B1 (en) Attacker traceback method by using session information monitoring that use code mobility
KR100503772B1 (en) A monitoring system and method of auditing performanced work connected to database server by utility method

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
FPAY Annual fee payment

Payment date: 20130205

Year of fee payment: 10

FPAY Annual fee payment

Payment date: 20140211

Year of fee payment: 11

FPAY Annual fee payment

Payment date: 20150204

Year of fee payment: 12

FPAY Annual fee payment

Payment date: 20160204

Year of fee payment: 13

FPAY Annual fee payment

Payment date: 20170203

Year of fee payment: 14

FPAY Annual fee payment

Payment date: 20180206

Year of fee payment: 15

FPAY Annual fee payment

Payment date: 20190212

Year of fee payment: 16