FireEye 보안솔루션 리뷰
FireEye 보안장비를 알기 전에 먼저 APT(Advanced Persistent Threat) 공격이 무엇인지 알아야 한다. 왜냐하면 이 공격을 막기 위해 만든 솔루션이기 때문이다.
APT 공격이란?
현재 사이트에서 일하기 전에 강남 테헤란로에 위치한 정보보안 업체 한 군데, 그리고 분당에 대왕판교로에 위치한 정보보안 업체 한 군데에서 면접 볼 때마다 APT에 대해서 물었는데, 답변은 간단하다. '일회성으로 그치지 않고 공격 타깃에 지속적으로 공격하는 해킹'이다. 단지 지능적으로 그러니깐 한 번 공격 대상을 뚫고 나서 일을 저지르는 게 아니라, 제대로 공격을 가하기 전에 은밀하게 사전조사 및 공격을 위한 준비를 여러 번 하는 것이 이 공격 유형이 보통 해킹과 다른 점(예를 들면, Watering Hole이라는 인터넷 APT 공격 혹은 Spear-Phishing이라는 Email APT 공격과 같은)이다.
FireEye는 이러한 APT 공격에 대비하기 위해 12가지의 솔루션을 라인업 시켰다. 현재 본인이 근무하고 있는 사이트에는 이 중 NX(Network 보안), EX(Email 보안), HX(endpoint 보안)의 세 가지를 갖추고 있다. 각 망별로 NX에서 탐지한 APT 공격이 가능한 악성 실행파일(Malware code)을 이벤트 유형별로 설명하는 게 차주 월간보고에 포함되어 있어서 해당 벤더사로부터 교육을 받고 또 그때 들은 용어를 아래와 같이 정리하고자 한다.
Web Infection(악성 트래픽) 탐지
- 악성 URL로 탐지된 이벤트 유형
Malware Object
- FireEye NX 가상 머신에서 분석한 결과, 악성파일로 탐지된 이벤트 유형
- OS change details 항목에서 Graphical(도식화하여) 악성파일의 구조를 볼 수 있음.
Infection Match
- 시그니처 기반 탐지로 상제 정보는 포함되어 있지 않으나 앞서 말한 이벤트 유형으로 탐지되어 악성파일 패턴으로 등록되어있다면 해당 패턴에 대해 이 탐지 이벤트를 통해 차단 기능을 가짐.
Malware Callback
- C&C 서버(이를테면 해커가 DDoS 공격 등 공격 대상의 가용성(사용자 로그온)을 지연시킬 수 있는 공격을 하기 전에 원격지에서 명령을 내리거나 악성코드를 제어할 수 있는 있는 일종의 감염된 좀비 PC)와 통신을 시도할 경우 발생하는 이벤트 유형
Domain Match
- 호스트(사이트 관리자 및 유저)가 악성 도메인에 DNS request를 보내는 것이 감지될 때 발생함.
Malware Callback(Local Infection)
- 원격지에서 조종 가능한 좀비 서버와의 통신을 시도한 것을 탐지한 유형과 달리 VM(Virtual Machine)의 샌드박싱(가상 머신에서 해당 악성파일을 실행시켜 동적으로 공격 확인) 분석에 의한 바이너리가 접속을 시도하는 'callback*'에 대한 이벤트
Riskware(<->addware)
- 애드웨어 및 해킹도구, PUP**(Potentionally Unwanted Programs), PUA**(Potentionally Unwanted Application) 등과 같이 멀웨어(malware, 악성 소프트웨어)가 아닌 파일을 식별할 수 있는 항목임.
Retroactive
- 과거에 정상으로 판별되었으나 업데이트되었다는 이 경보(alert)를 통해 새로운 패턴을 감지함.
- 즉 24시간 내에 저장되어 있는 이전의 같은 유형의 악성 실행파일의 hash값(암호화된 문자열)과 비교하여 악성 유무를 판별함.
- FireEye는 이 패턴의 보관을 DTI라는 FireEye Cloud의 보안 콘텐츠 업데이트를 통해서 SHA-256 hash*값과 비교
필자가 알기론, FireEye 제품은 Darktrace라는 공격 시나리오를 기반으로 IP 역추적이 가능하여 내부자에 의한 정보유출을 막기 위해 구축하는 솔루션과 세계에서 가장 많이 쓰이는 보안제품으로 알고 있다. 이 FireEye 솔루션을 통해 악성파일의 APT 공격 가능성을 분석하고 실제로 선제 차단한 사례를 다음 직장(외국)에서 어필할 수 있다면 또 한 번의 이직은 가능하고, 아마도 아이언맨처럼 완성도는 떨어지더라도 완전무장급으로 해외진출을 타계할 수 있으리라.
*callback : 콜백은 어떠한 소스를 부르기 위해 사용하는 함수 명령(콜백 함수)과 같이 특정 주소 값을 호출하여 해당 서브루틴을 실행하는 명칭과 동일함.
** PUP/PUA : 악성프로그램과 유사하지만 잠재적으로 유해할 수 있는 프로그램이나 응용프로그램(애플리케이션)
*** 실행파일의 소소코드를 난독화 시키는 암호화 방법의 하나(Hash, 생선을 채 썰어서 어묵처럼 만든 간식류처럼 한번 해시화 되면 원복 할 수 없는 암호화 방법)로 단(일) 방향성의 속성을 가지나, 해시된 값(SHA-256 수준으로 암호화된 패킹 값)만을 비교해서 이전의 데이터와 일치한 지 무결성(전후 데이터 내용의 일치성 여부) 점검은 가능함.