>
연구(Insikt)

뱀의 꼬리 삼키기: 거북이 인프라 추적하기

insikt-group-logo-updated-2.png

전체 분석 내용을 PDF로 다운로드하려면 여기를 클릭하세요.

레코디드 퓨처의 인식트 그룹(® )은 최근 Turla 활동에 대한 심층 조사의 일환으로 Turla 멀웨어 및 인프라에 대한 새로운 탐지 방법을 개발했습니다. 데이터 소스에는 Recorded Future® 플랫폼, ReversingLabs, VirusTotal, Shodan, BinaryEdge 및 다양한 OSINT 도구가 포함되었습니다. 이 연구의 대상에는 러시아 국가 컴퓨터 네트워크 운영 활동에 관심이 있는 보안 실무자, 네트워크 방어자, 위협 인텔리전스 전문가가 포함됩니다.

Executive Summary

, 물방개, 독곰으로도 알려진 Turla는 10년 넘게 전 세계의 연구, 외교, 군사 조직을 대상으로 작전을 수행해 왔으며, 특히 북대서양조약기구(NATO) 및 독립국가연합(CIS) 국가에 속한 조직에 지속적으로 집중하고 있는 정교하고 전략적인 사이버 스파이 그룹입니다.

많은 국가적 위협 행위자 그룹이 운영을 위해 오픈 소스 및 상용 소프트웨어에 점점 더 의존하고 있지만, Turla는 고유한 고급 멀웨어 및 도구를 지속적으로 개발하고 새로운 공격 및 난독화 방법을 채택하고 있습니다. 이러한 TTP를 이전 기술 및 일반적인 오픈 소스 도구와 함께 사용합니다. 이러한 이유로 인싯트 그룹은 Turla 그룹이 앞으로도 계속해서 독특한 운영 컨셉으로 놀라움을 선사하는 활동적인 지능형 위협으로 남을 것이라고 평가합니다.

그러나 이 그룹의 일관된 패턴과 장기간의 캠페인에서 안정적이고 주기적으로 업데이트되는 고유한 멀웨어 버전을 사용하면 방어자가 Turla의 인프라와 활동을 선제적으로 추적하고 식별할 수 있습니다. 이 연구는 Turla의 운영 이력을 조사하고 현재 Turla가 사용하고 있는 인프라를 식별하는 방법론을 제공하며, 몇 가지 Turla 관련 멀웨어 유형에 중점을 두고 있습니다. 이 보고서에서는 복합 Mosquito 백도어와 하이재킹된 이란의 TwoFace ASPX 웹 셸 등 두 가지에 대해 자세히 설명합니다.

레코디드 퓨처는 고객에게 추가 Turla 관련 멀웨어 제품군에 대한 추가 연구 및 탐지에 대한 자세한 보고서를 제공했으며, 이는 레코디드 퓨처 플랫폼에서 확인할 수 있습니다.

주요 판단

  • Turla Group은 멀웨어 및 C2 통신의 고유한 특징을 기반으로 추적할 수 있습니다. 또한, Turla는 탐지 및 혼란스러운 어트리뷰션 시도를 피하기 위해 오픈 소스 도구를 사용하며, 소스 코드를 분석 및 테스트에 쉽게 사용할 수 있기 때문에 연구자들이 신속하게 탐지 기능을 분석하고 구축할 수 있습니다.

  • 2019년 6월, Turla 그룹은 이란의 위협 그룹인 APT34의 컴퓨터 네트워크 운영 인프라에 침투한 것으로 밝혀졌습니다. 이는 다른 국가의 국가 행위자가 한 국가 집단의 컴퓨터 네트워크 운영을 효과적으로 장악한 것으로, 전례 없는 일이었습니다. 인식트 그룹은 투라 그룹의 APT34 인프라 사용은 주로 기회주의적인 성격이 강하며 이란과 러시아 조직 간에 조율된 것이 아니라고 평가합니다.

  • 레코디드 퓨처는 NSA/NCSC 보고서에 기록된 대로 투페이스가 투라가 추가 호스트로 전환하기 위해 스캔한 이란 APT34 ASPX 셸을 높은 신뢰도로 평가하고 있습니다. 2020년 1월 말 현재 살아있는 투페이스 셸도 Turla 그룹의 잠재적인 운영 자산이 될 수 있다고 평가합니다.

  • 2019년부터 Turla는 멀웨어 설치를 위해 PowerShell 스크립트에 크게 의존하기 시작했습니다. 이전에는 이메일 서버뿐만 아니라 Microsoft 취약점도 집중적으로 공격했습니다. 또한 Turla는 종종 손상된 WordPress 웹사이트를 C2 인프라의 기반으로 사용합니다.

  • 저희가 연구한 멀웨어 중 Turla는 주로 명령 및 제어(C2) 통신에 HTTP/S를 사용합니다.

배경

Turla는 2008년부터 미 국방부를 대상으로 한 작전을 수행했으며, 현재까지도 북대서양조약기구 국가들을 표적으로 삼고 있습니다. Turla의 주요 표적은 출판 및 미디어 회사, 대학/학계, 정부 기관 등이며, 특히 과학 및 에너지 연구, 원격 및 지역 외교 업무, 군사 데이터를 노리는 경우가 많습니다. Turla는 유럽 및 CIS 국가를 적극적으로 공략하고 있으며, 주로 외교부나 국방부, 그리고 이와 유사한 정부 기관 및 관련 연구 기관에 집중하고 있습니다.

Turla는 워터링 홀 공격(방문자를 표적으로 삼아 웹사이트를 손상시키는 공격)과 특정 관심 대상을 정밀하게 공격하는 스피어 피싱 캠페인을 사용하는 것으로 유명합니다. 또한 Turla는 북아프리카와 중동의 외딴 지역에서 데이터를 빼내기 위해 위성을 사용하는 등 창의적이고 독창적인 기술을 사용했습니다. 이 그룹은 미터프리터, 미미카츠와 같은 오픈 소스 소프트웨어의 변경되지 않은 버전과 맞춤형 버전을 모두 사용하는 것으로 유명하며, Gazer, 아이스커피, 카본, 모스키토와 같은 맞춤형 멀웨어를 사용하는 것으로도 유명합니다.

또한, Turla 운영자는 목적을 달성하기 위해 타사 인프라를 징발하거나 허위 깃발을 사용하기도 합니다. 많은 경우 이 그룹은 손상된 웹사이트(일반적으로 워드프레스 사이트)를 감염 매개체이자 C2 통신을 위한 운영 인프라로 사용했습니다.

2019년 6월, 시만텍 연구원들에 의해 이란 위협 그룹인 APT34의 컴퓨터 네트워크 운영 인프라에 침투하여 이란의 운영 정보를 수집 및 유출하는 동시에 이란의 활동 중인 피해자들에게 접근한 것으로 확인된 Turla의 정체가 밝혀졌습니다.

Turla의 이란 APT34 하이재킹 작업은 최소 35개국의 IP 주소에서 특정 웹 셸을 검색하기 위해 기존 APT34 피해 네트워크를 사용하여 웹 셸을 스캔하고 발견하는 방식으로 이루어졌습니다. 일단 식별되면, Turla는 이러한 셸을 사용하여 관심 있는 피해자에 대한 초기 발판을 마련한 다음 추가 도구를 배포했습니다.

2015년에 처음 관찰된 TwoFace는 APT34의 주요 웹 셸이며, Recorded Future는 투라가 추가 호스트로 피봇하기 위해 스캔한 셸이 TwoFace라고 높은 신뢰도로 평가합니다. 2020년 1월 말 현재 살아있는 투페이스 셸도 Turla 그룹의 잠재적인 운영 자산이 될 수 있다고 평가합니다.

또한 Turla는 자체 인프라에서 APT34 포이즌 프로그 툴의 C2 패널에 직접 액세스하고 이 액세스 권한을 사용하여 피해자에게 Turla 툴을 다운로드하도록 작업했습니다.

위협 분석

지금까지 알려진 위협 행위자 중 이란의 컴퓨터 네트워크 운영 리소스를 탈취한 사례는 투라 그룹이 유일하며, 이는 다른 국가의 국가 행위자가 국가 그룹의 컴퓨터 네트워크 운영을 효과적으로 탈취한 사례에 해당합니다.

이란과 러시아 조직이 어떤 식으로든 협력했을 가능성은 있지만, 인식트 그룹이 확보한 증거는 이 가설을 뒷받침하지 못합니다. 예를 들어, Turla는 APT34 툴과 운영에 대한 상당한 인사이트를 가지고 있었지만 이러한 툴이 배포된 위치를 찾기 위해 이란 웹 셸을 스캔해야 했습니다. 우리는 투라의 이란 작전 개입이 조율되지 않은, 따라서 적대적인 행위일 가능성이 높다고 평가합니다.

인싯트 그룹은 투라 그룹이 APT34 인프라를 사용한 것은 주로 기회주의적인 목적이었지만, 운영자들에게 추가적인 이득을 가져다준 것은 이란의 소행으로 밝혀질 수 있는 사고 대응자들을 속인 것일 수 있다고 평가합니다. Turla는 이란 툴을 사용하기 전에 다른 위협 공격자들의 멀웨어를 재사용한 적이 있으며, 2012년에는 중국 어트리뷰션의 Quarian 멀웨어를 사용하기도 했습니다. 이 사례에서 카스퍼스키 연구원들은 Turla 공격자가 발견 후 사고 대응자를 속이기 위해 Quarian 멀웨어를 다운로드한 후 제거한 것으로 평가했습니다.

Turla는 대담한 이란 사업 외에도 다른 운영 및 개발 활동을 동시에 수행해 왔습니다. 2019년부터 Turla는 디스크에서 악성 파일이 발견되는 것을 피하기 위한 노력의 일환으로 PowerShell 스크립트를 많이 사용하기 시작했습니다. 한 해 동안 PowerSploit과 PowerShell Empire를 사용하고 자체 Powershell 백도어인 PowerStallion을 개발하는 등 PowerShell 스크립트 사용을 늘리고 있습니다.

Turla는 주로 Microsoft Windows 운영 체제를 공격하지만, 의도적으로 이메일 서버를 악용하기도 합니다. LightNeuron 백도어는 Microsoft Exchange 메일 서버에서 작동하도록 특별히 설계되었으며, Outlook 백도어는 Exchange 및 The Bat! (동유럽에서 인기 있는) 이메일 서버에서 작동하도록 설계되었습니다. 손상된 메일 서버는 이메일 모니터링뿐만 아니라 이메일 생성, 전송, 차단 기능을 포함하여 대상 네트워크의 이메일 트래픽을 Turla가 제어할 수 있게 해줍니다.

Turla는 손상된 워드프레스 사이트를 C2로 사용합니다. 또한 2014년부터, 어쩌면 그 이전부터 페이로드 전송에 워드프레스 중심의 URL 이름을 정기적으로 사용해 왔습니다. 이러한 경향을 통해 C2 및 페이로드 URL을 프로파일링하여 새로운 Turla 인프라를 발견할 수 있습니다.

Turla 운영은 다양한 맞춤형 멀웨어와 연관되어 있습니다. 인식트 그룹은 2019년 12월부터 2020년 1월까지 활동 중인 Turla 관련 인프라를 탐지하기 위한 검사 규칙을 만들기 위해 이러한 멀웨어 유형에 대한 심층 분석을 수행했습니다.

Turla 고급 탐지 분석

분석의 초점은 Turla 관련 멀웨어 유형에 초점을 맞춘 Turla 식별 방법을 개발하는 것이었습니다. 이 보고서에서는 복합 Mosquito 백도어와 하이재킹된 이란 투페이스 웹 셸에 대한 자세한 분석 내용을 제공합니다.

모기 컨트롤러 탐지

2018년 1월, ESET은 침입 분석 중에 Turla가 사용하는 것을 관찰한 Mosquito라는 새로운 백도어에 대해 보고했습니다. 모스키토의 배송 및 설치에는 다음과 같은 여러 구성 요소가 있었습니다:

  • 트로이 목마 Adobe 설치 프로그램 사용

  • 메타스플로잇 셸코드를 사용하여 합법적인 어도비 플래시 인스톨러 사본과 미터프리터 사본을 다운로드하여 모스키토 인스톨러를 다운로드 및 설치할 수 있도록 합니다.

  • 암호화된 페이로드가 포함된 설치 관리자

  • 기본 백도어인 "Commander"를 실행하는 런처

Mosquito는 Win32 원격 액세스 트로이 목마(RAT)입니다. 이 멀웨어에는 설치 프로그램, 런처, CommanderDLL이라고도 하는 백도어 구성 요소의 세 가지 주요 구성 요소가 포함되어 있습니다. 모스키토 멀웨어는 메타스플로잇 셸코드를 처음 사용하고 피해자를 제어하기 위해 미터프리터를 설치한 후 드롭되었습니다. 다음과 같은 기능이 있습니다:

  • 파일 다운로드

  • 프로세스 생성

  • 파일 삭제

  • 파일 업로드

  • 셸 명령 실행

  • PowerShell 명령 실행

  • C2 서버 추가

  • C2 서버 삭제

커맨더는 모스키토 백도어의 주요 구성 요소입니다. 이 연구에서는 주로 사령관의 C2 통신에 초점을 맞춰 분석했습니다. Mosquito 패키지의 다른 측면에 대한 자세한 내용은 ESET의 연구원들이 철저한 분석을 수행했습니다.

ESET이 Commander에서 C2로의 통신을 분석한 결과, 컨트롤러와 주고받는 통신은 HTTP 또는 HTTPS를 통해 전송되는 것으로 나타났습니다. 클라이언트 측에서는 데이터를 GET 요청의 매개변수, 쿠키 또는 POST의 매개변수 및 페이로드로 전송할 수 있습니다(아래 이미지 참조). 컨트롤러 측에서는 응답과 명령이 HTTP 페이로드로 전송됩니다.

turla-apt-인프라-1-1.png

POST 매개변수 및 페이로드로 전송된 암호화된 데이터가 포함된 Mosquito "Commander" 백도어의 비콘입니다.

위와 같이 컨트롤러로 전송되는 데이터는 일반 텍스트가 아닙니다. 먼저 블룸 블룸 슈브 의사 난수 생성기를 사용하여 클리어 텍스트 데이터를 XOR 인코딩하는 데 사용되는 바이트 스트림을 생성하는 암호화 루틴으로 보호됩니다. 그런 다음 결과 데이터는 Base64로 인코딩됩니다.

암호화 또는 복호화하려면 암호화 프로세스에서 키와 모듈러스가 필요합니다. ESET이 보고한 바와 같이, 그리고 Insikt Group이 분석 중에 관찰한 바와 같이, "0x7DFDC101"의 모듈러스는 하드코딩되어 있습니다. 키는 하드코딩되지 않으며 클라이언트와 컨트롤러 간에 교환할 때마다 무작위로 생성되므로 전송할 때마다 키가 달라집니다. 이 무작위 키는 C2 통신의 일부로 전송되며 쉽게 추출할 수 있습니다. 인식트 그룹 분석가들이 이 의사 난수 생성기 구현을 뒤집어 Python으로 디코더 스크립트를 만들었으며, 이 스크립트는 GitHub 리포지토리에서 확인할 수 있습니다.

ESET의 미러링 분석을 통해 Insikt Group은 전송되는 데이터에 헤더 정보가 추가되어 있음을 발견했습니다. 해독된 헤더는 다음 필드로 구성됩니다:

필드 길이 설명
시작 키 DWORD 데이터 암호 해독에 사용되는 시작 키
ID BYTE C2 통신에 사용되는 다양한 방법을 나타내는 값입니다. 사용 가능한 ID는 0x85(가능한 사용자 정의 헤더가 있는 HTTP Get), 0x87(HTTP POST 전송), 0x88(쿠키가 있는 HTTP GET), 0x89(HTTP GET)입니다.
문자열 길이 BYTE 문자열 필드 길이
문자열 변수 1-4 바이트 ASCII 십진수 표현을 나타내는 두 개의 16진수 바이트열입니다. 0x37,0x32 (HEX) == 72 (십진수) == H (ASCI)I
MAC 주소 QWORD 호스트의 MAC 주소
NULL DWORD
데이터 길이 DWORD URL 내 데이터 세그먼트의 길이
데이터(URL) 변수 28바이트 헤더와 데이터로 구성되며, 데이터는 하드코딩된 키 0x3EB13을 사용하여 암호화된 블룸 블룸 슈브(Blum Blum Shub)입니다. 데이터가 POST로 전송될 때 이 필드에 정크 값이 포함되어 있는 것을 관찰했습니다.
데이터(POST) 변수 POST로 전송된 데이터에는 URL 방식과 같은 헤더가 포함되지 않으며, URL 방식과 마찬가지로 데이터는 하드코딩된 키 0x3EB13을 사용하여 Blum Blum Shub로 암호화됩니다.

모기 사령관 헤더 정보를 해독했습니다.

Commander 백도어를 추가로 분석한 결과, 컨트롤러에서 예상되는 응답은 페이로드가 Base64로 인코딩된 후 C2 비콘 패킷과 동일한 방식으로 암호화된 HTTP/S 패킷인 것으로 나타났습니다. 응답이 성공적으로 디코딩되면 첫 번째 바이트를 확인하고 28과 같으면 나머지 데이터 바이트가 구문 분석됩니다. 첫 바이트가 0x27과 같으면 C2 응답에서 다른 작업은 수행되지 않습니다.

turla-apt-인프라-2-1.png

모스키토 커맨더 C2 응답 처리 코드.

커맨더 패시브 스캔

수동 스캔은 urlscan.io와 같은 오픈 소스 도구와 Insikt Group에서 개발한 독점적인 스캔 방법론을 사용하여 손상된 호스트가 컨트롤러로 비콘을 보내는 증거를 찾습니다. 쿼리는 아래 링크에 표시된 것처럼 GET 또는 POST 리소스 문자열 "/scripts/m/query.php?id="의 정적 측면을 검색합니다:

이 쿼리를 사용한 최근 결과의 예는 다음과 같습니다:

  • 204.193.62.62/scripts/m/query.php?id=eQV0AKBGOorB%2FsB6ZkIU0e%2BKQO...

  • 204.193.62.62/scripts/m/query.php?id=eQV0AKBGOorB/sB6ZkIU0e+KQOWiwulq...

  • 77.232.99.77/scripts/m/query.php?id=eQV0AKBGOorB%2FsB6ZkIU0e%2BKQ...

위의 URL은 일반적인 Mosquito URL 패턴과 완벽하게 일치합니다. 위에서 언급한 Python 디코더 스크립트를 사용하여 URL의 암호화된 부분인 "eQV0AKBGOorB%2FsB6ZkIU0e%2BKQO..."를 디코딩해 볼 수 있습니다. 스크립트의 결과는 아래와 같습니다.

turla-apt-인프라-3-1.png

해독된 urlscan.io Commander URL 문자열입니다.

디코딩 스크립트를 실행한 후 침해된 디바이스의 ID, 문자열 값, MAC 주소를 추출할 수 있으므로 헤더의 시작 부분이 올바르게 디코딩되었는지 확인할 수 있습니다. 두 IP 모두 데이터 섹션을 디코딩할 수 없지만, ID가 0x87로 HTTP POST이고 디코딩하려는 실제 데이터가 파라미터가 아닌 HTTP 페이로드에 있다는 점을 고려하면 이는 예상되는 현상입니다. 이 분석에 따르면 이러한 IP가 모스키토 컨트롤러라고 중간 정도의 신뢰도를 가지고 평가합니다.

투페이스 웹 셸 탐지

팔로알토 유닛42 연구팀에서 투페이스 웹셸을 처음 발견하고 분석한 후, 이 연구팀은 이 웹셸을 APT34와 연관된 오일리그(OilRig)라는 그룹으로 지목했습니다. 앞서 설명한 것처럼 Turla는 TwoFace ASPX 웹 셸의 존재를 검사한 다음 Snake 또는 기타 멀웨어에 액세스하여 다운로드를 시도했습니다. 이러한 웹 셸 중 상당수는 이제 Turla의 운영 자산이며 더 이상 APT34의 통제를 받지 않는 것으로 추정됩니다.

투페이스 웹 셸은 실제로 초기 로더 셸과 운영자가 웹사이트를 훨씬 더 잘 제어할 수 있는 완전한 기능을 갖춘 두 번째 웹 셸로 구성되어 있습니다. 두 컴포넌트 모두 C#으로 작성되었으며 ASP.NET을 지원하는 웹 서버에서 작동하도록 설계되어 ASPX(Active Server Page Extended) 파일을 사용하여 작동합니다. TwoFace는 다음과 같은 기능을 갖춘 원격 액세스 트로이 목마입니다:

  • 프로그램 실행

  • 셸 명령 실행

  • 파일 업로드

  • 파일 수정

  • 파일 삭제

  • 파일 다운로드

  • 타임스탬핑(파일 타임스탬프 수정)

웹 셸에 액세스하는 방법은 아래 이미지와 유사한 제어판을 통해 이루어집니다. 그런 다음 위협 행위자는 추가 작업을 수행하기 위해 인증을 받아야 합니다. 그러나 인증 없이도 이 특정 .aspx의 존재는 파일을 확인하면 TwoFace 웹 셸의 존재를 충분히 확인할 수 있습니다.

turla-apt-인프라-4-1.png

TwoFace 웹 셸 패널.

투페이스 웹 셸 검색 세부 정보

인식트 그룹은 투페이스 웹 셸의 URL을 스캔하는 독점 도구를 만들었습니다. 도구를 사용하여 TwoFace 웹 셸을 검사하는 데 사용되는 구성은 아래 표에 나와 있습니다.

규칙 이름 HTTP 메서드 컬렉션 필터 HTTP 헤더 HTTP 페이로드 예상 컨트롤러 응답(RegEx)
Turla_TwoFace_웹쉘_감지 GET .aspx N/A N/A "함수 use() { var n = document; var d = n.getElementById("d").innerHTML; d = d.substring(0, d.lastIndexOf('\\') + 1); n.getElementsByName("cmd")[0].value += d; n.getElementsByName("sav")[0].value += d; n.getElementsByName("don")[0].value += d; }"

투페이스 웹 셸용 스캐너 구성.

이 구성은 먼저 소스 목록에서 경로에 파일 이름이 "*.aspx"인 모든 URL을 수집합니다. 녹화된 미래 스캐너가 각 URL에 연결됩니다. 연결하면 .aspx의 콘텐츠를 가져옵니다. 파일을 아래 이미지와 같이 생성합니다.

turla-apt-인프라-5-1.png

.aspx 자동 검색 파일.

그런 다음 응답에서 알려진 투페이스 웹 셸 문자열을 검색하여 URL이 투페이스 웹 셸로 연결되는지 여부를 확인합니다. 인사이트 그룹 분석가들은 아래 이미지의 자바스크립트 스니펫을 투페이스 웹셸의 지표로 사용했습니다.

turla-apt-인프라-6-1.png

투페이스 웹 셸 탐지에 사용되는 자바스크립트 코드.

전망

Turla 그룹은 정교한 위협 행위자이며, 많은 국가 그룹이 운영을 위해 오픈 소스 및 상용 소프트웨어에 더 많이 의존하고 있음에도 불구하고 고유한 고급 멀웨어를 지속적으로 개발해 왔습니다. 2019년 말에 처음 발견된 Turla의 새로운 변종 멀웨어인 Reductor RAT는 이러한 혁신의 한 예입니다. 인식트 그룹은 2020년에도 Reductor RAT를 지속적으로 사용할 것으로 예상하고 있습니다.

Turla는 가상 파일 시스템과 Gazer 및 Outlook 백도어와 같은 효과적인 이전 기술을 여전히 사용하면서도 Reductor의 브라우저 의사 번호 생성 변경과 같은 새로운 방법을 지속적으로 채택하고 최근의 .NET 및 PowerShell 백도어와 같은 새로운 도구를 지속적으로 개발했습니다.

앞서 언급했듯이 Turla가 일반적인 도구를 사용하지 않는다는 의미는 아닙니다. Turla는 Mosquito 백도어의 전달 메커니즘으로 Mimikatz 및 Metasploit을 비롯한 오픈 소스 도구를 정기적으로 사용해 왔습니다.

인식트 그룹은 투라 그룹을 자금력이 풍부한 선진국형 그룹으로 평가하며, 수년 동안 활발하게 활동하며 도구와 관행을 개선하고 있습니다. 시간이 지남에 따라 공격 목표와 방식이 변화할 것으로 예상되지만, 인싯트 그룹은 앞으로도 계속해서 독특한 운영 개념으로 놀라움을 선사하는 지능형 위협으로 남을 것이라고 평가합니다. 그러나 이 그룹의 일관된 패턴과 장기간의 캠페인에 안정적이고 주기적으로 업데이트되는 고유 멀웨어 버전을 사용하는 것으로 보아 향후 이 그룹의 인프라와 활동을 사전에 추적하고 식별할 수 있을 것으로 보입니다.

관련