특정 프로그램 개발 업체 통해 유포 중인 실버 C2 악성코드 주의!

안랩 분석팀은 이전에 국내 VPN 업체의 설치 파일을 통해 유포됐던 스파크랫(SparkRAT) 악성코드 사례를 소개한 바 있다. 최근에도 이와 유사한 악성코드가 국내 VPN 업체와 마케팅 프로그램 판매 업체의 설치 파일로 위장해 유포 중인 정황을 확인했다. 차이점이 있다면, 이번에는 스파크랫이 아닌 실버 C2(Silver C2)와 보안 솔루션 탐지를 우회하는 기법이 함께 사용됐다는 점이다. 이번 글에서는 실버 C2의 유포 방식 및 과정을 스파크랫 공격 사례와 비교해 소개한다.

 

 

지난번 스파크랫 악성코드로 피해를 입은 대다수 국내 VPN 업체 홈페이지에서는 이제 정상 설치파일을 다운로드할 수 있다. 따라서 해당 사건 이후 현재 조치가 제대로 된 것인지, 혹은 또 다른 유포 경로가 존재하는지는 아직 확실하지 않다. 다만, 관련 악성코드들을 조사한 결과 이들은 모두 동일한 프로그램 개발 업체에서 제공되는 프로그램인 것으로 확인됐다. 악성코드는 대부분 해당 개발 업체의 인증서로 위장하고 있었으며, 유효한 인증서로 서명된 악성코드들도 다수 발견됐다.

또한 해당 개발 업체에서 제공하는 소프트웨어 다운로드 웹 사이트에서는 아직까지도 악성 설치 파일이 업로드되어 있어 사용자가 이 사실을 모르고 설치할 수 있다. 공격자는 이 점을 악용해 프로그램 개발 업체를 공격하고 악성코드가 포함된 설치 파일을 유포시킨 것으로 추정된다. 이 같은 형태의 공격은 올해 상반기부터 지속되고 있다.

[그림 1] 악성코드 유포에 사용 중인 개발 업체의 소프트웨어 다운로드 웹 사이트

1. 과거 공격 사례

[그림 2] 과거 공격 흐름도

과거 사례들을 보면, 국내 VPN 업체의 홈페이지에서 기존 설치 파일 대신 악성 설치 파일이 업로드되어 있었다. 사용자는 정상적으로 설치 파일을 실행했다고 인지할 수 있지만, 실제로는 악성코드가 시스템에 함께 설치돼 동작하게 된다. 최초 공격에서 악성 설치 파일은 닷넷(.NET)으로 개발돼 있었으며, 정상 설치 파일과 스파크랫 악성코드를 생성하고 실행했다. 스파크랫은 고(Go) 언어로 개발된 오픈 소스 RAT 악성코드로서 깃허브에 공개돼 있으며, 명령 실행, 정보 탈취, 프로세스 및 파일 제어와 같이 감염 대상 시스템을 제어할 수 있는 기능들을 제공한다.

이후에도 해당 VPN 업체의 홈페이지에서는 지속적으로 악성코드가 업로드 됐으며, 백신 등 보안솔루션 탐지를 우회하기 위해 직접 악성코드를 드롭하는 대신 다운로더 악성코드를 거쳐 스파크랫을 설치하는 방식으로 변경됐다. 또한, 백도어인 스파크랫을 감염 대상 시스템에 설치한 이후에도 원격 데스크톱을 위해 메시센트럴(MeshCentral)의 메시에이전트(MeshAgent)를 추가로 설치했다.

 

2. 현재 공격에 사용 중인 악성코드 분석

[그림 3] 현재 공격 흐름도

 

​악성코드를 함께 설치하는 드로퍼였던 과거의 악성 설치 파일과 달리, 현재 사용되는 유형은 다운로더이자 인젝터 악성코드이다. 인스톨러를 비롯한 공격에 사용된 악성코드는 고 언어로 개발됐으며, 모두 난독화된 형태이다. 공격자가 과거에 사용한 스파크랫 또한 고 언어로 개발된 백도어이며, 이후 공격 과정에서도 고 언어로 개발한 드로퍼 및 다운로드 악성코드를 사용했다. 최근 확인되고 있는 실버 C2 또한 고 언어로 개발된 점으로 미루어 보아, 공격자는 악성코드를 제작할 때 고 언어를 선호하는 것으로 보인다.

[그림 4] 난독화된 고 바이너리

악성 설치 파일은 C&C 서버에 접속해 암호화된 설정 데이터를 다운로드하며, 조건에 매칭될 경우 실버 C2를 다운로드해 정상 프로그램인 메모장(notepad.exe)를 실행한 후 인젝션한다. 이러한 과정은 정상 설치 파일을 생성하고 실행하는 작업과 동시에 이루어지기 때문에 사용자들은 정상 설치 파일이라고 생각할 수 있다.

​[그림 5] 악성 설치 파일이 생성한 정상 설치 파일

 

​악성 설치 파일은 안티 샌드박스 기능을 포함한다. 현재 실행 중인 프로세스의 목록을 조회해 특정 프로세스가 실행 중일 경우에만 인젝션 행위를 수행한다. 검사하는 프로세스의 목록은 다음 주소에 암호화된 형태로 존재하며, 악성코드는 이를 다운로드하고 복호화해 조건 검사에 사용한다.

Ÿ 설정 다운로드 주소 : hxxps://status.devq[.]workers.dev/

[그림 6] 암호화된 조건

[그림 7] 복호화된 조건 문자열

 

[표 1] 조건으로 사용된 프로세스 목록

[표 1]의 프로세스는 일반 사용자 PC에 설치돼 있을 법한 프로그램이다. 이 중 중국 메신저도 일부 확인되는데, 그 이유는 VPN 서비스의 주요 고객이 대부분 중국에서 원활한 인터넷 접속을 위해 VPN을 설치하려는 사용자이기 때문이다.

 

Ÿ Sliver C2 다운로드 주소: hxxps://config.v6[.]army/sans.woff2

[​그림 8] 프로세스 트리

 

​실버 C2는 깃허브에 공개된 오픈 소스 침투 테스트 툴이다. 침투 테스트 툴이라고 한다면 기업이나 기관의 네트워크 및 시스템에 대한 보안 취약점을 점검하기 위한 목적으로 사용 가능한 툴이다. 일반적으로 침투 테스트 단계별로 다양한 기능들을 지원하기 때문에 공격자가 악의적 목적으로 사용할 수 있다는 특징이 있다. 대표적인 상용 침투 테스트 툴이라고 한다면 코발트 스트라이크(Cobalt Strike)와 오픈 소스 메타스플로잇(Metasploit)이 있다. 최근에는 이 2가지 외에도 실버 C2를 이용한 공격 사례가 다수 확인된다.

공격자가 스파크랫 대신 실버 C2를 사용하는 데는 실버 C2가 단순한 백도어인 스파크랫보다 더 많은 기능을 지원하기 때문인 것으로 추정된다. 실버 C2가 지원하는 기능으로는 프로세스 및 파일 작업, 명령 실행, 파일 업로드/다운로드, 스크린샷 캡처 등과 같이 일반적인 백도어 및 RAT 악성코드가 흔히 지원하는 기능 외에도 권한 상승이나 프로세스 메모리 덤프, 측면 이동과 같이 내부망 장악을 위해 필요한 다양한 기능도 제공한다.

Ÿ Sliver C2 이름: PRETTY_BLADDER

Ÿ Sliver C2의 C&C 주소: hxxps://panda.sect[.]kr

 

[그림 9] 실버 C2의 설정 데이터

 

 

3. 추가 악성코드 분석

비록 공격에 사용된 악성코드가 스파크랫에서 실버 C2로 변경됐지만, 최종 악성코드는 기존과 동일하게 메시에이전트가 사용되고 있다. 공격자는 메모장에 인젝션된 실버 C2를 이용해 “%PROGRAMFILES%\Microsofts\Microsofts\preMicrosoft.exe” 경로에 메시에이전트를 설치했다.

 

​[그림 10] 메시에이전트 설치 로그

메시센트럴에서 제공하는 메시에이전트는 명령 실행이나 파일 다운로드와 같은 각종 시스템 제어 명령들뿐만 아니라 VNC, RDP와 같은 원격 데스크톱 기능을 제공한다. 이들은 일반 사용자가 원격에서 시스템을 관리하는 데 필요한 기능이지만, 악의적 목적으로도 사용될 수 있다. 이번 사례에서도 공격자가 감염 대상 시스템을 원격으로 제어하기 위해 메시에이전트를 사용한 것으로 보인다.

 

Ÿ MeshAgent의 C&C 주소: speed.ableoil[.]net:443

[그림 11] 공격에 사용된 메시에이전트

공격자는 실버 C2와 메시에이전트를 설치해 시스템에 대한 제어 권한을 획득하면 PC에 저장된 사용자 정보를 탈취하거나 추가 악성코드와 같은 다양한 악성 행위를 수행할 수 있다. 안랩의 ASD(AhnLab Smart Defense) 로그에 따르면, 공격자는 메시에이전트를 이용해 “m.exe”라는 추가 악성코드를 설치했다. “m.exe”는 마찬가지로 깃허브에 공개된 웹캠 캡처 악성코드로, 다른 악성코드처럼 고 언어로 제작됐다. 공격자는 해당 악성코드를 이용해 웹캠이 지원되는 시스템에서 사용자의 사진을 캡처할 수 있다.

 

[그림 12] 공격자가 사용한 오픈 소스 웹캠 캡쳐 악성코드

 

4. 공격에 사용된 설치 파일들

​현재 대다수 VPN 및 마케팅 프로그램 판매 업체들의 홈페이지에서는 정상 설치 파일들만 확인되지만, 아직 완전히 조치되지 않은 업체도 있다. 특정 VPN 업체의 경우 홈페이지의 다운로드 링크에서는 정상 설치 파일이 설치되지만, 웹 사이트에는 아직 악성 설치 파일이 업로드되어 있어 다운로드될 수 있다.

[그림 13] 특정 VPN 업체의 웹 사이트에 업로드된 악성코드

이 외에도 다음과 같은 소프트웨어 다운로드 사이트에서도 악성 설치 파일이 유포되고 있는데, 확인 결과 동일한 프로그램 개발 업체의 또 다른 웹 사이트였다. 해당 파일들은 폰트 파일이어야 하지만 실제로 다운로드되는 것은 악성 설치 파일이다.

[그림 14] 현재까지도 악성코드가 다운로드되는 웹 사이트​

 

위의 악성코드들은 모두 유효하지 않은 인증서로 서명돼 있으며, 공격자가 설치 파일을 위장하기위해 인증서를 도용했다. 하지만 실제 해당 프로그램 개발 업체의 유효한 인증서로 서명된 악성코드들도 다수 존재한다. 유효하게 서명된 악성코드들은 여러 서비스의 설치 파일로 위장한 악성 설치 파일들과 VPN 실행 파일들, 메시에이전트 등으로 다양하다.

 

정리하면, 구체적인 정황은 알 수 없지만 공격자는 악성코드를 프로그램 개발 업체의 유효한 인증서로 서명할 수 있으며, 해당 개발 업체가 제공하는 다양한 서비스로 위장한 악성 설치 파일이 다수 확인되고 있다.

 

[그림 15] 유효한 인증서로 서명된 악성코드

 

​5. 결론

현재 특정 프로그램 개발 업체를 통해 악성코드가 유포되고 있으며, 해당 업체의 유효한 인증서로 서명된 악성코드들도 다수 확인된다. 이에 따라 해당 개발 업체가 공급하는 다른 서비스에서도 악성코드가 유포될 수 있다. 실제로 해당 개발 업체가 공급하는 VPN 업체의 다운로드 페이지와 소프트웨어 다운로드 사이트에도 악성코드가 업로드된 사례도 확인된다.

 

공격자는 감염 대상 시스템에 대한 제어 기능을 지원하는 스파크랫, 실버 C2, 메시에이전트 악성코드를 설치했으며, 이에 따라 공격자는 PC에 저장된 사용자 정보를 탈취하거나 추가 악성코드 설치와 같은 다양한 악성 행위를 수행할 수 있다.

 

또한, 사용자가 홈페이지에서 악성 설치 파일을 다운로드해 설치하면 악성 설치 파일은 악성코드뿐만 아니라 기존 정상 설치 파일도 함께 설치하기 때문에 사용자는 악성코드에 감염된 사실을 인지하기 어렵다. 사용자들은 V3를 최신 버전으로 업데이트해 악성코드 감염을 사전에 차단할 수 있도록 신경 써야 할 것이다.

자세한 내용은 ASEC 블로그를 통해 확인할 수 있다.

 

 

출처 : AhnLab

02-553-2331
견적 요청
카카오톡 문의