Characterizing the behavior of a program using multiple-length N-grams
- 20 February 2001
- proceedings article
- Published by Association for Computing Machinery (ACM)
- p. 101-110
- https://doi.org/10.1145/366173.366197
Abstract
Some recent advances in intrusion detection are based on detecting anomalies in program behavior, as characterized by the sequence of kernel calls the program makes. Specifically, traces of kernel calls are collected during a training period. The substrings of fixed length N (for some N) of those traces are called N-grams. The set of N-grams occurring during normal execution has been found to discriminate effectively between normal behavior of a program and the behavior of the program under attack. The N-gram characterization, while effective, requires the user to choose a suitable value for N. This paper presents an alternative characterization, as a finite state machine whose states represent predictive sequences of different lengths. An algorithm is presented to construct the finite state machine from training data, based on traditional string-processing data structures but employing some novel techniques.Keywords
This publication has 4 references indexed in Scilit:
- Intrusion detection for distributed applicationsCommunications of the ACM, 1999
- Computer immunologyCommunications of the ACM, 1997
- Algorithms on Strings, Trees and SequencesPublished by Cambridge University Press (CUP) ,1997
- Linear automaton transformationsProceedings of the American Mathematical Society, 1958