개요
일반적으로 공격자들은 스피어 피싱 메일의 첨부 파일이나 멀버타이징, 취약점, 정상 소프트웨어로 위장하여 악성코드를 웹사이트에 업로드하는 등 다양한 방식으로 악성코드를 설치한다. 설치되는 악성코드로는 감염 시스템의 정보를 탈취하기 위한 인포스틸러나 파일들을 암호화해 금전을 요구하는 랜섬웨어, DDoS 공격에 사용하기 위한 DDoS Bot 등이 있다. 이외에도 백도어 및 RAT 도 공격자들이 사용하는 대표적인 악성코드 중 하나이다. 백도어는 감염 시스템에 설치되어 공격자로부터 명령을 받아 악성 행위를 수행할 수 있으며 이를 통해 공격자는 감염 시스템을 장악할 수 있다. 이러한 백도어 유형의 악성코드는 단독 시스템뿐만 아니라 측면 이동을 통해 네트워크를 장악하여 최종적으로 기업 내의 정보를 탈취하거나 장악한 내부 시스템들을 암호화하는 공격의 중간 단계로서 사용될 수도 있다.
RAT 악성코드도 기능적인 면에서는 실질적으로 백도어와 동일하다고 할 수 있다. 하지만 RAT는 그만의 특징이 존재하는데, RAT가 “Remote Access Trojan” 또는 “Remote Administration Tool”과 같은 여러 의미를 갖기 때문이다. 일반적으로 “Remote Access Trojan”로 지칭될 때는 감염 시스템에 대한 원격 제어를 제공하기 때문에 백도어 악성코드와 유사하다고 할 수 있다. 하지만 AnyDesk, TeamViewer와 같이 “Remote Administration Tool”로 불리는 소프트웨어들은 일반 사용자나 기업 사용자들이 원격으로 시스템을 제어하기 위한 목적으로 설치하는 정상 프로그램이라고 할 수 있다. 이러한 혼란 때문에 Remcos RAT은 키로깅, 스크린샷 캡쳐, 웹캠 지원, 정보 탈취와 같은 악성 기능들을 포함한 “Remote Access Trojan”임에도 불구하고 “Remote Administration Tool”로 소개하고 있다.[1]
여기에서는 일반적으로 정상적인 목적으로 사용되는 AnyDesk, TeamViewer와 같은 “Remote Administration Tool”을 공격자들이 악용하여 감염 시스템을 장악하는 데 사용하는 실제 사례들을 다룬다. 이를 위해 먼저 대표적인 백도어 및 RAT(Remote Access Trojan) 악성코드들의 유형과 특징들을 간략하게 정리한 후 최근 공격에 악용되고 있는 다양한 RAT(Remote Administration Tool)들을 실제 공격 사례와 함께 다룬다.
백도어와 RAT (Remote Access Trojan)
원격 쉘 (Remote Shell)
가장 간단한 형태부터 설명하자면 원격 쉘 악성코드가 있다. 원격 쉘은 통신 방식에 따라 Reverse Shell과 Bind Shell로 나뉘는데 그 목적은 둘 다 감염 시스템의 쉘을 공격자에게 제공해 준다는 점이다. 즉 감염 시스템에 원격 쉘이 설치될 경우 공격자는 전달받은 쉘을 이용해 명령을 실행시킬 수 있으며 이는 해당 시스템을 장악했다는 것을 의미한다.
백도어 및 RAT (Remote Access Trojan)
백도어는 포괄적인 분류이다 보니 여기에서는 RAT 유형들과 함께 분류한다. ASEC 주간 통계 블로그를 보면 최근을 기준으로 하더라도 다양한 유형의 백도어들이 공격에 사용되고 있다.[2] 상용 RAT 및 딥웹에서 판매되고 있는 대표적인 RAT 유형으로는 Remocs RAT, AveMaria(Warzone RAT), BitRAT, RedLine 등이 있으며 NanoCore는 과거 빌더의 크랙 버전이 공개되어 최근까지도 다양한 공격자들이 사용하고 있다. 이외에도 오픈 소스로 공개된 Gh0st RAT, Async RAT, Quasar RAT 등 수많은 종류들이 있다.
이렇게 빌더나 오픈 소스로 공개된 형태가 아니라고 하더라도 공격자들이 직접 제작한 백도어들은 다수 존재한다. 대표적으로 Kimsuky 및 NukeSped 공격 그룹에서 사용하는 악성코드들도 주로 백도어 악성코드이다. 예를 들면 AppleSeed나 PebbleDash 그리고 NukeSped가 있다.
코발트 스트라이크. 메타스플로잇 미터프리터.
코발트 스트라이크와 메타스플로잇 미터프리터는 침투 테스트 목적의 프레임워크이다. 기업이나 기관의 네트워크 및 시스템에 대한 보안 취약점을 점검하기 위한 목적으로 사용 가능한 도구로서 침투 테스트 단계별로 다양한 기능들을 지원한다. 즉 일반적인 백도어 악성코드들과 같이 감염 시스템에 대한 제어를 제공하지만 이외에도 최초 감염을 위한 다양한 형태의 페이로드 생성부터 계정 정보 탈취, 내부망 이동을 거쳐 시스템 장악까지 단계별로 필요한 기능들을 제공한다.
이러한 특징 때문에 최근에는 대다수의 APT 공격 그룹에서 코발트 스트라이크와 같은 툴을 이용해 기업 내부에 침투 및 내부망을 장악하여 최종적으로 기업 내부 정보를 탈취하거나 랜섬웨어를 설치하여 장악한 시스템들을 암호화하고 있다.
원격 제어 도구 (Remote Administration Tool) 악용 사례
위에서 일반 사용자나 기업 사용자들이 원격으로 시스템을 제어하기 위한 목적으로 사용하는 원격제어 도구(Remote Administration Tool)로 불리는 소프트웨어들이 있다고 하였다. 이러한 유형들로는 대표적으로 윈도우에서 제공하는 RDP뿐만 아니라 AnyDesk나 TeamViewer와 같이 자체적인 프로토콜을 이용하는 상용 프로그램도 있고 VNC 프로토콜을 이용하는 유형들 등 다양한 제품들이 존재한다.
원격 제어 도구들은 대부분 커맨드 라인 기반인 백도어 및 RAT(Remote Access Trojan) 악성코드들과 달리 사용자 편의가 중요하기 때문에 원격 데스크탑 즉 GUI 환경을 제공하는 것이 특징이다. 비록 악의적인 기능들은 존재하지 않다고 하더라도 감염 시스템에 설치될 경우에는 공격자에 의해 추가 악성코드 설치나 정보 탈취와 같은 악의적인 목적으로 사용될 수 있다.
백도어 악성코드는 비록 보안 제품의 탐지를 우회했다고 하더라도 알려진 정상 프로그램이 아님에 따라 보안 제품에 의해 탐지될 수 있는 위험이 존재한다. 하지만 대부분의 원격 제어 도구들은 수많은 사용자들에 의해 사용되고 있기 때문에 정상 프로그램으로 인식될 수밖에 없다. 즉 공격자들은 정상 프로그램인 원격 제어 도구들을 이용해 보안 제품의 탐지를 우회하고, 동시에 GUI 환경에서 감염 시스템을 제어할 수 있다는 장점을 갖는다.
여기에서는 실제 공격에 사용된 원격 제어 도구들을 각각의 사례들과 함께 다룬다.
AnyDesk
AnyDesk는 Conti 랜섬웨어 공격 그룹[3], DarkSide 랜섬웨어 공격 그룹[4]을 포함한 다양한 APT 공격에서 악용되고 있는 대표적인 원격 제어 도구이다. 이외에도 ASEC 블로그에서 소개되었던 바와 같이 최근까지도 부적절하게 관리되고 있는 MS-SQL 서버를 대상으로도 한 공격에 사용되고 있다.[5]
공격자는 MS-SQL 서버에 대한 제어 획득 이후 다음과 같은 파워쉘 명령이 실행되는데, 해당 스크립트는 공식 홈페이지에서 AnyDesk를 Silent 모드로 설치한 후 AnyDesk에 비밀번호 “wocaoybb”를 설정하는 기능을 담당한다.
이러한 방식으로 AnyDesk가 감염 시스템에 설치된 경우 공격자는 다음과 같이 감염 시스템에 접속하여 비밀번호를 입력함으로써 사용자의 동의 없이 원격 제어가 가능해진다.
ToDesk, RuDesktop
최근에는 AnyDesk 설치 이후 중국 원격 제어 도구인 ToDesk와 러시아 원격 제어 도구인 RuDesktop을 설치하는 사례도 확인된다. 모두 정상 프로그램들이지만 공식 홈페이지가 아닌 다음과 같은 주소에서 다운로드되었으며 이후 설치가 진행되었다.
비록 위의 AnyDesk 사례처럼 설치 스크립트나 명령들이 상세하게 확인되지는 않지만, 두 제품 모두 시스템에 설치될 경우 랜덤으로 생성되는 ID와 비밀번호를 기반으로 원격 시스템에 접속이 가능하기 때문에 유사하게 사용되었을 가능성이 있다.
TeamViewer
TeamViewer 또한 AnyDesk와 함께 다양한 공격자에 의해 사용되고 있는 대표적인 원격 제어 도구이다. 여기에서는 SmokeLoader에 의해 사용된 사례를 다룬다. SmokeLoader는 수년 전부터 꾸준히 유포되고 있으며 ASEC 통계 기준 최근까지도 높은 점유율을 차지하고 있는 악성코드이다. 최근에는 주로 정상 소프트웨어 크랙 및 시리얼 생성 프로그램을 위장한 유포 사이트에서 사용자가 직접 다운로드하는 방식으로 유포 중이다.
SmokeLoader는 다운로더 악성코드로 분류되는데, 기능적으로 추가 악성코드를 기능을 갖고 있지만 자체 플러그인들도 지원한다.[6] 확인된 플러그인들의 종류는 10개 정도 되며 대부분 정보 탈취 기능을 담당한다. 이외에도 DDoS Bot으로 동작하게 하거나 사용자 인지 없이 TeamViewer를 설치하는 기능을 담당하는 플러그인이 존재한다.
AnyDesk와 유사하게 TeamViewer 또한 설치된 환경에서 생성된 아이디 및 패스워드를 알아야 접속이 가능하다. 문제는 생성된 계정 정보가 GUI 윈도우에 보인다는 점인데, 이 문자열들을 탈취하기 위해 SetWindowsTextW() 함수를 후킹하여 윈도우에 보일 때의 해당 문자열들을 수집한다.
이렇게 수집한 아이디 및 패스워드는 C&C 서버에 전달되고, 공격자는 전달받은 계정 정보를 이용해 감염 시스템에 원격 접속이 가능해진다.
Ammyy Admin
Ammyy Admin은 다양한 방식으로 악용되고 있는 대표적인 원격 제어 도구들 중 하나이다. 정상 유틸리티로서 악용되기도 하지만 특정 버전의 소스 코드가 해킹되어 공개됨에 따라 이후 TA505 그룹에 의해 사용되기도 하였다.[7] 공격자들은 소스 코드를 커스터마이징하여 감염 시스템을 제어하기 위한 목적으로 사용하였는데 이러한 유형은 FlawedAmmyy라고 이름 붙여졌다. 스피어 피싱 메일의 첨부 파일을 통해 다운로더 악성코드를 거쳐 FlawedAmmyy가 설치되며, 이후 코발트 스트라이크 및 미미카츠와 같은 도구들을 이용해 내부망을 장악하였으며 최종적으로 CLOP 랜섬웨어를 설치해 공격 대상 기업의 시스템들을 암호화하였다.
최근에는 부적절하게 관리되고 있는 MS-SQL 서버를 대상으로 하는 공격에서도 사용된 이력이 존재한다. MS-SQL 서버이다 보니 공격자는 Ammyy Admin을 포함하여 권한 상승 목적의 SweetPotato와 같은 다양한 악성코드들을 설치하였다.
VNC
VNC는 가상 네트워크 컴퓨팅(Virtual Network Computing)이라고 불리는 기술로서 원격으로 다른 컴퓨터를 제어하는 화면 제어 시스템이다. 일반적으로 자주 사용되는 RDP와 유사하게 원격으로 다른 시스템에 접속하여 제어하기 위한 목적으로 사용된다. TightVNC나 TigerVNC와 같은 상용 프로그램 외에도 AveMaria RAT이나 TinyNuke (HVNC)와 같은 악성코드들도 이러한 VNC 기능을 지원한다.
TinyNuke
TinyNuke는 2016년부터 확인된 뱅킹 악성코드로서 HVNC (HiddenDesktop/VNC), Reverse SOCKS4 프록시, 웹 브라우저 폼 그래빙과 같은 기능들을 포함한다. TinyNuke는 2017년경 소스 코드가 공개됨에 따라 다양한 공격자들에 의해 사용되고 있으며, 그중에서 HVNC 기능은 AveMaria, BitRAT과 같은 다른 악성코드들에 의해 부분적으로 차용되는 방식으로 사용되고 있다.
최근에는 Kimsuky 그룹에서 TinyNuke 악성코드를 사용하고 있다.[8] Kimsuky 그룹에서 사용하는 TinyNuke는 기존의 다양한 기능들 중에서 HVNC (Hidden VNC) 기능만 활성화되어 있다. 참고로 일반적인 VNC와 TinyNuke가 사용하는 HVNC의 차이점은 감염된 사용자가 자신의 화면이 제어되고 있다는 사실을 인지하지 못하는 것이다.
참고로 TinyNuke는 서버와 클라이언트 간 HVNC 통신을 확립할 때 “AVE_MARIA” 문자열을 이용해 검증한다. 즉 HVNC 클라이언트에서 서버로 “AVE_MARIA” 문자열을 보내면 서버에서는 이를 검증하여 “AVE_MARIA”가 맞을 경우에 HVNC 통신이 가능하다.
이는 Kimsuky 그룹에서 사용하는 HVNC에서도 동일한데, 이외에도 다음과 같이 “LIGHT’S BOMB” 문자열을 사용하는 HVNC들이 확인되고 있다.
AveMaria
AveMaria(Warzone RAT)는 스팸 메일을 통해 유포되는 대표적인 악성코드들 중 하나로서 C&C 서버로부터 공격자의 명령을 받아 프로세스 / 파일 작업 및 원격 쉘, 키로깅, 웹캠 제어 등 다양한 악성 행위를 수행할 수 있다.[9] AveMaria가 대부분의 RAT 기들을 지원하지만 공격자 입장에서는 GUI 형태의 원격 데스크탑 기능이 필요할 수 있으므로 대부분의 RAT들은 원격 데스크탑 기능을 제공한다.
AveMaria는 VNC를 이용해 원격 데스크탑을 제공하는데 Remote VNC 명령이 이를 담당한다. 참고로 AveMaria는 TinyNuke의 HVNC 기능을 가져와 사용하였다. 위에서 다룬 바와 같이 TinyNuke는 초기 통신 확립 과정에서 “AVE_MARIA” 문자열을 사용하는데, AveMaria의 원래 이름은 Warzone RAT이지만 해당 문자열의 특징으로 인해 AveMaria라는 이름이 붙여졌다.
Remote VNC 명령 실행 시 AveMaria는 vncdll.dll을 메모리 상에 다운로드 및 로드한다. 이를 통해 AveMaria 프로세스에서 VNC 서버가 동작하며, 공격자는 이후 TightVNC나 TigerVNC와 같은 VNC 클라이언트로 감염 시스템에 접속하여 원격 제어를 수행할 수 있다.
TightVNC
Kimsuky 그룹은 오픈 소스 VNC 유틸리티인 TightVNC를 커스터마이징해서 사용하고 있다.[10] TightVNC 또한 일반적인 VNC 유틸리티라고 할 수 있지만, 앞에서도 다룬 Reverse VNC 기능을 지원하는 점이 특징이다.
TightVNC는 서버 모듈인 tvnserver.exe와 클라이언트 모듈인 tvnviewer.exe로 이루어져 있다. 일반적인 환경에서는 원격 제어 대상에 tvnserver를 설치하고 사용자 환경에서 tvnviewer를 이용해 제어 대상에 접속할 것이다. Reverse VNC 기능을 사용하기 위해서는 클라이언트에서 tvnviewer를 리스닝 모드로 실행한 후 접속 대상 시스템에 서비스로 설치된 tvnserver를 이용해 controlservice 및 connect 명령으로 클라이언트의 주소를 설정하여 접속하게 할 수 있다.
Kimsuky 그룹에서 유포하는 것은 tvnserver이며, 감염 환경에서 서비스 설치 없이 단독으로 Reverse VNC 기능을 사용할 수 있도록 커스터마이징한 형태이다. 이에 따라 단순히 tvnserver를 실행만 하더라도 C&C 서버에서 동작하는 tvnviewer에 접속하여 공격자는 감염 시스템에 대한 화면 제어가 가능해진다.
tmate
Tmate는 터미널을 공유할 수 있는 유틸리티이며 WatchDog 그룹에 의해 악용되고 있다.[11] WatchDog 그룹은 부적절하게 관리되고 있는 리눅스 클라우드 환경을 대상으로 XMRig 모네로 코인 마이너를 설치한다. 하지만 이외에도 Tsunami와 같은 백도어 악성코드나 Tmate 원격 제어 도구를 설치해 악용하고 있다.
Tmate를 설치할 경우 원격 관리 툴처럼 원격에서 감염 시스템에 접속하여 제어를 획득할 수 있다. 공격자는 다음과 같이 tmate를 설치한 후 공격자의 API 키를 지정하고 랜덤한 문자열로 세션을 생성한다. “-k” 옵션은 API를 지정하는 옵션이며 “-n” 옵션은 각 세션을 지정하는 옵션이다.
다음은 공격자의 API 키와 랜덤한 세션 이름으로 tmate를 실행한 결과이다. 출력된 결과를 보면 해당 API 키는 “HildeGard” 계정에 포함된 것으로 추정할 수 있다. 실제로 tmate 실행 이후 출력 결과를 보면 HildeGard 계정 및 랜덤으로 지정한 세션 이름으로 구성된 URL을 확인할 수 있으며 해당 URL에 접속하면 명령 실행 즉 제어를 획득할 수 있다. WatchDog는 랜덤으로 생성한 URL 토큰을 C&C 서버에 전송하기 때문에 공격자가 새로운 세션을 확인할 수 있다.
- 공격자의 tmate API Key : tmk-4ST6GRXU6GPUjlXHfSlNe0ZaT2
결론
공격자들은 초기 침투 과정을 거쳐 공격 대상 시스템을 장악하기 위해 백도어 악성코드를 설치한다. 최근에는 이미 알려져 있거나 새로운 백도어 악성코드를 제작하는 방식보다는 정상 유틸리티를 악용하는 특징이 있다. 이를 위해 일반적으로 다양한 사용자들이 사용하고 있는 원격 제어 도구들이 사용된다. 공격자들은 이를 통해 보안 제품의 진단을 우회할 수 있고 GUI 환경에서 감염 시스템을 제어할 수 있다.
사용자들은 의심스러운 메일을 받게 된다면 첨부 파일의 실행을 지양해야 하며, 외부에서 프로그램 설치 시 공식 홈페이지에서 구매하거나 다운로드하는 것을 권장한다. 그리고 계정의 비밀번호를 복잡한 형태로 사용 및 주기적으로 변경해야 한다. 또한 V3를 최신 버전으로 업데이트하여 악성코드의 감염을 사전에 차단할 수 있도록 신경 써야 한다.
[파일 진단]
– Win-AppCare/RemoteAdmin.Exp (2019.01.28.06)
– HackTool/Linux.RAdmin.3135320 (2021.02.05.08)
[행위 진단]
– Malware/MDP.Download.M1197
IOC
MD5
– fe1bb6811f5c808414c4a357031c2718 : Ammyy Admin
– 1aeb95215a633400d90ad8cbca9bc300 : tmate
다운로드 주소
– hxxp://106.250.168[.]50/rd.exe : RuDesktop
– hxxp://106.250.168[.]50/todesk.rar : ToDesk
– hxxp://183.111.148[.]147/mscorsvw2.exe : Ammyy Admin
– hxxp://119.201.213[.]146/mscorsvw2.exe : Ammyy Admin
– hxxp://58.180.56[.]28/mscorsvw2.exe : Ammyy Admin
– hxxp://bbq.zzhreceive[.]top/tmate : tmate
참고
[1] [ASEC Blog] 스팸 메일로 유포 중인 Remcos RAT 악성코드
[2] [ASEC Blog] ASEC 주간 악성코드 통계 (20220926 ~ 20221002)
[3] [The DFIR Report] BazarLoader and the Conti Leaks
[4] [Cyware] DarkSide: A Deep Dive Into The Threat Actor That Took Colonial Pipeline Down
[5] [ASEC Blog] AnyDesk 원격 툴을 악용하는 공격 사례 (코발트스트라이크, 미터프리터)
[6] [ASEC Report] Vol.101 한층 업그레이드된 최신판 스모크로더(Smoke Loader), 전격해부
[7] [ASEC Blog] 국내 사용자를 대상으로 유포 중인 악성 Excel 문서 파일
[8] [ASEC Blog] Kimsuky 그룹의 APT 공격 분석 보고서 (AppleSeed, PebbleDash)
[9] [ASEC Blog] 스팸 메일로 유포 중인 AveMaria 악성코드
[10] [ASEC Blog] Kimsuky 그룹의 APT 공격 분석 보고서 (AppleSeed, PebbleDash)
[11] [AhnLab TIP] 취약한 클라우드 환경을 타겟으로 한 코인마이너 설치 (WatchDog 그룹) 악성코드 분석 보고서
연관 IOC 및 관련 상세 분석 정보는 안랩의 차세대 위협 인텔리전스 플랫폼 ‘AhnLab TIP’ 구독 서비스를 통해 확인 가능하다.
Source: https://asec.ahnlab.com/ko/39761/