네트워크 기반의 많은 인프라 자원을 관리하고 보호하기 위해서 침입 탐지에 관한 연구가 활발히 이루어지고 있다. 이러한 침입 탐지에 관한 연구에는 네트워크 패킷, 시스템 콜들의 감사자료(audit record)를 이용하여 마르코프 모델, 인공 신경망, 통계적인 방법 등의 모델을 사용하는 연구가 이루어 졌다. 특히 시스템 콜 서열을 기반으로 한 침입 탐지 기법에 많은 알고리즘들이 사용되어 왔으며, 시스템 콜 서열을 인식하는 오토마타를 생성하는 기법도 많이 연구되었다. 그러나 효율적인 오토마타를 생성하는 것은 계산복잡도가 높은 어려운 작업이다.
본 논문에서는 유전자 알고리즘을 사용하여 자동적으로 오토마타를 생성하는 절차를 제안한다. 정상적인 시스템 콜 시퀀스와 비정상적인 시스템 콜 시퀀스를 구별하기 위해서 유전자 알고리즘을 사용하여 오토마타를 생성한다. 오토마타를 하나의 객체로 구성하고 정상적인 시스템 콜 시퀀스와 비정상적인 시스템 콜 시퀀스를 구별하기 위해 객체들 간의 유전자 알고리즘을 통한 진화과정이 이루어진다. 진화를 통해 생성된 우수한 오토마타는 침입을 탐지하는 기준이 된다. 본 논문에서는 생성된 이 오토마타가 침입탐지에 효과적으로 이용될 수 있음을 실험을 통하여 보인다.
Alternative Abstract
Various algorithms based on system call sequences have been used in intrusion detection. Among these the technique of constructing finite state automata that recognize normal sequences and reject abnormal ones have been proven to be effective. However, the previous techniques have drawbacks such as requiring additional information other than system call sequences or difficulty in handling sequences of significantly varying lengths. In this paper, we propose a technique of constructing finite automata using genetic algorithms. We show how to construct finite automata with scores assigned to state transitions, results of the experiments using various data sets, and suggest ways to further improve the effectiveness of our approach.