Abstract
Although there have been many studies on using finite automata for intrusion detection, it has been a difficult problem to generate compact finite automata automatically. In a previous research an approach to profile normal behaviors using finite automata was proposed. They divided the system call sequence of each process into three parts prefix, main portion, and suffix, and then substituted macros for frequently occurring substrings. However, the procedure was not automatic. In this paper we present algorithms to automatically generate intrusion detection automata from the sequence of system calls resulting from the normal runs of the programs. We also show the effectiveness of the proposed method through experiments.
침입 탐지 기법에 있어서 유한상태기계(finite automata)를 통해 정상 행위를 프로파일링 하는 연구들이 많이 진행되어 왔으나, 자동으로 간결한 형태의 오토마타를 생성하는 것이 매우 어려웠다. 이전 연구에서는 프로세스를 오토마타로 프로파일링 하기 위해 빈번한 시스템 콜 서열(system call sequence)을 매크로(macro)로 치환하고, 이러한 서열을 인식하는 오토마타를 수작업으로 생성하였다. 본 논문에서는 이러한 오토마타를 자동적으로 생성할 수 있도록, 서열 정합(sequence alignment)을 수행하고 스트링으로부터 반복되는 패턴들을 찾아내어 프로세스들로부터 매크로를 추출하고 오토마타를 생성해내는 방법을 제안한다. 생성된 오토마타가 침입탐지에 효과적으로 이용될 수 있음을 실험을 통하여 보였다.