Worok: 큰 그림 PlatoBlockchain Data Intelligence. 수직 검색. 일체 포함.

워록: 큰 그림

주로 아시아에 중점을 둔 이 새로운 사이버 스파이 그룹은 PNG 파일에서 PowerShell 페이로드를 스테가노그래피 방식으로 추출하는 등 문서화되지 않은 도구를 사용합니다.

ESET 연구원들은 최근 주로 아시아에서 여러 유명 기업과 지방 정부를 대상으로 문서화되지 않은 도구를 사용하는 표적 공격을 발견했습니다. 이러한 공격은 이전에 알려지지 않은 Worok이라는 스파이 그룹에 의해 수행되었으며 최소 2020년부터 활동했습니다. Worok의 도구 세트에는 C++ 로더 CLRLoad, PowerShell 백도어 PowHeartBeat 및 스테가노그래피를 사용하여 숨겨진 악성 코드를 추출하는 C# 로더 PNGLoad가 포함됩니다. PNG 파일의 페이로드.

워록이 누구야?

ProxyShell 동안(CVE-2021-34523) 2021년 초 취약점 공개, 우리는 관찰 다양한 APT 그룹의 활동. 하나는 다음과 같은 공통된 특성을 나타냅니다. TA428:

  • 활동 시간
  • 타겟 카테고리
  • 섀도우패드 사용

나머지 도구 세트는 매우 다릅니다. 예를 들어 TA428은 에이블 데스크탑 타협 월록을 TA2020과 같은 그룹이라고 생각할 만큼 링크가 강력하지 않다고 생각하지만, 두 그룹은 도구를 공유하고 공통의 관심사를 가질 수 있습니다. 우리는 클러스터를 만들기로 결정하고 이름을 워록으로 지정했습니다. 이름은 그룹에서 사용하는 로더의 뮤텍스 다음에 선택되었습니다. 그런 다음 동일한 도구의 변형을 사용한 추가 활동이 이 그룹에 연결되었습니다. ESET의 원격 측정에 따르면 Worok은 428년 말부터 활동했으며 이 글을 쓰는 현재까지도 계속 활동하고 있습니다.

2020년 후반에 워록은 특히 다음과 같은 여러 국가의 정부와 기업을 대상으로 삼았습니다.

  • 동아시아의 통신 회사
  • 중앙 아시아의 은행
  • 동남아시아의 해양산업 기업
  • 중동의 정부 기관
  • 남아프리카 공화국의 개인 회사

2021-05년에서 2022-01년 사이에 관찰된 작업에 상당한 중단이 있었지만 Worok 활동은 2022-02년에 다음을 대상으로 반환되었습니다.

  • 중앙아시아의 에너지 기업
  • 동남아시아의 공공 부문 기관

그림 1은 대상 지역과 수직선의 시각적 히트맵을 보여줍니다.

그림 1. 대상 지역 및 업종의 지도

목표의 프로필과 이러한 희생자를 대상으로 배치된 도구를 고려할 때 Worok의 주요 목표는 정보를 훔치는 것입니다.

기술적 분석

초기 액세스의 대부분은 알려지지 않았지만 일부 경우에는 2021년과 2022년까지 ProxyShell 취약점에 사용된 익스플로잇을 보았습니다. 이러한 경우 일반적으로 피해자의 네트워크에 지속성을 제공하기 위해 이러한 취약점을 악용한 후 웹쉘이 업로드됩니다. 그런 다음 운영자는 추가 기능을 얻기 위해 다양한 임플란트를 사용했습니다.

액세스 권한이 확보되면 운영자는 다음을 포함하여 정찰을 위해 공개적으로 사용 가능한 여러 도구를 배포했습니다. 미미 카츠, 지렁이, 레게오르그NBT스캔, 그리고 나서 첫 번째 단계 로더와 두 번째 단계 .NET 로더(PNGLoad)라는 맞춤형 임플란트를 배포했습니다. 안타깝게도 최종 페이로드를 검색할 수 없습니다. 2021년에 2022단계 로더는 CLR 어셈블리(CLRLoad)였지만 2년에는 대부분의 경우 완전한 기능을 갖춘 PowerShell 백도어(PowHeartBeat)로 교체되었습니다. 두 실행 체인은 모두 그림 XNUMX에 나와 있습니다. 이 세 가지 도구는 다음 하위 섹션에 자세히 설명되어 있습니다.

Worok: 큰 그림 PlatoBlockchain Data Intelligence. 수직 검색. 일체 포함.

그림 2. 워록 타협 체인

CLRLoad: CLR 어셈블리 로더

CLRLoad는 32비트 및 64비트 버전 모두에서 볼 수 있는 일반 Windows PE입니다. 다음 단계(PNGLoad)를 로드하는 C++로 작성된 로더입니다. CLR(공용 언어 런타임) 어셈블리 DLL 파일. 해당 코드는 합법적인 디렉토리의 디스크에 있는 파일에서 로드되며, 아마도 피해자나 사고 대응자가 합법적인 소프트웨어라고 오도하도록 유도할 것입니다.

일부 CLRLoad 샘플은 콘텐츠가 다음 단계로 로드될 파일의 ​​전체 경로를 디코딩하여 시작합니다. 이러한 파일 경로는 모든 샘플에서 다른 키를 사용하여 XNUMX바이트 XOR로 인코딩됩니다. 디코딩되거나 일반 텍스트인 이러한 파일 경로는 절대적이며 다음과 같은 경로가 있습니다.

  • C:프로그램 파일VMwareVMware ToolsVMware VGAuthxsec_1_5.dll
  • C:프로그램 파일UltraViewermsvbvm80.dll
  • C:프로그램 파일Internet ExplorerJsprofile.dll
  • C:프로그램 파일WinRarRarExtMgt.dll
  • C:프로그램 파일(x86) Foxit SoftwareFoxit Readerlucenelib.dll

다음으로 뮤텍스가 생성되고 모든 샘플에서 다른 이름을 보았습니다. 로더는 이 뮤텍스를 확인합니다. 발견되면 로더가 이미 실행 중이므로 종료됩니다. 샘플 중 하나에서 뮤텍스 Wo0r0KGWhYGO 그룹의 이름을 Worok으로 지정했습니다.

그런 다음 CLRLoad는 디코딩될 수 있는 파일 경로에서 CLR 어셈블리를 로드합니다. 비관리 코드로서 CLRLoad는 다음을 통해 이를 달성합니다. CorBindToRuntimeEx 32비트 변형의 Windows API 호출 또는 CLRCreate인스턴스 64비트 변형을 호출합니다.

PowHeartBeat: PowerShell 백도어

PowHeartBeat는 압축, 인코딩 및 암호화와 같은 다양한 기술을 사용하여 난독화된 PowerShell로 작성된 모든 기능을 갖춘 백도어입니다. ESET 원격 측정을 기반으로 PowHeartBeat가 PNGLoad를 시작하는 데 사용되는 도구로 최근 Worok 캠페인에서 CLRLoad를 대체했다고 생각합니다.

백도어 코드의 첫 번째 계층은 base64로 인코딩된 PowerShell 코드의 여러 청크로 구성됩니다. 페이로드가 재구성되면 다음을 통해 실행됩니다. IEX. 일단 디코딩되면 그림 3에서 볼 수 있는 난독화된 코드의 또 다른 레이어가 실행됩니다.

Worok: 큰 그림 PlatoBlockchain Data Intelligence. 수직 검색. 일체 포함.

그림 3. PowHeartBeat의 두 번째 계층의 디코딩된 주요 기능 발췌

백도어 첫 번째 base64의 두 번째 레이어는 코드의 다음 레이어를 디코딩한 다음 다음으로 해독됩니다. 트리플 DES (CBC 모드). 복호화 후 이 코드는 다음을 사용하여 압축이 해제됩니다. gzip을 알고리즘을 사용하여 실제 백도어인 PowerShell 코드의 세 번째 계층을 제공합니다. 구성과 백도어 명령 처리의 두 가지 주요 부분으로 나뉩니다.

백도어 코드의 주요 계층도 PowerShell로 작성되었으며 HTTP 또는 ICMP를 사용하여 C&C 서버와 통신합니다. 그림 4와 같이 작동합니다.

Worok: 큰 그림 PlatoBlockchain Data Intelligence. 수직 검색. 일체 포함.

그림 4. PowHeartBeat의 기능

구성

구성에는 버전 번호, 선택적 프록시 구성 및 C&C 주소를 비롯한 여러 필드가 포함됩니다. 표 1은 우리가 관찰한 다양한 버전에서 구성 필드의 의미를 설명합니다.

표 1. 구성 필드 의미

분야 명 상품 설명
코 / ikuyrtydyfg
(다른 샘플)
미사용.
클라이언트 ID 다음 목적으로 사용되는 클라이언트 식별자:
· 구성시 값으로 쿠키 헤더 씨앤씨커뮤니케이션을 위한
· 전송된 데이터 암호화를 위한 암호화 아티팩트로서.
버전 PowHeartBeat의 버전 번호입니다.
ExecTimes 발급 시 허용된 실행 시도 횟수 명령 실행 (명령 실행) 명령.
사용자 에이전트 C&C 통신에 사용되는 사용자 에이전트입니다.
리퍼러 리퍼러 C&C 통신에 사용되는 헤더입니다.
수락인코딩 미사용.
쿠키 클라이언트 ID
쿠키태스크 ID
쿠키터미널ID
구성에 사용된 값 쿠키 C&C 통신용 헤더.
URLHttps C&C 통신에 사용할 프로토콜입니다.
URL 도메인
IP 주소
도메인
C&C 서버로 사용되는 URL, 도메인 또는 IP 주소. 만약에 도메인 비어 있지 않고 대신 선택됩니다. IP 주소. 다른 경우에는 IP 주소 가져옵니다.
Url보내기심장박동 백도어가 C&C 서버에 명령을 요청할 때 사용되는 URL 경로입니다.
UrlSend 결과 백도어가 명령 결과를 C&C 서버로 다시 보낼 때 사용되는 URL 경로입니다.
GetUrl C&C 서버에서 명령을 요청하기 위해 PowHeartBeat에서 사용하는 전체 URL입니다. 위의 URL 요소를 연결한 것입니다.
PutUrl 과 동일 GetUrl 그러나 명령의 결과를 C&C 서버로 다시 보내는 데 사용됩니다.
현재 경로 미사용.
프록시 활성화 플래그 백도어가 C&C 서버와 통신하기 위해 프록시를 사용해야 하는지 여부를 나타내는 플래그입니다.
프록시 다음 경우에 사용할 프록시 주소 프록시 활성화 플래그$true.
간격 스크립트가 GET 요청 사이에 대기하는 시간(초)입니다.
기본 구성 경로 다음을 포함하는 선택적 구성 파일의 경로 가동 시간, 중단 시간, 기본 간격도메인. 파일이 있는 경우 해당 값이 무시됩니다.
가동 시간 백도어가 작동을 시작하는 시간, 즉 백도어가 C&C 서버에 GET 요청을 하기 시작함을 의미합니다.
중단 시간 백도어가 동작할 수 있는 시간으로, 백도어가 C&C 서버에 대한 요청을 중지하는 시간을 의미합니다.
도메인 인덱스 C&C 서버와의 통신에 사용할 현재 도메인 이름의 인덱스입니다. 요청이 다음과 다른 오류 메시지를 반환하는 경우 304 ("수정되지 않음"), 도메인 인덱스 증가합니다.
비밀키 구성을 해독/암호화하는 데 사용되는 키입니다. 구성은 다중 바이트 XOR로 암호화됩니다.
IfLog 미사용.
로그 파일 경로 로깅이 활성화되었는지 여부를 나타내는 플래그입니다.
로그 경로 로그 파일의 경로입니다.
프록시 파일 선택적 프록시 구성의 파일 경로입니다. 비어 있거나 파일 시스템에 없으면 백도어는 레지스트리 값에서 사용자의 프록시 설정을 검색합니다. HKCUSoftwareMicrosoftWindowsCurrentVersion인터넷 설정ProxyServer .
IfConfig 구성 파일을 사용할지 여부를 나타내는 플래그입니다.

그림 5는 PowHeartBeat 샘플(SHA-1: 757ABA12D04FD1167528FDD107A441D11CD8C427).

그림 5. 구성 예

데이터 암호화

PowHeartBeat는 로그 및 추가 구성 파일 콘텐츠를 암호화합니다.

로그 파일 내용은 샘플의 일반 텍스트로 지정된 키를 사용하여 다중 바이트 XOR을 통해 암호화됩니다. 재미있게, 클라이언트 ID 키 배열에 대한 인덱스의 솔트로 사용됩니다. 키는 256바이트 배열로, 우리가 만난 모든 샘플에서 동일했습니다. 추가 구성 파일 내용은 다음 값을 사용하여 다중 바이트 XOR을 통해 암호화됩니다. 비밀키 그것의 열쇠로.

씨앤씨커뮤니케이션즈

PowHeartBeat는 버전 2.4까지 C&C 통신에 HTTP를 사용하다가 ICMP로 전환했습니다. 두 경우 모두 통신이 암호화되지 않습니다.

HTTP

무한 루프에서 백도어는 C&C 서버에 GET 요청을 전송하여 실행할 명령을 요청합니다. 암호화된 답변은 명령을 처리하는 백도어에 의해 해독되고, 그 내용이 POST 요청을 통해 C&C 서버로 전송되는 파일에 명령 출력을 기록합니다.

GET 요청의 형식은 다음과 같습니다.

요청은 동명의 구성 필드를 사용하여 구성됩니다.

C&C 서버의 응답에서 내용의 세 번째 바이트는 백도어에서 처리할 명령을 나타내는 명령 식별자입니다. 우리는 그것을 부를 것이다 command_id. 응답의 나머지 내용은 처리되는 명령에 인수로 전달됩니다. 이 콘텐츠는 그림 6과 같은 알고리즘으로 암호화되며, 작업 ID 이름을 따서 명명된 쿠키의 값 쿠키태스크 ID구성에서 의 값입니다.

그림 6. 콘텐츠 데이터 암호화 알고리즘 요청

C&C 서버의 응답에는 백도어의 이름이 지정된 다른 쿠키도 포함되어 있습니다. 쿠키터미널ID 구성 변수. 이 쿠키의 값은 백도어의 POST 요청에서 반복되며 비어 있으면 안 됩니다. 백도어 명령을 실행한 후 PowHeartBeat는 결과를 POST 요청으로 C&C 서버에 보냅니다. 결과는 다음과 같은 이름의 파일로 전송됩니다. .png.

ICMP

PowHeartBeat 버전 2.4부터 HTTP는 ICMP로 대체되었으며 시간 제한이 XNUMX초인 패킷을 전송했으며 조각화되지 않은. ICMP를 통한 통신은 탐지를 회피하는 방법일 가능성이 큽니다.

버전 2.4 이상에서는 주요 변경 사항이 없지만 코드에서 몇 가지 수정 사항을 확인했습니다.

  • PowHeartBeat는 문자열을 포함하는 각 루프에서 하트비트 패킷을 보냅니다. ABCDEFGHIJKLMNOPQRSTU VWXYZ, 명령을 요청하기 전에. 이것은 백도어가 명령을 받을 준비가 되었음을 C&C 서버에 알립니다.
  • 백도어가 수행하는 명령을 가져오기 위한 요청에는 문자열이 포함됩니다. abcdefghijklmnop.

하트비트 패킷은 그림 7에 설명된 형식을 갖습니다.

Worok: 큰 그림 PlatoBlockchain Data Intelligence. 수직 검색. 일체 포함.

그림 7. 하트비트 패킷 레이아웃

차이점 클라이언트 ID 클라이언트 플래그 그는 클라이언트 ID 샘플마다 다르지만 클라이언트 플래그 ICMP를 사용하는 모든 샘플에서 동일합니다. 하트 비트 플래그 백도어가 하트비트를 보내고 있음을 나타냅니다. C&C 서버의 응답은 그림 8에 설명된 형식을 갖습니다.

Worok: 큰 그림 PlatoBlockchain Data Intelligence. 수직 검색. 일체 포함.

그림 8. C&C 서버 응답 레이아웃

플래그 여기에 백도어에 대한 명령이 있는지 여부를 나타냅니다. 명령을 가져오기 위한 요청은 그림 9에 설명된 형식을 갖습니다.

Worok: 큰 그림 PlatoBlockchain Data Intelligence. 수직 검색. 일체 포함.

그림 9. 명령 가져오기 요청 레이아웃

백도어의 ICMP 모드는 덩어리로 나누어진 데이터의 무제한 수신을 허용하고 변수 데이터 길이, 현재 위치총계 길이 전송된 데이터를 추적하는 데 사용됩니다. 이러한 요청에 대한 응답은 그림 10에 설명된 형식을 따릅니다.

Worok: 큰 그림 PlatoBlockchain Data Intelligence. 수직 검색. 일체 포함.

그림 10. 명령 받기 요청에 대한 응답 레이아웃

HTTP 응답에서와 같이 명령 식별자는 다음의 세 번째 바이트입니다. 데이터.

비어 있거나 형식이 일치하지 않는 콘텐츠로 XNUMX회 연속 ICMP 응답이 있으면 백도어와 C&C 서버 간의 전송이 완료된 것으로 간주됩니다.

C&C 서버에 실행된 명령의 결과를 보내달라는 요청은 서버 모드를 포스트 모드로 변경하고 마지막 문자열(abcdefghijklmnop) 결과 데이터에 대해 변경됩니다.

백도어 명령

PowHeartBeat에는 명령/프로세스 실행 및 파일 조작을 비롯한 다양한 기능이 있습니다. 표 2는 다양한 분석 샘플에서 지원하는 모든 명령을 나열합니다.

표 2. PowHeartBeat 명령 설명

성함 명령 식별자 상품 설명
cmd를 0 X 02 PowerShell 명령을 실행합니다.
exe를 0 X 04 다음과 같이 명령을 실행하십시오. 방법.
파일 업로드 0 X 06 피해자 시스템에 파일을 업로드합니다. 파일 내용은 gzip으로 압축되어 있습니다.
파일 다운로드 0 X 08 피해자 시스템에서 파일을 다운로드하고 파일 경로, 파일 길이, 생성 시간, 액세스 시간 및 파일 내용을 C&C 서버로 반환합니다.
파일 보기 0x0A 특히 다음과 같은 특정 디렉토리의 파일 정보를 가져옵니다.
· 파일 이름
· 파일 속성
· 마지막 쓰기 시간
· 파일 내용
파일삭제 0x0C 파일을 삭제합니다.
파일이름바꾸기 0x0E 파일 이름을 바꾸거나 이동합니다.
변경 디렉터리 0 X 10 백도어의 현재 작업 위치를 변경합니다.
정보 0 X 12 지정된 인수에 따라 정보 범주를 가져옵니다.
· "기본 정보": 클라이언트 ID, 버전, 호스트 이름, IP 주소, Explorer.exe에서 버전 및 크기 정보, OS(시스템이 서버인지 여부를 나타내는 아키텍처 및 플래그), 간격, 현재 디렉토리, 드라이브 정보(이름, 유형, 여유 공간 및 총 크기), 현재 시간
· "시간 간격 정보": 간격 현재 시간
· “도메인 정보”: 복호화된 구성 파일 내용
구성 0 X 14 구성 파일 컨텐츠를 업데이트하고 구성을 다시 로드하십시오.
해당 사항 없음 0 X 63 백도어 출구.

백도어 측에서 오류가 발생한 경우 백도어는 C&C 서버에 대한 POST 요청에서 특정 명령 식별자 0x00을 사용하여 오류가 발생했음을 나타냅니다.

정보를 C&C 서버로 다시 보내기 전에 데이터는 gzip으로 압축됩니다.

PNGLoad: 스테가노그래픽 로더

PNGLoad는 Worok이 손상된 시스템에 배포한 64단계 페이로드이며 ESET 원격 분석에 따르면 CLRLoad 또는 PowHeartBeat에 의해 로드됩니다. PowHeartBeat에는 PNGLoad를 직접 로드하는 코드가 없지만 백도어는 C&C 서버에서 추가 페이로드를 다운로드하고 실행할 수 있는 기능이 있습니다. 이는 공격자가 PowHeartBeat로 손상된 시스템에 PNGLoad를 배포한 방법일 수 있습니다. PNGLoad는 PNG 파일의 바이트를 사용하여 실행할 페이로드를 생성하는 로더입니다. XNUMX비트 .NET 실행 파일입니다. .NET 반응기 – 합법적인 소프트웨어로 가장합니다. 예를 들어, 그림 11은 WinRAR DLL로 가장한 샘플의 CLR 헤더를 보여줍니다.

Worok: 큰 그림 PlatoBlockchain Data Intelligence. 수직 검색. 일체 포함.

그림 11. 가짜 WinRAR DLL의 예

난독 해제되면 클래스는 하나만 존재합니다. 이 수업에는 주 경로 하위 디렉토리를 포함하여 백도어가 검색하는 디렉토리 경로를 포함하는 속성 .PNG 그림 12와 같이 확장자입니다.

Worok: 큰 그림 PlatoBlockchain Data Intelligence. 수직 검색. 일체 포함.

그림 12. .PNG 파일 목록

각각의 .PNG 이 검색으로 찾은 파일 주 경로 그런 다음 스테가노그래피로 포함된 콘텐츠가 있는지 확인합니다. 먼저 각 픽셀의 R(빨간색), G(녹색), B(파란색) 및 A(알파) 값의 최하위 비트를 가져와 버퍼에 조합합니다. 해당 버퍼의 처음 13바이트가 그림 XNUMX에 표시된 매직 넘버와 일치하고 다음 XNUMX바이트 값인 control이 null이 아닌 경우 파일은 PNGLoad의 스테가노그래피 콘텐츠 검사를 통과합니다. 이러한 파일의 경우 PNGLoad에 저장된 키를 사용하여 다중 바이트 XOR로 해독된 버퍼의 나머지 부분으로 처리가 계속됩니다. 비밀키바이트 속성, 그리고 해독된 버퍼는 gzip 압축 해제됩니다. 결과는 즉시 실행되는 PowerShell 스크립트가 될 것으로 예상됩니다.

Worok: 큰 그림 PlatoBlockchain Data Intelligence. 수직 검색. 일체 포함.

그림 13. 처리에서 PNGLoad가 생성하는 버퍼의 형식 .PNG 파일

흥미롭게도 PNGLoad에 의해 수행된 작업은 경로가 변수에 저장된 파일에 기록됩니다. 로그 파일 경로. 내부 변수에 의해 경로가 지정된 파일이 있는 경우에만 작업이 기록됩니다. 로그 파일 경로.

우리는 샘플을 얻을 수 없습니다 .PNG 파일은 PNGLoad와 함께 사용되지만 PNGLoad가 작동하는 방식은 유효한 PNG 파일과 함께 작동해야 한다고 제안합니다. 악성 페이로드를 숨기기 위해 Worok은 파일 메타데이터가 아닌 파일에서 픽셀 정보만 가져오는 C#의 Bitmap 개체를 사용합니다. 즉, Worok은 악의적인 페이로드를 유효하고 무해해 보이는 PNG 이미지에 숨길 수 있으므로 눈에 잘 띄지 않게 숨길 수 있습니다.

결론

Worok은 자체 도구를 개발하고 기존 도구를 활용하여 대상을 손상시키는 사이버 스파이 그룹입니다. 피해자로부터 정보를 훔치는 것은 사업자가 아시아와 아프리카의 유명 기관에 초점을 맞추고 민간 및 공공의 다양한 부문을 대상으로 하지만 특히 정부 기관에 중점을 두고 있기 때문에 우리가 생각하는 바입니다. 활동 시간과 도구 세트는 TA428과의 가능한 연관성을 나타내지만 우리는 이 평가를 낮은 신뢰도로 합니다. 그들의 사용자 지정 도구 세트에는 C++ 및 C# .NET에 각각 하나씩 두 개의 로더와 하나의 PowerShell 백도어가 포함되어 있습니다. 가시성이 제한되어 있지만 이 그룹에 대한 정보를 제공함으로써 다른 연구자들이 이 그룹에 대한 정보를 공유할 수 있기를 바랍니다.

WeLiveSecurity에 게시된 연구에 대한 문의 사항은 다음으로 문의하십시오. Threatintel@eset.com.

ESET Research는 이제 비공개 APT 인텔리전스 보고서 및 데이터 피드도 제공합니다. 이 서비스에 대한 문의 사항은 다음을 방문하십시오. ESET 위협 인텔리전스 페이지.

IOC

파일

SHA-1 파일 이름 ESET 탐지 이름 Comment
3A47185D0735CDECF4C7C2299EB18401BFB328D5 스크립트 파워셸/PowHeartBeat.B 파우하트비트 2.4.3.0003.
27ABB54A858AD1C1FF2863913BDA698D184E180D 스크립트 파워셸/PowHeartBeat.A 파우하트비트 2.4.3.0003.
678A131A9E932B9436241402D9727AA7D06A87E3 스크립트 파워셸/PowHeartBeat.B 파우하트비트 2.4.3.0003.
757ABA12D04FD1167528FDD107A441D11CD8C427 스크립트 파워셸/PowHeartBeat.B 파우하트비트 2.1.3.0003.
54700A48D934676FC698675B4CA5F712C0373188 스크립트 파워셸/PowHeartBeat.A 파우하트비트 1.1.3.0002.
C2F53C138CB1B87D8FC9253A7088DB30B25389AF 스크립트 파워셸/PowHeartBeat.A 파우하트비트 1.1.3.0002.
C2F1954DE11F72A46A4E823DE767210A3743B205 tmp.ps1 파워셸/PowHeartBeat.B 파우하트비트 2.4.3.0004.
CE430A27DF87A6952D732B4562A7C23BEF4602D1 tmp.ps1 파워셸/PowHeartBeat.A 파우하트비트 2.1.3.0004.
EDE5AB2B94BA85F28D5EE22656958E4ECD77B6FF 스크립트 파워셸/PowHeartBeat.A 파우하트비트 2.4.3.0003.
4721EEBA13535D1EE98654EFCE6B43B778F13126 vix64.dll MSIL/PNGLoader.A PNG로더.
728A6CB7A150141B4250659CF853F39BFDB7A46C RarExtMgt.dll MSIL/PNGLoader.A PNG로더.
864E55749D28036704B6EA66555A86527E02AF4A jsprofile.dll MSIL/PNGLoader.A PNG로더.
8DA6387F30C584B5FD3694A99EC066784209CA4C vssxml.dll MSIL/PNGLoader.A PNG로더.
AA60FB4293530FBFF00D200C0D44EEB1A17B1C76 xsec_1_5.dll MSIL/PNGLoader.A PNG로더.
B2EAEC695DD8BB518C7E24C4F37A08344D6975BE msvbvm80.dll MSIL/PNGLoader.A PNG로더.
CDB6B1CAFEE098615508F107814179DEAED1EBCF Lucenelib.dll MSIL/PNGLoader.A PNG로더.
4F9A43E6CF37FF20AE96E564C93898FDA6787F7D vsstrace.dll Win64/CLRLoad.C CLR로드.
F181E87B0CD6AA4575FD51B9F868CA7B27240610 ncrypt.dll Win32/CLRLoad.A CLR로드.
4CCF0386BDE80C339EFE0CC734CB497E0B08049C ncrypt.dll Win32/CLRLoad.A CLR로드.
5CFC0D776AF023DCFE8EDED5CADA03C6D7F9C244 wlbsctrl.dll Win64/CLRLoad.E CLR로드.
05F19EBF6D46576144276090CC113C6AB8CCEC08 wlbsctrl.dll Win32/CLRLoad.A CLR로드.
A5D548543D3C3037DA67DC0DA47214B2C2B15864 secure32.dll Win64/CLRLoad.H CLR로드.
CBF42DCAF579AF7E6055237E524C0F30507090F3 dbghelp.dll Win64/CLRLoad.C CLR로드.

파일 경로

의 일부 주 경로, 로그 파일 경로로그 파일 경로 PNGLoad 샘플에서 만난 값:

주 경로 로그 파일 경로 로그 파일 경로
C:프로그램 파일VMwareVMware 도구 C:프로그램 파일VMwareVMware ToolsVMware VGAuthreadme.txt C:프로그램 파일VMwareVMware ToolsVMware VGAuthVMWSU_V1_1.dll
C:프로그램 파일WinRar C:프로그램 파일WinRarrarinstall.log C:프로그램 파일WinRardes.dat
C:프로그램 파일UltraViewer C:프로그램 파일UltraViewer‌CopyRights.dat C:프로그램 파일UltraVieweruvcr.dll

네트워크

도메인 IP
없음 118.193.78[.]22
없음 118.193.78[.]57
plane.travel-commercials[.]에이전시 5.183.101[.]9
Central.suhypercloud[.]org 45.77.36[.]243

뮤텍스

CLRLoad 샘플에서 만난 뮤텍스 이름은 다음과 같습니다.

aB82우두GX0EX
ad8TbUIZl5Ga
Mr2PJVxbIBD4
oERiQtKLgPgK
U37uxsCsA4Xm
Wo0r0KGWhYGO
xBUjQR2vxYTz
zYCLBWekRX3t
3c3401ad-e77d-4142-8db5-8eb5483d7e41
9xvzMsaWqx내

침해 지표(IoC) 및 샘플의 전체 목록은 다음에서 찾을 수 있습니다. 우리의 GitHub 저장소.

MITRE ATT&CK 기술

이 테이블은 다음을 사용하여 제작되었습니다. 버전 11 MITRE ATT&CK 프레임워크.

술책 ID 성함 상품 설명
정찰 T1592.002 피해자 호스트 정보 수집: 소프트웨어 PowHeartBeat 수집 Explorer.exe의 정보.
T1592.001 피해자 호스트 정보 수집: 하드웨어 PowHeartBeat는 드라이브에 대한 정보를 수집합니다.
T1590.005 피해자 네트워크 정보 수집: IP 주소 PowHeartBeat는 손상된 컴퓨터의 IP 주소를 수집합니다.
자원 개발 T1583.004 인프라 확보: 서버 워록은 자체 C&C 서버를 사용합니다.
T1588.002 능력 획득: 도구 Worok은 손상된 시스템에 공개적으로 사용 가능한 여러 도구를 배포했습니다.
T1583.001 인프라 획득: 도메인 Worok은 C&C 통신 및 스테이징을 용이하게 하기 위해 도메인을 등록했습니다.
T1588.005 능력 획득: 활용 Worok은 ProxyShell 취약점을 사용했습니다.
T1587.001 기능 개발: 맬웨어 Worok은 자체 악성코드인 CLRLoad, PNGLoad, PowHeartBeat를 개발했습니다.
T1587.003 역량 개발: 디지털 인증서 Worok은 맬웨어에 대한 상호 TLS 인증을 활성화하기 위해 Let's Encrypt SSL 인증서를 만들었습니다.
실행 T1059.001 명령 및 스크립팅 인터프리터: PowerShell PowHeartBeat는 PowerShell로 작성되었습니다.
고집 T1505.003 서버 소프트웨어 구성 요소: 웹 셸 Worok은 웹쉘을 사용합니다. 레게오르그.
방어 회피 T1140 파일 또는 정보의 난독화/디코드 Worok은 다양한 사용자 지정 XOR 기반 체계를 사용하여 PowHeartBeat, PNGLoad 및 CLRLoad에서 문자열과 로그를 암호화합니다.
T1036.005 가장 무도회: 적법한 이름 또는 위치 일치 PNGLoad 샘플은 합법적으로 보이는 VMWare 디렉토리에 배포됩니다.
자격 증명 액세스 T1003.001 OS 자격 증명 덤프: LSASS 메모리 Worok은 Mimikatz를 사용하여 LSASS 메모리에서 자격 증명을 덤프합니다.
발견 T1082 시스템 정보 검색 PowHeartBeat는 OS 정보를 수집합니다.
T1083 파일 및 디렉토리 검색 PowHeartBeat는 파일과 디렉토리를 나열할 수 있습니다.
T1046 네트워크 서비스 검색 워록 사용 Nbt스캔 손상된 시스템에 대한 네트워크 정보를 얻습니다.
T1124 시스템 시간 검색 PowHeartBeat는 피해자의 시간 정보를 수집합니다.
수집 T1005 로컬 시스템의 데이터 PowHeartBeat는 로컬 시스템에서 데이터를 수집합니다.
T1560.002 수집된 데이터 보관: 라이브러리를 통한 보관 PowHeartBeat gzip은 데이터를 C&C 서버로 보내기 전에 압축합니다.
명령 및 제어 T1071.001 애플리케이션 계층 프로토콜: 웹 프로토콜 일부 PowHeartBeat 변종은 HTTP를 C&C 서버와의 통신 프로토콜로 사용합니다.
T1090.001 프록시: 내부 프록시 PowHeartBeat는 피해자의 시스템에서 프록시 구성을 처리합니다.
T1001.002 데이터 난독화: 스테가노그래피 PNGLoad는 다음에서 픽셀 값을 추출합니다. .PNG 페이로드를 재구성하기 위한 파일.
T1573.002 암호화된 채널: 비대칭 암호화 PowHeartBeat는 C&C 서버와의 HTTPS 통신을 처리합니다.
T1095 비응용 계층 프로토콜 일부 PowHeartBeat 변종은 ICMP를 C&C 서버와의 통신 프로토콜로 사용합니다.
T1132.001 데이터 인코딩: 표준 인코딩 Worok은 PowHeartBeat 및 PNGLoad에서 XOR 인코딩을 사용합니다.
T1132.002 데이터 인코딩: 비표준 인코딩 Worok은 추가 소금을 사용하는 XOR 인코딩 알고리즘을 사용합니다.
여과 T1041 C2 채널을 통한 유출 PowHeartBeat는 C&C 통신 채널을 사용하여 정보를 추출합니다.

Worok: 큰 그림 PlatoBlockchain Data Intelligence. 수직 검색. 일체 포함.

타임 스탬프 :

더보기 우리는 보안을 산다