요 근래 정보 보안 관련하여, 새로운 프로젝트에 참가하게 되었다. 기계 학습을 활용해서 해킹 시도를 막는 알고리즘을 손보는 것인데, 데이터 분석은 꽤 다뤄봤기에 부담스러울 것 없지만, 보안에 대한 지식은 전무한 상태라 제대로 된 접근이 힘들 것이다. 그런고로 이번 포스트에선 정보 보안이 어떠한 형태로 돌아가는지 기초적인 수준의 개념을 알아보고자 한다.
※ 본 포스트의 목적은 정보 관제에 대한 기초 상식을 파악이 목적으로, 심도 깊은 수준까지의 탐색은 하지 않도록 하겠다.
이번 포스트에서는 와우북스 보안 시리즈 중 하나인 "빅데이터 분석으로 살펴본 IDS와 보안 관제의 완성 - 패턴 매치 기법을 이용한 정보보안 감시체계의 완성 - 강명훈 저"라는 책을 바탕으로 작성하였다.
정보 보안(Information Security 또는 Inforsec)
먼저 정보 보안에 대해서 위키피디아가 어떻게 설명하고 있는지를 봐보자.
https://ko.wikipedia.org/wiki/%EC%A0%95%EB%B3%B4_%EB%B3%B4%EC%95%88
- 위키피디아의 내용을 읽어보면, 정보 보안이란, "정보의 유통 과정에서 훼손, 변조, 유출되는 것을 막는 것을 의미한다."라고 볼 수 있다.
- 이를 보다 직설적으로 표현해보면, 소중한 "정보"를 누군가가 바꿔버리거나 훔쳐가려는 시도를 막는 행위라고 할 수 있겠다.
- 정보 보안에는 3가지 주요 목표가 있다.
- 기밀성(Confidentiality)
: 허락되지 않은 사용자가 정보의 내용을 알 수 없게 해야 한다. - 무결성(Integrity)
: 허락되지 않은 사용자는 정보를 마음대로 수정할 수 없다. - 가용성(Availability)
: 허락된 사용자가 정보에 접근할 때, 방해받아선 안된다.
DDoS 공격(서비스 거부 공격: 특정 사이트에 엄청난 트래픽을 발생시켜서 정상적인 사용자가 사용을 못하도록 만드는 행위)이 좋은 예시임.
- 기밀성(Confidentiality)
자, 간단하게 정보 보안이 뭔지는 알았으니, 이번에는 이 정보보안을 위해서 이루어지는 보안관제(Manged Security Service)에 대해 알아보자.
보안관제(Managed Security Service)란?
: 국가 전산망 보안관제 지침에선 보안관제를 다음과 같이 정의하고 있다.
"정보통신망을 대상으로 수행되는 사이버 공격정보를 탐지, 분석, 대응하는 일련의 활동"
- 보안관제란 말 그대로, 정보 보안을 위해, 공격이 들어오는 것을 탐지하고, 공격에 대해 분석하고, 이에 대응하는 모든 활동을 가리킨다.
- 즉, 해킹을 막기 위한 일련의 활동이다.
이번에는 이 보안관제에 사용되고 있는 기법들에 대해서 알아보자.
보안솔루션
방화벽(Fire Wall)
- 네트워크 구성 시 당연히 설치되어야 하는, 필수이자 기본 솔루션이다.
- 방화벽의 룰은 아주 단순하다. 사전에 허용하기로 정의한 IP와 Port가 아니면 차단한다.
- 방화벽은 패킷 또는 세션 단위로 모든 트래픽의 허용 또는 차단 로그를 남긴다.
- 사고가 난 경우, 이를 분석할 때, 큰 도움이 되지 않는다.
- 방화벽은 최소 예방 보안으로, 역할이 끝난다.
- 방화벽에 대한 로그 데이터는 패킷 또는 세션 단위로 모든 트래픽에 대하여 허용, 차단 로그가 남으므로, 그 양이 어마어마하다.
- 방화벽을 통과해서 보안 사고가 발생한 경우, 얻을 수 있는 정보는 접근 시간대 정도이다.
- 그러므로, 공격 패턴이나 트래픽 발생 양상과 같은, 방화벽보다 공격임이 뚜렷한 로그에 대해서만 사고 분석을 실시하는 것이 옳다.
IDS/IPS
- IDS/IPS는 TCP/IP 최상위 계층인 응용계층까지 검사 가능한 최초의 보안솔루션으로, 현존하는 보안솔루션 중 네트워크를 통해 침입하는 보안 위협을 그나마 가장 효과적으로 감시할 수 있는 룰 기반 보안솔루션이다.
- 참고 서적 저자의 견해
: 네트워크를 통해 전달되는 데이터는 최종적으로 인간이 식별 가능한 문자나 숫자 등의 '기호'로 표현되는 정보를 송수신하면서 상호 간 서로 의도했던 의미를 수립한다.
데이터는 인간의 의사소통과 마찬가지로 표현에 사용된 기호의 성격에 따라 최종 전달되는 정보의 의미가 달라지며, 최종 전달되는 정보의 보안 위협 여부 판단을 위해, 문자열 패턴(Signature)을 이용하여, 패킷 데이터 영역에 사용된 기호를 검사하는 방식은 매우 효과적이고, 그 이상 향상된 방식은 개발되지 않았다.
(물론 이 방식은 커다란 허점을 가지고 있음)
- 참고 서적 저자의 견해
- IDS와 IPS의 핵심 기능은 사전에 정의된 룰과 트래픽의 비교를 통해 보안 위협을 찾아내는 것이다.
- 즉, 둘 다 탐지가 핵심 기능이다(그러므로, 둘 중 무엇이 더 우월하다고 판단해서는 안된다).
- IDS와 IPS는 같은 룰 운영치계를 가지고 있다.
- IP 주소, Port 번호뿐만 아니라, TCP/IP 응용계층의 데이터까지 검사 가능(패턴 매치 기법 or DPI)
- 간단하게 말하자면, 방화벽은 편지지의 봉투 주소만 확인하는 것이고, IDS/IPS는 편지의 내용까지 검사한다
- IDS/IPS는 문자열 패턴(Signature)을 검사할 수 있는 '룰 옵션' 구조를 이용해 패킷의 데이터(Payload) 영역까지 검사한다.
- 네트워크 보안을 전체적으로 아우르는 주력 솔루션이다.
- IDS/IPS는 '패턴 매치 기법'을 이용하는 '룰 기반 보안솔루션'이므로, 보안관제 업무의 핵심이며, 탐지와 방어라는 측면에서 서로 상호 보완하는 업무 프로세스를 가져야 한다.
- IPS가 방어를 위한 탐지를 선행하며, 뒤에 IDS가 붙는다.
- IPS만 단독으로 사용하는 경우, 부정확한 룰의 방어 기능에 의한 서비스 실패 등 많은 제약이 발생하며, 룰의 정확성을 향상하기 위해선 많은 데이터를 이용한 정확한 분석이 필요하나, 대량의 데이터를 정확히 분석 가능한 IPS는 사실상 없다.
IDS
- IDS는 원본 트래픽을 손실이나 변조 없이 복사해주는 방비인 TAP이 기계적으로 복사해주는 트래픽을 검사하는 구조다.
- 즉, 본래의 트래픽 유통에 전혀 관여하지 않는다.
- Out of Path(또는 Mirror) 방식이라고도 한다.
- 공격자에 대한 소극적인 방어만 가능(공격자 호스트로 리셋 패킷을 보냄, 방화벽과 연동해서 공격자 차단)
IPS
- 기존 트래픽 유통에 직접 관여한다.
- 모든 트래픽은 IPS를 거쳐야만 유통 가능하다.
- InLine 방식이라고 한다.
- 장애에 대비한 트래픽 우회(Bypass)가 가능한 TAP를 내장시키는 게 일반적이다.
- 공격자에 대한 적극적인 방어 가능(공격자의 패킷을 Drop 함)
- 트래픽 유통에 직접 관여하므로, 빠른 처리 속도가 필요하다(IPS의 트래픽 처리 성능에 문제가 있어서 트래픽 유통에 문제가 생긴다면, 당연히 사용자들이 싫어한다.).
- 적극적인 방어가 가능한 IDS를 IPS라고 할 수 있다.
IDS/IPS 로그 구조
- 탐지 시간부터 피해자 포트까지를 기본정보
- 공격 패킷 데이터를 상세정보(Rawdata)라고 한다.
- 상세정보는 바로 보여주진 않고, 별도의 조작을 통해서만 상세정보를 확인할 수 있다.
안티(Anti) DDos
- DDoS(분산 서비스 거부 공격)
: 시스템 및 네트워크 자원(CPU, 메모리, 디스크, 네트워크 대역폭, 세션 등)을 비정상적으로 소진시켜, 정상적인 자원 사용을 방해하는 DoS의 진화된 공격형태이며, 공격/피해자 분포가 일대일(1:1)인 DoS에 비해, 다대일(N:1)이라는 특징을 가지고 있다.- 아주 간단하게 말하면, 공격자가 상대방의 컴퓨터 자원을 크게 소모시키는 행위를 하여, 정상적인 행동을 못하게 만드는 것이다.
- 평상시, 세션 발생 추이를 기준으로 한 비교 분석을 하여 DDoS 대비
- 세분화될수록 분류와 분석은 복잡해지고 대응하기 어려워지므로, TCP 레벨의 DDoS 공격으로 통합해 접근
- DDoS 대응을 위한 업무 프로세스
- DDoS 보호 대상 시스템 및 네트워크 선정
- 시스템 및 네트워크 자원(CPU, 메모리, 세션, BPS, PPS 등)의 사용 임계치 산정을 통한 DDoS 대응 장비 설정 최적화
- DDoS 공격 전담 관제를 통한 자원 사용 이상 징후 파악
웹 방화벽
- 웹(웹서버, 웹 사용자 모두)은 공격자들의 최대 공격 목표이나, 방화벽, IDS/IPS, 안티 DDoS 솔루션들은 웹을 향한, 또는 웹을 통한 공격에 효과적으로 대응하지 못한다.
- 방화벽, IDS/IPS, 안티 DDpS 모두 웹을 대상으로 하였을 때, 눈에 띌 정도로 큰 한계점이 존재함
- 웹 방화벽의 접근제어 방식은 크게 두 갈레로 Positive 방식, Negative 방식으로 나눠진다.
분류 | Positive | Negative |
개념 | 사전에 안전하다고 정의된 패턴만 허용 | 사전에 위험하다고 정의된 패턴만 거부(탐지/차단) |
장점 | 알려진 정상 패턴만을 허용함으로써 알려지지 않은 공격까지 자동 차단 | 공격 패턴이 정확하면 서비스 구조 변경 등과 관계없이 적용 가능 |
단점 | 서비스 구조 등의 변경 발생 시 즉각적인 정책 반영 필요 | 알려지지 않은 공격 패턴에 관한 지속적인 연구 필요 |
적용 | 방화벽, 웹 방화벽 등 > 사전 정의된 패턴과 일치하지 않는 모든 트래픽 차단 |
IDS, IPS 등 > 사전 정의된 패턴과 일치하지 않는 모든 트래픽 허용 |
- 웹 방화벽의 효과를 극대화시키기 위해선, 정상적인 웹사이트 이용 패턴을 사전에 정의해야 하며, 이 작업은 웹서버를 직접 구축하고 웹사이트를 직접 설계한 개발자 수준의 운영자가 있어야만 가능하다 할 정도로 고도의 숙련된 기술이 필요하다.
- 이런 운영상 어려움으로 인해, 이론적으론 효과적이나 현실적으로는 그리 큰 효과를 보지 못한다.
- 현재는 Positive, Negative 접근제어 방식을 혼용한 형태가 대세로, 기본적인 Positive 정책을 적용하고, 그 정책을 통과한 트래픽에 대해 IDS나 IPS처럼 공격 패턴을 탐지 또는 차단하는 Negative 정책을 적용하는 것이다.
- 최근엔 평판(Reputation, 입소문 마케팅 기법을 적용해 다른 웹 방화벽의 공격 평가를 자신의 평가에 반영) 기법을 도입하려는 움직임도 있으나, 걸음마 수준이며, 이 또한 정확하게 평가된(정확하게 탐지 또는 차단한) 정보들이 모여야 한다.
- Positive 또는 Negative를 막론하고 정확한 룰 운영이 먼저이다.
ESM(Enterprise Security Management)
- ESM은 다른 보안솔루션에서 수집한 정보에 대한 관리와 분석의 '통합'을 기치로 하여 탄생하였다.
- ESM의 핵심 목표는 다음과 같다.
- 흩어져 있는 보안솔루션 로그, 일반 시스템 로그를 수집하고, 체계적으로 이를 분류하여 통합 관리 및 분석을 시행함
- 체계적인 통합 분석을 통해 솔루션별 보안정책의 일관성 보장
- ESM을 통해 통합관리를 하게 되면, 통합된 로그 간 연관성을 추적해서 공격 여부 판별의 신속성과 정확성을 높여주는 '연관분석'을 수행할 수 있다.
- 공격 시도가 발생 했을 때, 문제가 없는 것은 '허용 로그', 공격 실패는 '차단 로그', 공격 성공 가능성이 있는 '탐지 로그'로 로그는 나뉘는 데, 이 중 가장 신속하게 해결해야하는 문제는 '탐지 로그'이다.
- ESM의 연관분석 기능을 활용하면, 로그 성격과 임계치 설정을 통해 보안관제 업무를 공격 성공 가능성이 높은 탐지 로그 분석에 집중시킬 수 있다.
기타 보안 솔루션
- 앞서 소개한 보안솔루션들은 네트워크 길목을 지키는 상시적 감시가 필요한 관문으로써 역할을 한다면, 해당 항목에서 소개할 솔루션들은 실시간 모니터링이 어렵거나 불필요, 또는 감시보다 예방 보안의 성격이 강하다.
1. 안티 스팸
- 최소 예방을 해주는 안티 스팸은, 악의적인 이메일 유입을 최소화해주는 기능이다.
- 예방 솔루션으로써 유용하지만, 최소 예방 보안이므로, 보안관제 업무에서 적극적으로 활용되는 수준은 아니다.
2. 유해 사이트 차단
- 유해 사이트를 차단해주는 최소 예방 솔루션으로, 웹 트래픽에서 URL 또는 URI를 검사 후, 등록된 유해 사이트 리스트와 패턴이 일치하는 트래픽을 차단하는 것이다.
- IDS/IPS 등의 분석 결과를 반영하여, 업무 공조와 함께 유해 사이트 데이터베이스를 업데이트하는 경우도 있다.
- 비교적 단순하여, 방화벽, 웹 방화벽 등에서 기능을 제공하는 경우도 많다.
- 안티 스팸처럼 최소 예방 보안이므로, 보안관제 업무에 적극 활용되지 않는다.
3. 서버보안
- 서버보안은, 보안성 강화를 최우선 목표로 설계된 보안 운영체제(Secure OS)로, 군사 분야에 사용하기 위한 목적으로 개발된 아주 강력한 성능을 가진 보안 설루션이다.
- 서버보안 솔루션은 강력한 접근통제를 통해 공격 행위 자체를 무력화시키며, 공격 시대 행위나 그 행위의 결과를 감시/차단하는데 주력하는 대부분의 보안솔루션과 결을 달리하는 솔루션이다.
- 서버보안 솔루션은 시스템 최고 관리자인 root 사용자는 물론, 모든 프로세스를 필요한 만큼의 범위에서만 동작하도록 제한할 수 있으며, 이를 통해 보안에 어긋나는 부적절한 사용 시도를 사전에 차단할 수 있다.
- 효율성이 낮고, 어렵다는 단점 때문에 정보보안 분야에서 활용 비중이 그리 크지 않다.
4. 안티바이러스
- 안티바이러스는 네트워크에 설치되는 관문 보안 형태도 있긴 하지만, 대부분 엔드포인트(Endpoint), 즉 PC 보안 성격이 강하므로, 보안관제 업무에서 차지하는 비중이 매우 미미하다.
- 최근에는 악성코드, 좀비 PC 방지 등의 목적으로 특화되면서 네트워크 보안솔루션으로 성장이 진행 중이다.
5. 정보유출 방지
- 크게 DRM, DLP로 두 가지 솔루션으로 분류된다.
- DRM(Digital Rights Management)
: 허가된 사용자만이 정보에 접근할 수 있도록, 정보 자체에 적용되는 일종의 암호화 기술 - DLP(Data Loss Prevention)
: 네트워크 기반의 응용 프로그램(웹, 메일, 데이터베이스 등) 송수신 정보 통제(감시 및 차단), USB/CD-Writer 등의 미디어, 무선/블루투스 등 통신매체 통제
- DRM(Digital Rights Management)
- 웹, 메일, 메신저, P2P 등은 데이터의 양이 어마어마하므로 실시간 모니터링이 사실상 불가능에 가깝다.
- 주로 사고 발생에 대비한 증거 확보 차원의 감사 목적으로 활용된다.
6. TMS(Threat Management System)
- 위협 관리 시스템(TMS)은 IDS/IPS 등에서 수집된 탐지/차단 로그의 발생량과 룰(로그) 별로 산정된 위험도의 조합에 의해 위협 수준(정상/관심/주의/경계/심각)을 결정해주는 솔루션이다.
- 룰 별 위험도 산정 기준은 다음과 같다.
위험도 | 산정 기준 |
상 | 보안 취약점 + 공격 코드 + 피해 사례가 발견된 경우 |
중 | 보안 취약점 + 공격 코드가 발견된 경우 |
하 | 보안 취약점이 발견된 경우 |
- TMS는 IDS/IPS의 탐지/차단 로그를 기준으로 현재 발생하고 있는 위협 수준을 측정해주는 시스템이다.
- 만약 IDS/IPS의 운영이 정상화되지 않는 경우 TMS는 무용지물로 전락할 가능성이 있다(ESM도 그렇다).
7. RMS(Risk Management System)
- 위험관리 시스템(RMS)은 보호대상 정보자산의 구성 현황을 파악하고 자산별 운영체제, 애플리케이션, 가동 서비스 및 이와 관련된 취약점 현황을 파악 및 분석한 후, 이를 데이터베이스 화하여 위험 발생 요인의 체계적 관리를 목적으로 하는 시스템이다.
- RMS는 취약점의 이력 추적 및 관리 용도에 적합하며, 제거가 힘든 취약점에 대한 보안관제 측면의 접근이 이루어질 수 있도록 하는 업무적 협조가 필요하다.
요약
- 방화벽: 보안솔루션이라기보다 기본적인 보안 인프라에 가깝다.
- IDS/IPS: 전체 네트워크 범위를 감당한다.
- 웹 방화벽: 웹 보안에 특화돼 있다.
- 안티 DDoS: DDoS 보안에 특화돼 있다.
- ESM: 위 보안솔루션들의 로그를 통합 관리하는 핵심 보안관제 솔루션이다.
- 이들 솔루션은 모두 정도의 차이는 있으나 '패턴 매치' 기반으로 동작하는 기능이 존재한다.
- 보안솔루션 분야에서 '패턴 매치 기법'은 매우 중요한 비중을 차지하고 있다.
지금까지 정보보안에 대한 기본 개념과 보안관제, 보안솔루션에 대해 간략하게 알아보았다. 만약, 보다 자세한 내용을 알고 싶다면, 본 포스트에서 참고한 서적인 "빅데이터 분석으로 살펴본 IDS와 보안 관제의 완성 - 패턴 매치 기법을 이용한 정보보안 감시체계의 완성 - 강명훈 저"를 읽어보길 바란다.
다음 포스트에선 IDS에 대해 보다 자세히 다뤄볼 예정이다.