slide-image

이버에는 IDS 내용이다.

 

침입자 탐지에 Defense-in-depth(심층방어) 전략이 중요하다고 한다.

침입자는 Cyber criminals와 hactivists, state-sponsored organizations, others 로 혹은 apprentice, journeyman, master로 분류가 가능하다고 한다

 

침입의 예로는

performing a remote root compromise of an e-mail server

defacing a web server

guessing and cracking passwords

copying a database containing creidt card numbers

viewing sensitive data, including payroll records and medical information without authorization

funning a packet sniffer on a workstation to capture usernames and passwords

using a permission error on an anonymous FTP server to distribute pirated soft and music files

dialing into an unsecured modem and gaining internal network access

posing as an executive, calling the help desk, resetting the executive's e-mail password, and lerning the new password

using an unattended, logged-in workstation without permission

등이 있다고 한다.

 

침입자의 행동은

1. target acquistion and information gathering

DNS lookup tools (dig, host, query WHOIS databse)를 이용하여 정보를 모으고, NMAP같은 툴을 이용해 접근가능한 네트워크 서비스 정보를 알아내고, 취약한 웹 CMS(content management system)같은 취약한 서비스 정보를 얻어내는 등의 행동을 뜻한다.

2. Initial access

브루트 포스나 guess로 Web CMS 패스워드를 알아내거나 취약한 CMS 플러그인으로 시스템에 access하는 것을 뜻한다.

3. Pricvilege Escalation

스캔이나 스니핑 등을 통해 더 높은 권한을 얻어내는 것을 뜻한다.

4. information gathering or system exploit

scan, transfer to external repository, 알아낸 패스워드들을 통해 다른 서버에 접근하는 것들 뜻한다.

5. maintaining access

RAT이나 백도어, 루트킷을 설치하거나 관리자의 PW를 알아내거나, AV나 IDS 프로그램등을 변조하거나 제거해서 이후에도 계속 접근할 수 있도록 만드는 것을 말한다.

6. Covering tracks

흔적을 지우는 것인데, 루트킷을 이용하거나 로그파일을 수정하는 등으로 수행될 수 있다.

 

IDS는 침입 탐지 시스템이고 IPS는 침입 탐지 시스템인데, 일단 IDS만 보고 09에서 IPS를 보겠다.

IDS는 강력한 공격자에 대한 충분한 방어를 제공하지는 않지만, 알려지고 덜 세련된 공격들에 대한 방어는 제공하고 defense-in-depth의 일환으로 사용된다고 한다. 심층 방어 전략이란, 러 겹의 복잡한 방어를 통해 최적화되고 강력한 보안체계를 구축하는 것이다. 

또한 빠른 탐지는 피해의 최소화로 이어지고, 효과적인 IDS가 설치되어있다는 것 자체가 공격 의지를 떨어트릴수 있다. (APT외 공격을 줄일 가능성 있음)

침입에 사용된 기술에 대한 정보를 수집할 수 있어 침입 방지 수단을 강화할 수도 있다.

 

False Alarm이란 침입자와 승인된 사용자 간 겹치는 행동이 있을 때 해당 행동을 침입자로 인식하고 alarm하는 것을 말한다. IDS경우에도 base-rate fallacy때문에 false alarm을 충분히 줄이기 쉽지 않다.

 

분석 방법을 분류하면,

1. anomaly detection

과거 적법한 사용자의 행동에 대한 데이터를 오랜 기간 수집하고, 현재 사용자의 행동을 그에 기반하여 분석하여 결정한다. 일단 정상 행동에 대한 모델을 구축하고 그에 기반하므로 알려지지 않은 공격도 탐지 가능하다는 장점이 있지만, 정상 행동에 대한 데이터 수집과 모델 구축이 어렵다는 단점이 있다. 또한 false alarm에 관한 문제도 있다.

 

과정으로는 먼저 training phase로 정상적인 사용자 행동에 대한 데이터를 바탕으로 모델을 구축하고, detction phase로 구축된 모델을 바탕으로 해 관찰된 행동이 정상인지 비정상인지 판단한다. 

 

분석 및 판단 방법으로는 통계적 기법(statistical)에 의해 분석하거나, 적법한 행동을 모델링 하는 규칙들에 의해 관찰된 행동을 분류하는 expert system을 사용한 knowledge based방식과 데이터 마이닝이나 기계학습 방법론을 이용한 machine-learning 방식이 있다.

통계적 기법에서는 univariate 모델이나 multiariate 모델이나 time-series 모델 등을 사용하는데, 단순하고 효율적으로 분석을 할 수 있지만, 적절한 metric 선정이 어렵고, 모든 행동에 적용되기 어렵다.

지식기반 접근 방식에서는 training phase에서 관찰된 데이터를 별도 class로 분류하는데, 대개 수동으로 분리한다. robustness(견고성)&flexibility를 조정할 수 있지만, 수준 높은 지식을 추출해야하고, 전문 인력이 필요하다는 단점이 있다.

기계학습 기반 분석으로는 베이지안 네트워크, 마코프 모델, 인공신경망, 퍼지로직, 제네릭 알고리즘, 클러스터링 아웃라이어 디텍션 등을 사용할 수 있고, 유연하고 적응 가능하게 관찰된 metric 들 간 상관관계를 포착할 수 있다. 하지만 합법적 행동에 대해서 가정에 의존해야 하여 적법한 행동에 관한 데이터에 대해서만 학습이 된다는 경향이 있고, false alarm이 너무 크며, 계산 자원이 소모된다는 단점이 있다.

 

2. Signature or heuristic detection

사전에 알려진 공격 기법에 기반하여 데이터의 패턴(signature)에 따라 혹인 정해진 규칙(heuristic, 어림짐작)에 따라 행동을 판단한다. 악의적인 행동을 직접적으로 패턴이나 규칙을 이용하여 정의하므로 알려진 공격만 탐지 가능하다는 단점이 있다. 하지만, 알려진 공격만큼은 빠르고 효율적으로 탐지할 수 있다. 

 

분석 방법으로 패턴(시그니처)을 포착하는지 탐지하는 방식은 주로 AV에서 사용하는 방식이다. 이 방식은 효율적이고 널리 받아들여진 방식이나, 개별 공격에 대해 끊임없이 시그니처를 개발해야하고 DB를 갱신해야 한다. 따라서 제로데이 어택을 막지 못한다.

그리고 bule-based heuristic identification은 휴리스틱하게 정해진 규칙을 탐지한다.

 

 

IDS는 3가지 구성 요소로 이루어지는데, 센서, Analyzer, UI로 이루어진다.

센서는 네트워크 패킷, 로그 파일, system call trace 등으로부터 수집한 정보를 analyzer에게 전달한다.

analyzer는 센서에서 받은 정보를 분석해서 침입이 일어났는지를 결정한다.

 

IDS는 HIDS, NIDS, HIDS로 분류할 수 있다.

1. HIDS는 Host-based IDS로 단일 호스트 내부를 감시한다.

취약하거나 민감한 시스템에 설치되어 침입 감지, 수상한 사건 기록, alert 전송 등의 역할을 수행한다.

 

2. NIDS는 Netword-based IDS로 특정 네트워크 내의 트래픽을 감시하고, 네트워크, 트랜스포트, 어플리케이션 프로토콜을 분석하여 의심스러운 활동을 포착한다.

 

3. HIDS는 Distributed, Hybrid IDS로 다수의 센서로부터 다수의 정보를 중앙 Analyzer가 취합하여 판단한다.