[Tech] 공격 흔적 분석으로 공격자 배후 추적
상태바
[Tech] 공격 흔적 분석으로 공격자 배후 추적
  • 데이터넷
  • 승인 2013.11.04 13:57
  • 댓글 0
이 기사를 공유합니다

공격자 전술·동기 예측으로 위협 선제 대응

APT와 같은 지능형 타깃 공격은 조용히 침투해 장기간 은밀하게 활동하기 때문에 공격징후를 탐지하거나 공격자를 추적하는 것이 매우 어렵다. 그러나 지능형 공격도 공격 당한 컴퓨터 시스템에 남아있는 악성코드, 피싱 이메일 등의 유형을 파악하면 공격자의 행동패턴이나 특징을 판단할 수 있다. 지능형 공격의 패턴을 파악하면 공격자의 전술과 동기를 예측할 수 있어 새로운 위협에 선제대응이 가능하다. 최근 발생한 지능형 공격의 사이버 단서를 소개하며 방어방법을 제시한다. [김현준 파이어아이코리아 기술이사 / hyunjun.kim@FireEye.com]

APT공격이 증가하면서 사이버 위협의 공격 배후를 파악하고 대응하는 것이 기업의 방어 전략 수립에 있어 중요한 요소가 되고 있다. 즉 공격의 목적이 무엇이며, 그 배후에는 누가 있는지, 어떠한 방법으로 공격을 하는지를 식별하는 것은 기업의 데이터와 지적 재산을 보호하는 데 중요한 요건이 되고 있다.

파이어아이는 지능형 공격의 위협 배후를 밝혀내기 위해 1500여 건의 사이버 공격으로부터 취합한 샘플에 기반한 ‘디지털상의 7가지 단서: 사이버 공격의 배후는 누구인가’ 보고서를 발표했다. 공격을 당한 컴퓨터 시스템에 남아있는 악성코드, 피싱 이메일, 명령 및 제어(CnC) 서버 등 사이버 상의 단서를 토대로 지능형 사이버 공격과 관련된 범죄 활동을 분석했다. 이러한 정보를 정확하게 분석하면 보안 전문가가 향후 추가적인 피해를 방지하고, 침입을 당한 시스템을 복구하고, 미래의 공격을 예측하는 능력을 강화하는 데 도움을 줄 수 있다.

키보드 배열
피싱 이메일의 헤더에 있어 ‘문자 집합’의 특성을 조사하면 특정한 악성코드를 작성하기 위해 사용하는 악성코드 키보드 배열을 확인할 수 있다. 대부분 피싱 시도는 특정한 국가를 나타내지 않는 표준 키보드 배열을 사용한다. 그러나 비표준 키보드를 사용할 경우 이것이 강력한 단서가 될 수 있다. 파이어아이는 공격자들이 다양한 악성코드 공격을 할 때 중국에서 사용하는 표준 중국어(GB2312) 키보드로 입력하는 것을 밝혀냈다.


일례로 공격자들은 파이어아이 연구원이 지난 해 티베트의 활동가들에게 사이버 공격에 대한 위험을 공지하기 위해 전송했던 이메일의 사본을 입수해 이를 다른 활동가들에 대한 공격의 미끼로 활용했다. 표준 서양 언어 키보드(Windows-1252)를 사용한 원래의 이메일과는 달리, 악용된 이메일은 중국의 GB2312 키보드 배열을 사용한 발신자로부터 전송된 것으로 나타났다. <그림 1>은 공격에 악용된 이메일의 키보드 배열이 표시된 이메일 헤더 정보를 보여준다.

악성코드 메타데이터
악성코드의 실행 코드는 보통 소스 코드를 체계화하는 본래의 소스 디렉토리를 참조한다. 이와 같은 방법으로, C++로 작성한 프로그램들은 프로젝트 이름을 참조한다. 이러한 기본적인 코드는 코드나 공격의 여러 측면을 공격 대상의 언어에 맞췄다 해도 공격자의 언어나 출신국을 드러낼 수 있다.


<그림 2>은 3단계 공격에 사용한 소스 코드를 보여준다. 이 그림에서 공격자는 비속어를 사용해 중국 안티바이러스 소프트웨어 회사인 베이징 라이징 인터내셔널 소프트웨어(Beijing Rising International Software)를 모욕하는 행위를 했다. 공격소스에서는 발음대로 ‘Ruixing’이라고 표기했다.

이 공격에 사용된 2단계 공격 소스코드인 PNG 파일로 위장한 실행 파일은 초기 단계에서 피해를 입힌 후 엔드포인트로 전달됐다. 이 코드에는 악성코드 작성자의 하드 드라이브("E:\pjts2008\ moon\Release\MoonClient2.pdb" )에 저장된 프로세스 디버깅(PDB) 파일에 대한 참조 표시가 포함돼 있다. 이 페이지에 참조된 ‘MoonClient’ 파일은 CommentGroup이라고도 알려져 있는 중국 해커 단체인 APT1이 사용하는 WEBC2 악성코드의 변종이다.

내장된 폰트
키보드 세션에서 설명한 문자 집합 특성과 마찬가지로, 피싱 이메일과 다른 악성 문서에서 사용되는 폰트는 APT 공격의 소스를 추적하기 위해 유용할 수 있다. 파이어아이가 발견한 Sanny APT를 예로 들면 러시아어로 작성된 문서를 보내 러시아인을 공격했으나 문서에 사용된 폰트가 한국어 폰트인 ‘바탕’과 ‘청봉(KP CheongPong)’을 사용했다. 이러한 폰트 선택은 공격에서 사용한 작성자의 이름과 C&C 서버를 포함해 공격의 배후로 북한을 지목했던 다른 소스로부터 입수한 기존의 증거를 재확인시켰다. 이러한 단서들을 종합 검토하면 공격자의 배경 확인이 가능하다.


DNS 등록
때로 공격자들은 ‘도메인 블랙리스트’와 같은 표준 악성코드 방어에 의한 탐지를 회피하기 위해 비용을 지불하고 도메인을 등록한다. DNS 등록은 보통 공격자의 출신국을 직접 나타내며, 허위 이름과 주소를 사용해 DNS에 등록하더라도 범죄자를 찾아내는데 유용하다. 공격자들은 때때로 다수의 도메인에 대해 허위 연락처 정보를 재사용하기도 한다. 보안 전문가들은 이 복사 정보를 사용해 다수의 공격을 단일 위협 행위자에게 신속하게 연계시키고 각 공격으로부터 수집한 정보를 종합할 수 있다.

이에 대한 사례로 들 수 있는 것은 ‘Sin Digoo Affair’이다. 2004년부터 2011년 까지 핫메일 이메일 계정을 사용하는 사용자가 같은 이름으로 몇 개의 도메인을 등록했다. 이 등록자는 물리적 주소를 ‘Sin Digoo, Californa’의 사서함으로 기재했고, 이는 샌디에이고(San Diego)의 철자를 잘못 적은 것으로 보인다. 연구자들은 이 중복 등록 정보 덕분에 개인적인 악성코드 공격에서 나아가 더 큰 패턴의 지능형 지속적 위협을 연계시킬 수 있었다.

언어
악성코드 공격에 사용된 언어는 오타와 오기 등 말하는 사람이 그 언어를 사용하는 원어민이 아니라는 것을 알 수 있는 여러 가지 단서를 드러낸다. 때로는 이러한 단서들로 공격자의 출신국을 알아낼 수도 있다. 또한 상세한 분석을 할 경우 공격자가 언어 번역 사이트를 이용했다는 증거를 포착할 수도 있다. 보안 전문가들은 많이 이용되는 번역 사이트들이 특정한 단어와 문구를 처리하는 방법을 알고 있기 때문에 공격에 사용된 피싱 이메일의 본래 언어를 확인할 수 있다.

2011년 RSA에 대한 공격을 예로 들면, 정부를 위해 일한다고 가장한 두 그룹이 RSA의 시큐어ID(SecurID) 제품 데이터를 훔치기 위해 회사 내 네트워크로 침입했다. 이 공격은 어도비 플래시의 알려 지지 않은 취약점을 이용하는 높은 공격 수준을 보여줬다. 결과적으로 공격은 성공했으나, 공격에 사용된 피싱 이메일에는 어색하고 서투른 영어가 사용돼 공격자가 영어 원어민이 아니라는 것을 확인할 수 있다.

또 다른 경우 악성코드 내부에 내장된 언어가 공격자를 식별하는데 도움이 될 수 있다. <그림 4>에서 보듯이, Backdoor.LV 악성코드에 대한 스니펫(코드 조각)에서는 공격 대상에게 태그를 제공하기 위해 아랍어 이름과 언어를 사용했다. 이 문자열은 <그림 5>에 나타난 것처럼 “HacKed By Fayez Hacker_400CD510”으로 디코딩됐다. <그림 6>에 표시된 코드는 동일한 공격자가 사용한 것으로 보인다. 이 문자열을 디코딩하면 “400CD510”이라 는 태그가 나타나고 아랍어 문자가 추가됐다(<그림 7>).





원격 관리 툴 설정
공격자는 원격 관리 툴(RAT)을 이용해 공격 대상 컴퓨터에 대한 실시간 제어를 시도한다. 이 툴은 키 로그, 화면 캡처, 비디오 캡처, 파일 전송, 시스템 관리, 커맨드 쉘 접속과 같은 다양한 기능을 지원한다. 유료 혹은 무료로 대중에게 제공되는 RAT는 적절한 수준에서 테스트되고 완전한 기능을 갖추고 있기 때문에 공격자들에게 널리 활용된다.

이처럼 누구나 RAT 툴을 사용할 수 있고 다른 많은 그룹들이 동일한 툴을 사용하지만, 많은 옵션이 있어 각 공격자가 고유하게 설정을 결합할 수 있다. 동일한 방법으로 설정된 RAT를 사용한 다수의 공격은 잘 알려진 한 공격자가 자행했다는 것을 나타낸다.

예를 들어 8년 전부터 널리 사용되고 있는 RAT인 Poison Ivy의 경우, 이 툴이 가장 많이 사용하는 몇 가지 설정 옵션에는 ID, 그룹, 패스워드, 뮤텍스가 포함된다. 이러한 설정 옵션은 Volatility(메모리 덤프에서 운영되는 오픈 소스 파일 메모리-포렌식 프레임워크)를 사용해 컴파일된 RAT로부터 추출할 수 있다. Poison Ivy에서는 공격 대상 그룹들에게 태그를 제공하고 체계화하기 위해 ID 및 그룹 필드를 설정한다. 다수의 공격에서 동일한 ID 또는 그룹 이름이 나타나는 경우, 보안 전문가들은 이러한 공격들이 연관돼 있다고 결론을 내릴 수 있다.

패스워드 필드는 Poison Ivy의 통신을 암호화하는 키로 사용된다. 이 필드는 기본인 admin으로 설정되고 보통 변경되지 않는다. 그러나 적극적으로 설정하는 경우, 패스워드는 분류에 대한 지문 역할을 할 수 있다. 패스워드는 일반적으로 고유하며 공격 캠페인에서 공격자들이 공격 대상에 대해 자주 재사용한다.

소프트웨어에서 뮤텍스는 한 프로그램에서 다수의 쓰레드가 같은 시간에 동일한 자원을 사용하려고 시도하는 것을 방지하기 위해 사용하는 프로그램 객체다. Poison Ivy에서는 뮤텍스가 마커 역할을 해 이 툴이 감염된 시스템에서 이미 실행되고 있는지 여부를 확인해 자체적으로 한 인스턴스를 초과해 실행되지 않게 한다. Poison Ivy는 ")!VoqA.l4"의 기본 뮤텍스 값을 사용한다. Poison Ivy에 설정된 패스워드처럼, 수정된 값은 보통 고유하므로 뮤텍스가 유용한 마커가 될 수 있다.

행동
사람은 습관의 존재이기 때문에 공격자들도 시간이 지나면서 일관된 행동 패턴을 보이게 된다. 그들은 동일한 공격 대상과 산업군에 집중하고, 동일한 CnC 서버를 사용한다. 이러한 반복적인 행동에 의해 공격자의 접근방법, 목표, 소재지가 드러날 수 있다. 이러한 측면에서 위협 행위자에 대한 프로파일이 도움이 될 수 있다. 범죄자 프로파일이 용의자 추적에 도움이 되는 것과 같이, 보안 전문가는 상당 기간 동안 공격자를 관찰해 패턴을 확인할 수 있다. 연구자들은 이 정보를 통해 특정 그룹의 스타일과 접근 방법에 대한 성향을 파악할 수 있다.


이 같은 방법으로 공격자의 익스플로잇 툴과 전술이 공격자의 프로파일을 작성하는데 도움이 된다. <그림 8>은 각기 다른 익스플로잇, 미끼, 1단계 악성코드 이식을 활용한 4건의 서로 다른 공격을 나타낸다. 그러나 이러한 공격들은 모두 종교 운동가들을 목표로 삼고 있다. 그리고 <그림 9>에서는 헤딩 정보를 볼 수 있는데, 공격들은 모두 동일한 서버로부터 전송된 것을 알 수 있다. 이러한 단서를 통해 같은 팀에 속해 동일한 인프라를 사용하는 다수의 행위자가 공격의 배후임을 밝혀낼 수 있다.


이러한 특성들이 단독으로 드러나는 경우 절대적인 증거가 될 수 없으나, 다수의 징후가 동일한 공격자에게 나타나는 경우 특정 공격의 배후에 누가 있는지 상당히 확실한 결론을 내릴 수 있다. 이러한 정보는 보안 전문가가 공격 방법과 동기를 예측해 미래의 공격을 방어하고 공격 대상 시스템과 데이터 보호를 강화하는 데 도움을 준다. 공격 대상 조직이 공격자의 공격 방법과 목표를 알게 되면 그러한 정보를 사용해 다음과 같은 조치를 취할 수 있다.

- 보안 자원의 즉각적인 이동을 통해 취약한 데이터를 보강
- 사내 자원 또는 정책 집행에 대한 추가 지원 요청
- 공격자들이 이전 공격에서 사용했고 누락될 가능성이 있는 다른 경로들을 더 철저히 분석

동일한 공격자가 다른 곳에서 자행한 이전의 공격들로부터 수집한 정보를 활용할 경우, 공격의 출처를 확인하는 것은 특히 유용하다. 파이어아이는 위협 인텔리전스를 공유하는 동적 위협 분석 클라우드 서비스(DTI)를 통해 고객에게 공격자들의 전술, 프로토콜, 포트 및 콜백 채널에 대한 정보를 제공하고 있다.


댓글삭제
삭제한 댓글은 다시 복구할 수 없습니다.
그래도 삭제하시겠습니까?
댓글 0
댓글쓰기
계정을 선택하시면 로그인·계정인증을 통해
댓글을 남기실 수 있습니다.