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

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

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

Recorded Future의 Insikt Group® 은 최근 Turla 활동에 대한 심층 조사の一環으로 Turla 악성 소프트웨어 및 인프라에 대한 새로운 탐지 방법을 개발했습니다. 데이터 소스에는 Recorded Future® 플랫폼, ReversingLabs, VirusTotal, Shodan, BinaryEdge 및 다양한 기타 소스가 포함되었습니다. OSINT 도구. Threat Intelligence 이 연구의 대상 독자는 러시아 국가 주도의 컴퓨터 네트워크 운영 활동에 관심 있는 보안 전문가, 네트워크 방어 전문가, 및 사이버 보안 전문가입니다.

Executive Summary

투라(Turla)는 , 물벌레, 독곰이라는 별명으로 알려진 잘 조직되고 고도로 정교하며 전략적으로 집중된 사이버 스파이 그룹입니다. 이 그룹은 10년 이상 전 세계의 연구, 외교, 군사 기관을 대상으로 한 작전에 연루되어 왔으며, 특히 북대서양 조약기구(NATO)와 독립국가연합(CIS) 소속 국가 내 기관을 대상으로 한 활동을 지속적으로 진행해 왔습니다.

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

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

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

주요 판단

배경

투라(Turla)는 2008년 초부터 펜타곤을 표적으로 삼은 작전에 연루된 것으로 지목되어 왔으며, 현재까지도 나토(NATO) 회원국들을 표적으로 삼는 활동을 계속해 오고 있습니다. Turla의 주요 표적은 출판 및 미디어 기업, 대학/학계, 정부 기관으로, 특히 과학 및 에너지 연구, 원격 및 현지 외교 업무, 군사 데이터 등을 구체적으로 노리고 있습니다. 투르라는 유럽 및 독립국가연합(CIS) 국가들을 적극적으로 표적으로 삼고 있으며, 역사적으로 외교부나 국방부 등 정부 부처 및 이와 유사한 정부 기관과 관련된 연구 기관을 주요 대상으로 삼아왔습니다.

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

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

2019년 6월, 시만텍의 연구원들은 Turla가 이란의 위협 그룹인 APT34의 컴퓨터 네트워크 운영 인프라에 침투해 이란의 운영 정보를 수집하고 유출했으며, 동시에 이란의 공격 대상이 된 활동 중인 피해자들에게 접근 권한을 획득했다고 확인했습니다.

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

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

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

위협 분석

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

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

Insikt Group 는 Turla Group이 APT34 인프라를 사용한 것이 주로 기회주의적 성격이었다고 평가하지만, 운영자들에게 추가적인 이점은 해당 도구를 이란 출신으로 식별할 수 있는 사고 대응자들을 속이는 것이었을 가능성이 높습니다. 투라(Turla)는 이란 도구 사용 이전에 다른 위협 행위자들이 사용한 악성 소프트웨어를 재사용했으며, 이 중에는 2012년에 중국과 연관된 Quarian 악성 소프트웨어의 사용도 포함됩니다. 해당 사례에서 카스퍼스키 연구진은 Turla 공격자들이 Quarian 악성 소프트웨어를 다운로드한 후 제거함으로써, 발견 후 사고 대응 팀을 혼란시키고 속이기 위해 시도했다고 분석했습니다.

이란에서의 대담한 진출 외에도, Turla는 동시에 다른 운영 및 개발 활동을 진행해 왔습니다. 2019년, Turla는 악성 파일의 디스크 내 탐지를 피하기 위해 PowerShell 스크립트를 적극적으로 사용하기 시작했습니다. 올해 동안 그들은 PowerShell 스크립트의 사용을 확대해 왔으며, PowerSploit과 PowerShell Empire를 활용하는 동시에 자체 개발한 PowerShell 백도어인 PowerStallion을 개발했습니다.

Turla는 주로 Microsoft Windows 운영 체제를 표적으로 삼지만, 이메일 서버를 고의로 악용하기도 했습니다. LightNeuron 백도어는 Microsoft Exchange 메일 서버에서 작동하도록 특별히 설계되었으며, Outlook 백도어는 Exchange 및 The Bat! (동유럽에서 널리 사용되는) 이메일 서버에서 작동하도록 설계되었습니다. 메일 서버를 해킹하면 Turla는 대상 네트워크의 이메일 트래픽을 제어할 수 있게 되며, 이는 단순히 이메일을 모니터링하는 것뿐 아니라 이메일을 생성, 전송, 심지어 차단하는 기능까지 포함됩니다.

Turla는 해킹된 WordPress 사이트를 C2로 활용합니다. 그들은 2014년부터, 아마도 그 이전부터 워드프레스에 특화된 URL 이름을 페이로드 전달에 정기적으로 사용해 왔습니다. 이 경향은 그들의 C2 및 페이로드 URL을 프로파일링하여 새로운 Turla 인프라를 발견하는 것을 가능하게 합니다.

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

Turla 고급 탐지 분석

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

모기 컨트롤러 탐지

2018년 1월, ESET은 침입 분석 과정에서 Turla가사용한 새로운 백도어인 'Mosquito'에 대해 보고했습니다. 모기 설치 및 배송에는 다음과 같은 여러 구성 요소가 포함되었습니다:

모스키토는 Win32 원격 액세스 트로이목마(RAT)입니다. 이 악성 소프트웨어는 세 가지 주요 구성 요소로 구성되어 있습니다: 설치 프로그램, 실행 프로그램, 그리고 때로는 CommanderDLL이라고도 불리는 백도어 구성 요소입니다. 모스키토(Mosquito) 악성 소프트웨어는 메타스플로이트(Metasploit) 쉘코드(shellcode) 를 처음 사용한 후 메터프레터(Meterpreter)를 설치하여 피해자의 시스템을 제어하기 위해 배포되었습니다. 다음과 같은 기능을 갖추고 있습니다:

커맨더는 모스키토 백도어의 주요 구성 요소입니다. 이 연구에서는 분석을 주로 지휘관의 C2 통신에 집중했습니다. 모기 패키지의 다른 측면에 대한 자세한 내용은 ESET의 연구진에 의해 철저한 분석이 진행되었습니다.
ESET의 분석 결과, Commander에서 C2로 전송되는 통신은 HTTP 또는 HTTPS를 통해 전송됩니다. 클라이언트 측에서는 데이터가 GET 요청의 매개변수로, 쿠키로, 또는 POST 요청의 매개변수와 페이로드로 전송될 수 있습니다(아래 그림 참조). 컨트롤러 측에서는 응답과 명령이 HTTP 페이로드로 전송됩니다.

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

위에서 보듯이, 컨트롤러로 전송된 데이터는 평문으로 전송되지 않습니다. 먼저 블룸 블룸 슈브(Blum Blum Shub) 가짜 난수 생성기를 사용하여 바이트 스트림을 생성하는 암호화 루틴으로 보호됩니다. 이 바이트 스트림은 평문 데이터를 XOR 암호화하는 데 사용됩니다. 생성된 데이터는 Base64로 인코딩됩니다.

암호화 또는 복호화를 수행하려면 암호화 과정에 키와 모듈러스가 필요합니다. ESET가 보고한 바와 같이, Insikt Group의 분석 과정에서 확인된 바와 같이, "0x7DFDC101"의 모듈러스는 하드코딩되어 있습니다. 키(key)는 하드코딩되어 있지 않으며, 클라이언트와 컨트롤러 간의 각 통신 시마다 무작위로 생성됩니다. 따라서 각 전송마다 키가 다릅니다. 이 무작위 키는 C2 통신的一部分으로 전송되며 쉽게 추출될 수 있습니다. Insikt Group의 분석가들은 이 가짜 난수 생성기 구현을 역공학으로 분석하고, 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 응답에서 다른 작업은 수행되지 않습니다.

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

커맨더 패시브 스캔

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

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

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

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

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

투페이스 웹 셸 탐지

TwoFace 웹 쉘은 Palo Alto Unit42 연구팀에 의해 처음 발견되고 분석되었으며, 이후 그들이 연관시킨 OilRig 그룹에 귀속되었습니다. OilRig는 일반적으로 APT34와 연관되어 있습니다. 앞서 언급된 바와 같이, Turla는 TwoFace ASPX 웹 쉘의 존재를 탐지한 후 Snake 또는 기타 악성 소프트웨어에 접근하고 다운로드하려고 시도했습니다. 우리는 이러한 웹 쉘 중 많은 부분이 현재 Turla의 운영 자산으로 전환되었으며, 더 이상 APT34의 통제 하에 있지 않을 수 있다고 판단합니다.

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

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

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을 수집합니다. Recorded Future 스캐너가 각 URL에 연결됩니다. 연결하면 .aspx의 콘텐츠를 가져옵니다. 파일에 아래 이미지와 같이 추가합니다.

.aspx 파일의 자동 검색 파일.
그런 다음 응답에서 알려진 TwoFace 웹 쉘 문자열을 검색하여 해당 URL이 TwoFace 웹 쉘로 연결되는지 확인합니다. Insikt Group 분석가들은 아래 이미지에 표시된 JavaScript 스니펫을 TwoFace 웹 쉘의 지표로 사용했습니다.

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

전망

Turla 그룹은 고도로 정교한 위협 행위자입니다. 많은 국가 지원 그룹들이 운영에 오픈 소스 및 일반 소프트웨어에 의존하는 경향이 증가하고 있음에도 불구하고, Turla는 자체적인 독특하고 고급 악성 소프트웨어를 지속적으로 개발해 왔습니다. Reductor RAT는 2019년 말에 처음 발견된 Turla의 새로운 악성 소프트웨어 변종으로, 이러한 혁신의 대표적인 사례입니다. Insikt Group 2020년에도 Reductor RAT의 지속적인 사용이 예상됩니다.

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

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

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