보안 이슈

AhnLab 보안 전문가의 심층분석! 보안 이슈 정보를 전해드립니다.

안랩, ‘검은 광산 작전’의 비밀을 ‘캐내다’

  • Facebook에 공유하실 수
    있습니다.

  • Twitter에 공유하실 수
    있습니다.

  • Linked in

    Linked in에 공유하실 수
    있습니다.

  • 붙여넣기

    블로그나 게시판에 붙여넣기 하실
    수 있습니다.

  • AhnLab
  • 2015-11-02

심장이 빠르게 뛰기 시작한다. 드디어 녀석에게 한 발짝 다가선 느낌이다. 그 녀석을 본격적으로 쫓기 시작한 것은 지난 2014년 5월. 근래 몇 년 동안 발생한 대형 해킹 공격에 이용된 수 백 개의 악성코드를 분석하다가 이들이 비슷한 유형임을 알아냈다. 이 악성코드는 특정 그룹에 의해 국내 여러 기관과 기업의 공격에 이용되었다. 그렇게 몇 개월을 추적한 결과, 이제 이 악성코드들의 연결고리이자 숨겨진 진실을 열어 줄 ‘비밀의 열쇠’를 손에 쥐는 순간이다. 

BM…… BM……​ BM……

드디어 찾았다. 녀석은 정상 파일의 끝 부분, 암호화된 영역에 악성코드를 숨겨두었다. 그리고 그 영역은 특징적으로 ‘BM’ 문자열로 시작한다. 이제 악성코드 내부에 공통적으로 숨겨진 ‘BM’과 코드를 살펴보면 이 공격의 실체를 파악할 수 있게 된 것이다. 과연, 일부에서 주장하듯이 3.20 전산망 장애, 6.25 사이버 공격 등과 동일한 공격 세력일까? 또는 이들 그룹과 연관되어 있을까? 

지금부터 ‘BM’ 문자열의 숨겨진 진실을 캐내기 위한 ‘검은 광산 작전(Black Mine Operation)’을 함께 추적해보자. 

 

 

안랩에서는 2014년 5월부터 2015년 7월까지 1년여에 걸쳐 특정 그룹이 동일한 유형의 악성코드를 이용해 국내 여러 기관과 기업을 공격하고 있음을 파악했다. 악성코드 내부에서 공통적으로 볼 수 있는 ‘BM’과 코드를 자세히 살펴봐야 실제 기능을 파악할 수 있다는 의미에서 이 공격을 ‘검은 광산 작전(Black Mine Operation, 검은 광산 작전)’으로 명명했다.

이 문서에서는 검은 광산 작전의 공격 개요, 타임라인, 공격 방법 및 대상, 공격에 사용된 악성코드의 유형, 공격 추정 세력 등 5가지 항목으로 나누어 정리했다.

 

공격 개요

ASD(AhnLab Smart Defense) 시스템에 수집된 정보에 따르면 검은 광산 작전은 2014년 5월부터 시작되었다. 검은 광산 작전에서 기본이 되는 악성코드는 Bmdoor이며, 2014년 5월부터 2015년 7월까지 14개월 동안 총 240개 이상이 발견되었다. 특히, 2015년 3월과 2015년 5월에 많은 숫자의 Bmdoor 샘플이 수집된 것을 확인된 것으로 볼 때, 검은 광산 작전은 이 기간에 왕성한 활동을 한 것으로 유추할 수 있다. 

 


[그림 1] Bmdoor 접수 현황 (2014년 5월 ~ 2015년 7월)

 

공격자는 파워포인트 자료를 보여주는 실행 파일로 가장한 악성코드를 이용해 특정 대상을 공격한 것으로 보인다. 현재까지 안랩에서 파악한 공격 대상은 크게 한국의 에너지, 교통, 통신, 방송, IT 기업, 금융, 정치 분야 등으로 다양하다. 이외에도 공격자는 2014년 7월과 2015년 3월에는 국내 웹사이트를 해킹해 일반인을 상대로 악성코드를 퍼뜨리기도 했다.

 

검은 광산 작전에는 다양한 악성코드가 이용되었다. 공격에 이용된 Bmdoor는 정상 실행 파일처럼 보이지만, 파일 끝부분에 암호화 되어 숨겨진 악성코드가 메모리에서 실행된다. 암호화된 영역이 ‘BM’ 문자열로 시작하는 것이 특징이며, 분석가와 자동분석 시스템을 우회하려는 기능을 포함한 경우가 많다. 

 

Bmdoor는 공격에 사용되는 악성코드를 시스템 메모리에 올려주는 로더(Loader)로써 실행되면 암호화되어 있는 다른 악성코드를 실행시킨다. Bmdoor 내에는 공격자 서버에서 추가 악성코드 파일을 다운로드하는 다운로더(Bmdown로 명명), 원격 제어로 정보 수집 등을 할 수 있는 봇(Bmbot으로 명명), 이미 알려진 원격 제어 툴을 이용한 형태로 크게 3가지 종류가 존재했다.

 

또한 지속적으로 발생하는 해당 공격에 대해 분석한 결과, 기존에 한국을 대상으로 한 대형 공격인 3.20 전산망 장애, 6.25 사이버 공격 등을 비교했을 때 검은 광산 작전 공격 추정 세력과 이들 그룹과의 연관 가능성이 있음을 확인했다.

 

타임라인

Bmdoor 악성코드는 2014년 5월 최초로 발견되어 현재까지 지속적으로 그 변형이 확인되고 있다.  ASD에서 2014년 5월부터 2015년 7월까지 수집된 Bmdoor 변형은 총 240개로 아직 발견되지 않은 변형까지 고려하면 더 많은 수의 악성코드가 존재할 것으로 예상된다. 아래는 Bmdoor 악성코드와 관련 악성코드에 대한 주요 타임라인이다. 


[그림 2] 검은 광산 작전 타임라인

 

2008년부터 특정 기관의 정보 수집을 목적으로 하는 Dllbot 악성코드가 발견된 후, 2009년에는 파일 시작이 MZ 대신 BM 시그니처로 시작하는 Dllbot이 발견되었다. 파일의 시작이 MZ가 아니면 실행되지 않지만 타 프로그램에 의해 실행될 때 MZ 시그니처로 변경되어 실행되는 것으로 확인된다.

2013년 3월 20일과 6월 25일에 각각 3.20 전산망 장애(일명 다크서울, DarkSeoul)와 6.25 정부기관 DDoS 공격이 있었다. 한국 정부 당국에서는 6.25 사이버 공격을 일으킨 그룹이 3.20 전산망 장애와 동일한 그룹이라고 추정하고 있다.

2014년 5월에는 Bmdoor로 분류하는 최초의 악성코드가 발견되었다. BM 시그니처로 시작하는 메모리 영역 내에 토르(TOR) 네트워크 상으로 통신하는 Bmbot A형 악성코드가 포함되어 있다.

2014년 7월에는 국내 주요 프로그램 및 어도비 플래시(Adobe Flash) 취약점을 이용한 Bmdoor 변형이 유포되었다. 이 기간 공격에 사용된 악성코드는 2013년 3.20 전산망 장애 때 공격에 사용된 악성코드와 유사성이 있었으며, 6.25 사이버 공격에 접속 되었던 일부 IP와 동일한 점이 확인 되었다.

2014년 11월에는 주요 문자열이 암호화된 새로운 Bmbot B형이 발견되었고, 이 변형은 2015년 3월까지 공격에 이용되었다. 2015년 5월부터 새로운 Bmbot 변형이 발견되었고 2015년 6월 말 발견된 Bmdoor 변형에서는 BM 시그니처를 포함하지 않는 샘플이 확인되고 있다.

 

공격 방법 및 대상

공격자는 Bmdoor 악성코드를 이용하여 국내 특정 기업과 기관을 대상으로 하는 표적 공격, 그리고 일반 사용자 대상 공격을 시도하였다. 

 


[그림 3] 검은 광산 작전 공격 개요도 

 

먼저 기업과 기관을 대상으로 삼은 경우에는 Bmdoor 악성코드를 업무 관련 파일이나 공격 대상이 흥미롭게 생각하는 졸업 앨범, 동문회 초청장 등으로 위장하였다. Bmdoor 악성코드가 실행되면 정상적인 파워포인트 실행 화면이 나타난다. 이는 공격자가 미리 공격 대상이 열어볼 만한 주제의 파워포인트 자료를 준비한 후, 파워포인트 프로그램이 설치되지 않은 PC에서도 자료를 볼 수 있게 만들어주는 프로그램을 이용하여 만든 정상 실행 파일이다. 그리고 파워포인트 화면이 열림과 동시에 실제 악성 행위를 하는 악성코드(Bmdown, Bmbot 유형의 악성코드)도 내부에서 실행된다. 공격 대상은 아무 의심 없이 정상적으로 파워포인트 자료를 보게 되지만, 동시에 악성코드가 실행되는 것은 인지하지 못한다. 

 


[그림 4] 국내 특정 기업과 기관 대상으로 한 표적 공격 Bmdoor 유포 방식

 

현재까지 감염 보고된 기관이나 기업은 에너지, 교통, 통신, 방송, IT, 금융, 정치 관련 기관 등이 있다. 아래는 표적공격으로 추정되는 Bmdoor 변형을 실행했을 때 나타나는 파워포인트 자료이다. 

 


 [그림 5] 표적 공격에 사용된 악성코드 실행 화면

 

반면, 국내의 일반 사용자를 대상으로 공격이 이루어진 경우로는 주로 유명 프로그램의 취약점을 통해 Bmdoor 악성코드가 유포되었다. 대표적인 예로 2014년 7월 7일 취약점을 이용하여 감염시킨 사례가 있다. 사용자가 사전에 해킹된 웹사이트에 접속 했을 때 국내에서 많이 사용되는 소프트웨어와 어도비 플래시 취약점(CVE-2014-0515)을 이용해 감염시킨 것이다. 당시의 감염 방법은 [그림 6]과 같이 정리할 수 있다. 

 


[그림 6] 취약점 이용 Bmdoor 유포 방식

 

사용자가 취약점을 통해 다운로드 된 Last.gif 파일을 실행되면 임의의 파일 이름을 가진 exe 파일(Bmdown A 형)이 생성된다. 이 파일은 공격자가 지정한 주소로 접속해 Folder.php를 다운로드 받아오고 이 파일은 임의의 파일 이름을 가진 실행 파일(Bmbot A 형)을 생성한 후 토르(TOR)로 통신한다.

 

2015년 3월 20일에도 어도비 플래시(CVE-2015-0313) 취약점을 이용해 Bmdoor 변형이 배포되었으며, 사용자 컴퓨터에 최종 감염되는 악성코드는 Bmbot B 형이다.

 

Bmdoor 악성코드 유형

Bmdoor 내에는 공격을 하기 위한 실질적인 악성 파일이 암호화 되어 숨겨져 있고, 그 종류는 크게 다음 3가지로 분류된다.

 

첫 번째 유형은 Bmdown이다. Bmdown에는 시스템 정보를 수집해 공격자 C&C 서버에 접속을 시도하고 수신된 명령에 따라 파일을 다운로드 하는 기능이 있다. 세부적으로 패킷의 문자열을 비교하는 Bmdown A형과 다운로드 받은 파일의 문자열을 비교하는 Bmdown B형 등으로 구분할 수 있다.

두 번째 유형은 Bmbot으로 C&C 서버와 통신을 하며 사용자 정보를 유출하는 기능이 있다. 또한Bmdoor 내부에 가장 많이 포함되어 있다. Bmbot은 공격자와 실시간으로 통신을 하면서 실행/비실행 파일을 추가로 다운로드 받고, 내부 파일 및 PC 정보를 유출하는 핵심 악성 행위를 한다. Bmbot은 TOR 네트워크를 사용하여 암호화 된 내용을 전송하는 Bmbot A형과 내부 문자열이 최초 암호화 되어 있고 함수 진행이 될 때마다 문자열을 복구하여 파일을 실행하는 Bmbot B형이 있다.  

세 번째는 RAT(Remote Administration Tool)이다. 외국에서 제작된 아리안(Aryan), 다크코멧(Darkcomet), 제나(Xena), 익스트림(Xtreme) 등의 원격 제어 도구를 이용한 유형이 있다.


[그림 7] 공격에 사용된 악성코드 종류

 

Bmdoor 내 악성코드를 정리하면 [표 1]과 같다. 


 [표 1] Bmdoor 악성코드 유형

 

공격 추정 세력

안랩에서는 2014년 5월부터 현재까지 지속되고 있는 여러 공격에서 유사한 악성코드 찾았고 이들 악성코드가 1년 넘게 활동하고 있음을 확인했다. 공격에 사용된 악성코드의 뚜렷한 공통점으로는 파일 후반부에 ‘BM’으로 시작하는 영역이 존재한다는 것이다. 그림 파일인 BMP 헤더의 시그니처와 비슷하게 보일 수도 있지만 이 영역에는 암호화된 악성코드가 저장되어 있으며 주로 내부 정보를 유출하는 백도어류 악성코드를 포함하고 있다. 

안랩은 이들 공격을 검은 광산 작전으로 보았고, 과거 국내에서 발생한 대형 보안 사건을 일으킨 그룹에서 사용한 악성코드와 공격 기법 등을 비교하여, 검은 광산 작전의 공격 추정 세력과 이들 그룹과의 연관성을 검토했다. 

그 결과 공격 추정 세력이 3.20 전산망 장애를 일으킨 그룹과 간접적인 연관 관계가 있을 가능성이 높다고 판단하였다. 3.20 전산망 장애를 일으킨 공격자들과 연관된 몇 가지 정황은 다음과 같다. 


[표 2] 3.20 전산망 장애 발생 그룹과 관련 정황

 

첫째, BM 문자열을 포함한 여러 종의 3.20 전산망 장애 연관 악성코드가 발견되었다. 2009년 파일 시작 부분이 BM으로 시작하는 파일이 발견되었다. MZ로 시작하지 않아 파일은 정상 실행되지 않지만 MZ를 BM으로 변경하면 Dllbot 변형을 포함하고 있는 드롭퍼(Dropper) 파일이다. Dllbot은 2008년부터 대한민국 국방 정보를 수집하기 위해 이용된 악성코드인데, 계속 진화화여 3.20 전산망 장애 당시 사전 정보 수집용 악성코드와 Bmbot에 영향을 준 것으로 보고 있다. Dllbot과 Bmbot은 코드 관점에서는 동일한 유형이라 보기 어렵지만 둘 다 CreateFileMappingA, OpenFileMappingA API 함수를 이용해 악성코드 실행 여부 검사를 한다. 또한 C&C 서버 통신을 위해 보통 2개의 PHP 주소를 이용하며, “interval”과 “wakeup”과 같은 특정 명령어를 이용하여 C&C와 통신을 하는 것으로 보았을 때 Dllbot와 같은 범주로 볼 수 있다.[표 2] 3.20 전산망 장애 발생 그룹과 관련 정황

 

둘째, 2013년 3월 20일 발생한 3.20 전산망 장애 발생 때 공격 대상 업체에서 발견된 악성코드와 4 바이트만 다른 변형이 2014년 7월 발견된 Bmdoor 내에 포함되어 있었다. 해당 악성코드는 다른 곳에서 발견되지 않아서 제작자만 보유하고 있을 가능성이 높다. 동일 그룹이 아니라고 해도 3.20 전산망 장애 그룹과 적어도 교류하거나 협력 관계로 추정할 수 있는 근거가 된다. 

 

셋째, 2014년 7월 7일 Bmdoor 변형을 배포할 때 이용한 취약점은 주로 국내 프로그램의 취약점으로 3.20 전산망 장애 때 이용된 취약점과 유사하다. 3.20 전산망 장애를 일으킨 악성코드는 2013년 3월 20일 전에 국내에서 널리 사용되는 프로그램의 취약점을 통해 감염된 것으로 알려졌다. 

 

넷째, 2014년 7월 7일 배포된 Bmdoor 변형의 배포 주소와 통신 주소가 2013년 6월 25일 발생한 6.25 사이버공격에 이용된 악성코드의 배포 도메인과 접속 주소와 일부 동일했다. 

 

공격 방식과 악성코드를 분석했을 때 3.20 전산망 장애를 일으킨 그룹과의 명백한 관계를 증명할 수 없지만 적어도 간접적으로 연관 관계가 있을 가능성이 높다.

 

결론

검은 광산 작전(Black Mine Operation)을 진행하고 있는 이들은 다양한 Bmdoor를 제작해 국내 여러 기관과 기업에 대한 공격을 일년 넘게 수행하고 있다. 게다가 분석가와 분석 시스템을 회피하려는 시도를 보면 앞으로 더 은밀하게 작전을 수행할 것으로 예상된다. 

 

공격 기법이나 악성코드의 유사점이 일부 존재하긴 하지만 Bmdoor 시리즈를 제작하고 있는 그룹과 기존 3.20 전산망 장애나 6.25 사이버 공격을 일으킨 그룹과의 명백한 연관성은 확인되지 않았다. 따라서, 이들이 기존 사건을 일으킨 동일 그룹인지는 아직 확실하지 않다. 이 공격 그룹은 2015년 여름 이후 활동이 주춤하지만 이는 새로운 공격을 준비하거나 기존에 사용하던 악성코드를 변경했을 가능성이 있다.

 

지난 10년 동안 대한민국의 주요 기관과 기업에 대한 공격을 지속적으로 공격하는 세력은 분명히 존재한다. 이런 공격에 대비하기 위해서 주요 기관과 기업은 내부로 유입되는 파일에 대한 분석 역량을 강화하고 보안업체와 유관 기관과 협력을 강화해야 할 것으로 보인다.  

 

안랩의 MDS와 V3 제품군에서는 '검은 광산 작전'에 이용된 악성코드에 대해 진단하고 치료 기능을 제공하고 있다.  

 - 지능형 위협대응 솔루션 AhnLab MDS 진단명 : Malware/MDP.Drop 등
- 엔드포인트 보안 솔루션 V3 제품군 진단명': Win-Trojan/Bmdoor.Gen, Trojan/Win32.Bmbot, Trojan/Win32.Bmdown 등
​ 

 

  • AhnLab 로고
  • ASEC분석팀
  • Facebook에 공유하실 수
    있습니다.

  • Twitter에 공유하실 수
    있습니다.

  • Linked in

    Linked in에 공유하실 수
    있습니다.

  • 붙여넣기

    블로그나 게시판에 붙여넣기 하실
    수 있습니다.