3.20 사이버 테러 등 APT 공격이 사회적, 경제적으로 막대한 피해를 초래함에 따라 APT 공격을 방어하기 위한 기술적인 대책이 절실히 요구되고 있으나, 시그너쳐에 기반한 보안 장비로는 대응하는데 한계가 있다. 이에 본 논문에서는 기존 시그너쳐 기반 침입탐지 시스템의 한계를 극복하기 위해서 호스트 PC에서 발생하는 행위정보를 기반으로 악성코드를 탐지하는 방법을 제안한다. 먼저, 악성코드와 정상 실행파일을 구분하기 위한 39개의 특성인자를 정의하고, 악성코드 및 정상 실행파일이 실행되는 동안 발생하는 870만 개의 특성인자 데이터를 수집하였다. 또한, 수집된 데이터에 대해 각 특성인자의 발생빈도를 프로세스 ID 별로 재구성하여 실행파일이 호스트에서 실행되는 동안의 행위정보를 83차원의 벡터로 표현하였다. 특히, 자식 프로세스에서 발생하는 특성인자 이벤트의 발생빈도를 포함함으로써 보다 정확한 행위정보의 표현이 가능하였다. C4.5 결정트리 방법을 적용하여 악성코드와 정상파일을 분류한 결과 각각 2.0%의 오탐률과 5.8%의 미탐률을 보였다.
3.20 사이버 테러 등 APT 공격이 사회적, 경제적으로 막대한 피해를 초래함에 따라 APT 공격을 방어하기 위한 기술적인 대책이 절실히 요구되고 있으나, 시그너쳐에 기반한 보안 장비로는 대응하는데 한계가 있다. 이에 본 논문에서는 기존 시그너쳐 기반 침입탐지 시스템의 한계를 극복하기 위해서 호스트 PC에서 발생하는 행위정보를 기반으로 악성코드를 탐지하는 방법을 제안한다. 먼저, 악성코드와 정상 실행파일을 구분하기 위한 39개의 특성인자를 정의하고, 악성코드 및 정상 실행파일이 실행되는 동안 발생하는 870만 개의 특성인자 데이터를 수집하였다. 또한, 수집된 데이터에 대해 각 특성인자의 발생빈도를 프로세스 ID 별로 재구성하여 실행파일이 호스트에서 실행되는 동안의 행위정보를 83차원의 벡터로 표현하였다. 특히, 자식 프로세스에서 발생하는 특성인자 이벤트의 발생빈도를 포함함으로써 보다 정확한 행위정보의 표현이 가능하였다. C4.5 결정트리 방법을 적용하여 악성코드와 정상파일을 분류한 결과 각각 2.0%의 오탐률과 5.8%의 미탐률을 보였다.
As the social and financial damages caused by APT attack such as 3.20 cyber terror are increased, the technical solution against APT attack is required. It is, however, difficult to protect APT attack with existing security equipments because the attack use a zero-day malware persistingly. In this p...
As the social and financial damages caused by APT attack such as 3.20 cyber terror are increased, the technical solution against APT attack is required. It is, however, difficult to protect APT attack with existing security equipments because the attack use a zero-day malware persistingly. In this paper, we propose a host based anomaly detection method to overcome the limitation of the conventional signature-based intrusion detection system. First, we defined 39 features to identify between normal and abnormal behavior, and then collected 8.7 million feature data set that are occurred during running both malware and normal executable file. Further, each process is represented as 83-dimensional vector that profiles the frequency of appearance of features. the vector also includes the frequency of features generated in the child processes of each process. Therefore, it is possible to represent the whole behavior information of the process while the process is running. In the experimental results which is applying C4.5 decision tree algorithm, we have confirmed 2.0% and 5.8% for the false positive and the false negative, respectively.
As the social and financial damages caused by APT attack such as 3.20 cyber terror are increased, the technical solution against APT attack is required. It is, however, difficult to protect APT attack with existing security equipments because the attack use a zero-day malware persistingly. In this paper, we propose a host based anomaly detection method to overcome the limitation of the conventional signature-based intrusion detection system. First, we defined 39 features to identify between normal and abnormal behavior, and then collected 8.7 million feature data set that are occurred during running both malware and normal executable file. Further, each process is represented as 83-dimensional vector that profiles the frequency of appearance of features. the vector also includes the frequency of features generated in the child processes of each process. Therefore, it is possible to represent the whole behavior information of the process while the process is running. In the experimental results which is applying C4.5 decision tree algorithm, we have confirmed 2.0% and 5.8% for the false positive and the false negative, respectively.
* AI 자동 식별 결과로 적합하지 않은 문장이 있을 수 있으니, 이용에 유의하시기 바랍니다.
문제 정의
APT 공격과 같이 최근에 발생된 사이버 공격들은 제로데이 취약점 및 제로데이 악성코드를 사용하는 등 점차 지능화된 공격기법을 사용하기 때문에 오용 탐지만으로는 적절한 대응이 어렵다. 따라서, 본 논문에서는 정상행위에 포함되지 않는 악성코드 및 악성행위를 탐지하기 위한 비정상행위 탐지에 초점을 두고 있으며, 특히 호스트 기반 비정상행위 탐지에 관하여 기술한다.
Table 4과 같이 수집된 특성인자 이벤트 정보를 프로세스 ID 별로 재구성 한 결과(Table 5 참조)는 다양한 데이터 마이닝 알고리즘에 적용하여 대상 프로세스의 행위 패턴이 악성코드에 의한 비정상행위 인지를 판단하게 된다. 본 논문에서는 결정트리 알고리즘을 통해 4182개의 프로세스 행위정보를 악성코드와 정상파일로 분류하는 실험을 수행하였다. 데이터 마이닝 도구인 WEKA[21]를 이용하였으며, 결정트리 방법 중에서 가장 널리 알려진 C4.
그러나, 시그너쳐 기반 탐지 방법이 주를 이루는 기존 보안장비로는 제로데이 악성코드를 이용하는 등 지능적인 APT 공격에 대한 대응이 어려운 문제점이 있다. 본 논문에서는 악성코드가 호스트 PC에서 동작하는 동안 발생하는 행위정보를 이용하여 악성코드를 탐지하는 비정상행위 기반 탐지 방법을 제안하였다. 먼저, 호스트 PC에서 발생하는 다양한 행위정보 중에서 악성코드와 정상파일을 구분하기 위한 특성인자를 정의하고 각 프로세스에서 발생한 행위 정보를 특성인자 발생빈도로 표현하였다.
본 논문에서는 호스트 기반 비정상행위 탐지 시스템(Host-based Anomaly Detection System)을 제안한다. 먼저, 호스트 PC에서 실행되는 프로세스가정상 또는 비정상 인지를 구분하기 위해 7종류의 카테고리(프로세스, 쓰레드, 파일시스템, 레지스트리, 네트워크, 서비스, 기타정보 등)로 구분하여 총 39개의 특징들을 정의한 후, 호스트 PC에서 실행되는 프로세스로부터 발생되는 39개의 특징정보를 수집하여 데이터베이스를 생성하였다.
APT 공격은 기존의 사이버 공격과 마찬가지로 다수의 악성코드를 호스트 PC에서 실행시켜 공격목적을 달성하기 때문에, 호스트에서 APT 공격을 방어하기 위해서는 악성코드의 탐지가 기본이다. 본 연구에서는 악성코드를 탐지하는 다양한 방법 중, 악성코드 시그너쳐를 이용하지 않고 악성코드가 호스트 PC에서 실행되는 동안 발생되는 다양한 행위 이벤트정보를 이용한 악성코드 탐지방법을 제안하고자 한다.
수집된 특성인자 이벤트 정보들을 재구성하기 위한 방법에는 특성인자의 발생 순서를 패턴화 하는 방법[17]과 특정 특성인자의 발생 빈도[13]를 이용하는 방법 등 다양한 재구성 방법이 사용 가능하다. 본 연구에서는 악성코드와 정상파일에 의해 발생된 행위를 표현하기 위하여 수집된 특성인자 이벤트 정보를 프로세스 ID별로 재구성하였다. 즉, 프로그램이 실행되는 동안 발생되는 모든 행위의 패턴을 나타내기 위해서 동일한 특성인자 이벤트가 발생한 빈도수를 누적하여 프로세스 ID 별로 재구성하였다.
제안 방법
APT 공격의 단계 또한 문헌마다 조금씩 다르게 정의하고 있으며, 본 논문에서는 Fig. 1과 같이 APT 공격을 사전준비, 내부망 침투, 내부활동, 목적달성의 4단계로 정의한다. 사전준비 단계는 공격자가 이후 단계를 성공하기 위해 준비하는 과정으로써, 공격대상에 관한 정보수집/분석, 웹페이지 변조, C&C 확보 등과 같은 작업이 이루어진다.
실행파일에서 추출된 OPCode의 발생빈도로부터 생성된 OPCode의 가중치를 활용하여 의미 없는 OPCode를 잡음으로 제거하였다. 또한, 각각의 실행파일에 대해서 OPCode 시퀀스와 해당 시퀀스의 빈도수를 벡터형태로 표현하였기 때문에, 코사인 유사도를 이용하여 탐지대상 실행파일이 악성파일 또는 정상파일과 유사한지 특정하였다. 활용하여 두 개 파일의 유사도를 코사인 유사도를 화하고, 벡터들 간의 코사인 유사도를 도출하였다.
5 알고리즘을 적용하였다. 또한, 수집된 특성인자 데이터를 학습 데이터와 테스트 데이터로 나뉘지 않고 10-pold 방식을 통해 테스트를 수행하였다.
마지막으로, 프로세스 별로 재구성된 프로세스 행위정보를 결정트리(Decision Tree) 방법에 입력으로 사용하여 악성코드와 정상 실행파일을 구분하는 실험을 수행하였다.
본 논문에서는 악성코드가 호스트 PC에서 동작하는 동안 발생하는 행위정보를 이용하여 악성코드를 탐지하는 비정상행위 기반 탐지 방법을 제안하였다. 먼저, 호스트 PC에서 발생하는 다양한 행위정보 중에서 악성코드와 정상파일을 구분하기 위한 특성인자를 정의하고 각 프로세스에서 발생한 행위 정보를 특성인자 발생빈도로 표현하였다. 특히, 특정 프로세스의 자식 프로세스에서 발생하는 특성인자 정보를 포함하여 특정 프로세스에 의해서 발생되는 모든 행위정보를 표현할 수 있었다.
본 논문에서는 호스트 기반 비정상행위 탐지 시스템(Host-based Anomaly Detection System)을 제안한다. 먼저, 호스트 PC에서 실행되는 프로세스가정상 또는 비정상 인지를 구분하기 위해 7종류의 카테고리(프로세스, 쓰레드, 파일시스템, 레지스트리, 네트워크, 서비스, 기타정보 등)로 구분하여 총 39개의 특징들을 정의한 후, 호스트 PC에서 실행되는 프로세스로부터 발생되는 39개의 특징정보를 수집하여 데이터베이스를 생성하였다.
특히, 특정 프로세스의 자식 프로세스에서 발생하는 특성인자 정보를 포함하여 특정 프로세스에 의해서 발생되는 모든 행위정보를 표현할 수 있었다. 본 논문에서 정의한 39개의 특성인자를 수집하기 위해 실제로 가상머신 환경에서 4000여 개의 악성 및 정상파일에 대해 870만개의 특성인자 데이터를 수집한 후, 프로세스 별로 특성 인자의 발생빈도로 표현하였다. 발생빈도로 표현된 4000여 개의 데이터에 C4.
본 논문에서 제안하는 호스트기반 비정상행위 탐지 방법은 상대적으로 탐지가 불가능하거나 어려운 사전 준비 및 내부망 침투 단계가 아니라, 내부활동 및 목적달성 단계에서 APT 공격을 탐지하는 것에 초점을 둔다.
호스트 PC에서 발생하는 행위정보를 기반으로 악성코드를 탐지하기 위해서는 악성코드와 정상파일의 특성인자에 대한 데이터 수집이 가장 중요한 부분 중 하나이다. 본 논문에서는, Table 1과 같이 정의된 특성인자를 수집하기 위해서 가상머신을 설치한 후 3133개의 악성코드와 1049개의 정상파일을 실행하여 특성인자 이벤트가 발생할 때마다 수집기를 통하여 수집하였다. 특성인자 수집기는 쿠쿠샌드박스[18]와 프로세스 모니터[19]를 이용하였으며, 수집기를 통해 수집된 특성인자 이벤트 정보는 Table 4와 같다.
호스트 행위 기반 APT 탐지를 위한 첫 번째 단계로, 악성코드와 정상 실행파일의 구분을 위한 행위 이벤트로부터 특징정보를 정의했으며 특성인자라 명명한다. 본 연구에서 정의한 특성인자는 Table 1에 정의하였으며, Windows 프로그램들이 Windows API를 호출할 때 호스트에서 발생하는 다양한 이벤트 중에서 프로세스, 쓰레드, 파일시스템, 레지스트리, 네트워크, 서비스, 기타정보 등 7종류의 카테고리로 구분하여 총 39개의 특징들을 정의하였다. 39개의 특성인자들은 특정 악성코드의 행위에 의존적인 내용이 아니며, 정상 실행파일에서도 빈번하게 발생하는 특성 인자들로 구성되어 있다.
본 연구에서는 해당 프로세스와 자식프로세스들에서 발생한 특성인자 이벤트의 빈도수를 이용하여, 모니터링하고자 하는 프로세스에 대한 보다 구체적인 행위를 표현하도록 특징 값을 정의하였다. 하나의 실행 프로세스는 여러 개의 자식 프로세스를 표현하고 있기에, 해당 프로세스에 의해 발생한 각 특성인자 이벤트의 빈도수와 자식 프로세스들에 의해 발생한 각 특성인자 이벤트 빈도수의 누적 합을 이용하여 각 실행 프로세스의 행위를 특징 값으로 기술하였다.
수집된 데이터베이스는 다시 프로세스별로 각 특징 정보의 발생횟수를 표현하는 형태로 재구성하였다. 이때, 자식 프로세스가 존재할 경우 자식 프로세스에서 발생되는 특징정보의 발생횟수까지 함께 표현함으로써, 해당 프로세스의 시작 시점부터 종료 시점까지 발생되는 행위정보를 특징 벡터로 재구성 하였다.
는 호스트 기반 비정상 행위 탐지에 퍼지로직과 유전자 알고리즘을 이용하였다. 수집된 시스템 로그 파일에 퍼지 규칙을 적용하여 정상 사용자의 행위를 정의하였고, 퍼지 규칙으로 표현된 사용자 행위를 보다 최적화하기 위해서 유전자 알고리즘을 적용하여 새로운 사용자 행위 규칙을 생성하였다.
는 정상파일과 악성코드에서 발생되는 OPCode의 발생빈도와 OPCode 시퀀스 정보를 활용하였다. 실행파일에서 추출된 OPCode의 발생빈도로부터 생성된 OPCode의 가중치를 활용하여 의미 없는 OPCode를 잡음으로 제거하였다. 또한, 각각의 실행파일에 대해서 OPCode 시퀀스와 해당 시퀀스의 빈도수를 벡터형태로 표현하였기 때문에, 코사인 유사도를 이용하여 탐지대상 실행파일이 악성파일 또는 정상파일과 유사한지 특정하였다.
수집된 데이터베이스는 다시 프로세스별로 각 특징 정보의 발생횟수를 표현하는 형태로 재구성하였다. 이때, 자식 프로세스가 존재할 경우 자식 프로세스에서 발생되는 특징정보의 발생횟수까지 함께 표현함으로써, 해당 프로세스의 시작 시점부터 종료 시점까지 발생되는 행위정보를 특징 벡터로 재구성 하였다.
에서 수집된 11,000개의 악성코드 중에서 Adware로 분류되는 악성코드를 제외한 나머지 2663개와 자체적으로 수집한 470개의 악성코드를 한 번에 하나씩 실행하면서 발생되는 특성인자 이벤트 정보를 수집하였다. 정상파일의 경우 메모장(Notepad) 등 윈도우즈에서 제공하는 기본 프로그램 뿐 만 아니라, 일반 사용자가 주로 사용하는 웹 브라우즈, 워드프로세스, 파일 전송 프로그램, 압축 유틸리티 등의 프로그램을 실행하면서 수집하였다. 3133개의 악성코드를 실행하는 동안 대략 400만 건의 특성인자 이벤트가 수집되었으며, 정상파일을 실행하는 동안 470만 건의 특성인자 이벤트가 수집되었다.
본 연구에서는 악성코드와 정상파일에 의해 발생된 행위를 표현하기 위하여 수집된 특성인자 이벤트 정보를 프로세스 ID별로 재구성하였다. 즉, 프로그램이 실행되는 동안 발생되는 모든 행위의 패턴을 나타내기 위해서 동일한 특성인자 이벤트가 발생한 빈도수를 누적하여 프로세스 ID 별로 재구성하였다. 일반적으로 하나의 실행 프로그램(정상 실행파일 또는 악성 코드)은 여러 개의 자식 프로세스를 생성할 수 있다.
마지막, 목적달성 단계는 중요정보를 유출하거나, 공격대상 내부 IT 인프라를 파괴하는 등 APT 공격의 목적을 달성하기 위한 작업이 진행되며, 특정 행위를 실행하기 위한 다양한 악성코드가 사용된다. 추가적으로 공격자가 핵심정보를 지속적으로 유출시키기 위해 백도어 등의 프로그램을 설치하여 공격대상에 지속적으로 접근할 수 있도록 시도한다. SK 컴즈 사고에서는 대량의 고객정보가 유출되었으며, 3.
Murtaza[15]는 시스템 호출 시퀀스를 사용하는 대신 특정 시간동안 발생하는 시스템 호출 시퀀스를 상태(state)라고 정의하고, File System, Kernel, Memory Management 등 8개의 상태 카테고리로 구분하였다. 특정 응용 프로그램에서 발생하는 상태 전이(state transition) 및 상태들의 상호연관성 패턴을 분석하여 정상 행위와 비정상 행위를 구분하였다. S.
본 연구에서는 해당 프로세스와 자식프로세스들에서 발생한 특성인자 이벤트의 빈도수를 이용하여, 모니터링하고자 하는 프로세스에 대한 보다 구체적인 행위를 표현하도록 특징 값을 정의하였다. 하나의 실행 프로세스는 여러 개의 자식 프로세스를 표현하고 있기에, 해당 프로세스에 의해 발생한 각 특성인자 이벤트의 빈도수와 자식 프로세스들에 의해 발생한 각 특성인자 이벤트 빈도수의 누적 합을 이용하여 각 실행 프로세스의 행위를 특징 값으로 기술하였다. Table 3에본 연구에서 제안하는 프로세스의 행위를 기술하기 위한 특징 값을 제시하였다.
또한, 각각의 실행파일에 대해서 OPCode 시퀀스와 해당 시퀀스의 빈도수를 벡터형태로 표현하였기 때문에, 코사인 유사도를 이용하여 탐지대상 실행파일이 악성파일 또는 정상파일과 유사한지 특정하였다. 활용하여 두 개 파일의 유사도를 코사인 유사도를 화하고, 벡터들 간의 코사인 유사도를 도출하였다.
대상 데이터
정상파일의 경우 메모장(Notepad) 등 윈도우즈에서 제공하는 기본 프로그램 뿐 만 아니라, 일반 사용자가 주로 사용하는 웹 브라우즈, 워드프로세스, 파일 전송 프로그램, 압축 유틸리티 등의 프로그램을 실행하면서 수집하였다. 3133개의 악성코드를 실행하는 동안 대략 400만 건의 특성인자 이벤트가 수집되었으며, 정상파일을 실행하는 동안 470만 건의 특성인자 이벤트가 수집되었다.
내부망 침투 단계는 공격자가 공격대상의 IT 인프라에 침투하는 단계로써, 악성 e-mail 발송, 변조된 웹하드/웹게시판 접속, 변조 업데이트 서버 접속 등의 방법을 통해 이루어진다. 메일 수신자의 관심분야, 사용 중인 웹하드/웹게시판, 사용 중인 SW 리스트 정보는 사전준비 단계에서 이미 수집/분석되었다. 악성 e-mail을 통한 내부망 침투의 경우 공격대상 조직의 인사 관련 내용, 사회적인 이슈와 관련된 내용, 카드 이용대금 명세서, 쇼핑몰 배송안내 등 사회공학적인 기법을 이용하여 공격대상 직원이 관심을 가지고 의심 없이 메일의 첨부파일을 실행하도록 유도한다.
악성코드의 경우 malshare[20]에서 수집된 11,000개의 악성코드 중에서 Adware로 분류되는 악성코드를 제외한 나머지 2663개와 자체적으로 수집한 470개의 악성코드를 한 번에 하나씩 실행하면서 발생되는 특성인자 이벤트 정보를 수집하였다. 정상파일의 경우 메모장(Notepad) 등 윈도우즈에서 제공하는 기본 프로그램 뿐 만 아니라, 일반 사용자가 주로 사용하는 웹 브라우즈, 워드프로세스, 파일 전송 프로그램, 압축 유틸리티 등의 프로그램을 실행하면서 수집하였다.
본 논문에서는, Table 1과 같이 정의된 특성인자를 수집하기 위해서 가상머신을 설치한 후 3133개의 악성코드와 1049개의 정상파일을 실행하여 특성인자 이벤트가 발생할 때마다 수집기를 통하여 수집하였다. 특성인자 수집기는 쿠쿠샌드박스[18]와 프로세스 모니터[19]를 이용하였으며, 수집기를 통해 수집된 특성인자 이벤트 정보는 Table 4와 같다.
이론/모형
본 논문에서는 결정트리 알고리즘을 통해 4182개의 프로세스 행위정보를 악성코드와 정상파일로 분류하는 실험을 수행하였다. 데이터 마이닝 도구인 WEKA[21]를 이용하였으며, 결정트리 방법 중에서 가장 널리 알려진 C4.5 알고리즘을 적용하였다. 또한, 수집된 특성인자 데이터를 학습 데이터와 테스트 데이터로 나뉘지 않고 10-pold 방식을 통해 테스트를 수행하였다.
성능/효과
Table 2에서 정의된 구조로 수집된 특성인자 데이터의 일부분을 Table 4에 제시하였다. firefox.exe, FlashPlayerUpdateService.exe 등의 실행파일에서 8번, 39번, 2번등의 특성인자 이벤트가 발생하여 수집된 결과이며, parameter1 항목에 해당 API가 호출될 때 사용한 다양한 부가정보가 저장되고 있음을 보여준다.
네트워크 및 서비스 카테고리는 호스트 컴퓨터에서 동작하는 해당 프로그램이 네트워크 및 인터넷 서비스를 사용할 때 발생할 수 있는 행위들로 각각 5개와 4개의 특정인자로 구성된다. 마지막으로, 기타 카테고리는 특정 분류로 정의하기 어려운 CreateMutex, OpenMutex, LoadLibaray의 3개의 특성인자로 정의하였다. 각각의 특성인자는 동일한 행위 이벤트라도 서로 다른 여러 가지 Windows API가 호출될 때 발생할 수 있기 때문에, 호스트에서 발생하는 모든 특성인자를 수집하기 위해서는 39개보다 많은 Windows API를 모니터링하여야 한다.
본 논문에서 정의한 39개의 특성인자를 수집하기 위해 실제로 가상머신 환경에서 4000여 개의 악성 및 정상파일에 대해 870만개의 특성인자 데이터를 수집한 후, 프로세스 별로 특성 인자의 발생빈도로 표현하였다. 발생빈도로 표현된 4000여 개의 데이터에 C4.5 결정트리 알고리즘을 적용하여 악성코드와 정상파일을 분류하는 실험에서 2.0%의 오탐률과 5.8%의 미탐률을 보였다. 보다 중요한 것은 SVM(Support Vector Machine), 신경망 등의 분류(classification) 알고리즘 또는 군집화(clustering) 알고리즘에 적용하기 위해서 수집된 870만개의 특성인자 이벤트 데이터를 다양한 형태로 가공하여 사용할 수 있다는 것이다.
이는, 본 논문에서 정의한 39개의 특성인자 정보가 악성코드와 정상파일의 행위정보를 적절히 구분할 수 있음을 의미한다. 뿐만 아니라, 해당 프로세스에 의해 발생한 각 특성인자 이벤트의 빈도수와 자식 프로세스들에 의해 발생한 각 특성인자 이벤트 빈도수의 누적 합을 프로세스 별로 재구성한 표현방법은 결정트리와 같은 데이터 마이닝 기법에 적절함을 알 수 있다.
8%의 미탐률(False Negative)을 보였다. 이는, 본 논문에서 정의한 39개의 특성인자 정보가 악성코드와 정상파일의 행위정보를 적절히 구분할 수 있음을 의미한다. 뿐만 아니라, 해당 프로세스에 의해 발생한 각 특성인자 이벤트의 빈도수와 자식 프로세스들에 의해 발생한 각 특성인자 이벤트 빈도수의 누적 합을 프로세스 별로 재구성한 표현방법은 결정트리와 같은 데이터 마이닝 기법에 적절함을 알 수 있다.
Table 3에본 연구에서 제안하는 프로세스의 행위를 기술하기 위한 특징 값을 제시하였다. 제안하는 특징 값은 Table 2에서 기술한 UserID, HostID, Filename, ProcessID의 4차원과 모니터링 하고 있는 프로세스의 특성인자 이벤트의 빈도수 39차원, 자식 프로세스들의 특성인자 이벤트 빈도수의 누적 합 39차원, 마지막으로 테스트를 위한 라벨(정상 또는 악성) 1차원을 포함 총 83차원으로 정의된다. 각 특징 값의 속성 변수명은 <자료형 type+특성인자 명+(_CP)>로 구성하였다.
또한, 변조된 웹하드/웹게시판에 공격대상 직원이 접속하게 되면 악성코드가 자동으로 다운로드 되어 PC를 감염시킨다. 특히, 최근 발생한 대표적인 APT 공격 사례인 SK 컴즈 및 3.20 사이버 사고에서와 같이 목표대상에서 사용 중인 SW의 업데이트 서버를 통해 악성코드를 감염시킴으로써 각종 보안장비를 무력화 시키고 공격대상의 내부망에 침투할 수 있었다. 이처럼, 사회공학적인 기법 및 제로데이 취약점을 이용하여 침투하기 때문에 내부망 침투 단계에서 APT 공격을 탐지하는 것은 아주 어렵다.
먼저, 호스트 PC에서 발생하는 다양한 행위정보 중에서 악성코드와 정상파일을 구분하기 위한 특성인자를 정의하고 각 프로세스에서 발생한 행위 정보를 특성인자 발생빈도로 표현하였다. 특히, 특정 프로세스의 자식 프로세스에서 발생하는 특성인자 정보를 포함하여 특정 프로세스에 의해서 발생되는 모든 행위정보를 표현할 수 있었다. 본 논문에서 정의한 39개의 특성인자를 수집하기 위해 실제로 가상머신 환경에서 4000여 개의 악성 및 정상파일에 대해 870만개의 특성인자 데이터를 수집한 후, 프로세스 별로 특성 인자의 발생빈도로 표현하였다.
질의응답
핵심어
질문
논문에서 추출한 답변
분산 서비스 거부 공격은 무엇인가?
과거 해커들은 단순한 호기심 또는 자신의 능력을 과시하기 위해서 컴퓨터 바이러스, 인터넷 웜과 같은 악성코드를 제작하여 불특정 다수에게 전파한 후, 다른 사용자의 시스템을 해킹하는 악의적인 행동을 하였다. 2000년대 중후반에는 불특정 시스템들로부터 발생된 대량의 트래픽을 공격대상 홈페이지 또는 서버에 보내 해당 네트워크 및 시스템의 성능을 저하시켜 정상적인 서비스 제공이 불가능하게 하는 분산 서비스 거부 공격(Distributed Denial-of-Service, DDoS)이 출연하였다.
지능형 지속 위협은 무엇인가?
주로 특정 홈페이지를 공격하여 서비스를 마비시키는 것이 목적인 DDoS 공격과는 달리, 최근 명확한 목적과 대상을 상대로 시스템을 파괴하거나, 대량의 중요 정보를 유출시키는 지능형 지속 위협(Advanced Persistent Threat, APT) 공격이 등장하였으며, 원자력 발전소와 같은 중요한 산업기반시설이나 구글, 야후 같은 유명 인터넷업체, EMC RSA같은 대표적인 보안업체들이 잇달아 APT 공격에 속수무책으로 당하면서, 그 우려와 관심이 최근 무척 높아지고 있다[3-5].
내부정보유출방지 기술의 한계점은?
방화벽(Firewall), 침임탐지시스템((Instruction Detection System, IDS), 침입차단시스템(Intrusion Prevention System, IPS)과 같은 네트워크 보안 장비와, 바이러스 백신(Anti-Virus), 내부정보유출방지 기술(Data Loss Prevention, DLP) 등의 호스트 PC보안 기술들이 사이버 공격에 대응하기 위해 사용되고 있다. 이러한 기존 기술들은 대부분 알려진 공격에 대한 블랙리스트(blacklist)나 시그너쳐 (signature)에 기반을 두고 있기 때문에 알려진 공격에 대해서는 효과적인 탐지 및 대응능력을 보여주고 있으나, 제로데이(Zero-day)취약점 및 신종/변종 악성코드를 지속적으로 이용하는 APT 공격을 대응하기에는 한계가 있다.
참고문헌 (21)
NSHC, "3.20 South Korea Cyber Attack, Red Alert Research Report," http://training.nshc.net/KOR/Document/virus/20130321_320CyberTerrorIncidentResponseReportbyRedAlert(EN).pdf, 2013
Command Five. "SK Hack by an Advanced Persistent Threat," http://www.commandfive.com/papers/C5_APT_SKHack.pdf
C. Tankard, "Persistent threats and how to monitor and deter them," Network security, Vol. 2011, No. 8, pp. 16-19, Aug. 2011.
A. W. Coviello. Open letter to RSA customers. www.rsa.com/node.aspx?id3872, 2011.
Jiankun Hu, "Host-Based Anomaly Intrusion Detection," Handbook of Information and Communication Security, Springer, pp 235-255, 2010.
A. S. Ashoor and S. Gore, "Intrusion Detection System: Case study," Proc. of International Conference on Advanced Materials Engineering, vol. 15, Singapore, pp. 6-9, Oct. 2011.
Kyungho Son, Taijin Lee, Dongho Won, "Design for Zombie PCs and APT Attack Detection based on traffic analysis," Journal of The Korea Institute of Information Security & Cryptology, Vol.24, No.3, pp. 491-498, Jun. 2014
Verizon, "Threats on the horizon - the rise of the advanced persistent threat."
G. Tandon, "Machine Learning for Host-based Anomaly Detection," Florida Institue of Technology, Melbourne, Florida, USA, Ph.D. thesis, 2008.
W. Wang, X. H. Guan, and X. L. Zhang, "Modeling program behaviors by hidden Markov models for intrusion detection," Proc. of International Conference on Machine Learning and Cybernetics, pp. 2830-2835, Aug. 2004.
C. Warrender, S. Forrest, and B. Pearlmutter, "Detecting intrusions using system calls: alternative data models," Proc. of IEEE Symposium on Security and Privacy, Oakland, USA, pp. 133-145, May. 1999.
S. S. Murtaza, et al., Mario Couture, "A host-based anomaly detection approach by representing system calls as states of kernel modules," Proc. of 24th Intl. Symposium on Software Reliability Engineering(ISSRE), pp. 431-440, Nov. 2013.
H. Kaur and N. Gill. "Host based Anomaly Detection using Fuzzy Genetic Approach (FGA)," International Journal of Computer Applications, Vol. 74, No. 20, pp.5-9, Jul. 2013.
I. Santos, et al., "Idea: Opcode-sequence- based malware detection," Proc. of the 2nd International Symposium on Engineering Secure Software and Systems (ESSoS 2010), Lecture Notes in Computer Science, Vol. 5965, pp. 35-43, Feb. 2010.
Cuckoo sandbox, www.cuckoosandbox.org
Process monitor, http://technet.microsoft.com/ko-kr/sysinternals/bb896645
Malshare, http://malshare.com/
WEKA Open Sources tools for Data Mining, http://www.cs.waikato.ac.nz/ml/weka/
※ AI-Helper는 부적절한 답변을 할 수 있습니다.