먼저, APT(고급 지속적 위협) 공격 주체와 상용 악성코드 계열이 초기 침투 경로로 엑셀 애드인 파일(.XLL 파일)을 점점 더 많이 활용하는 새로운 추세를 살펴보겠습니다. 다음으로, “PurpleUrchin”으로 추적된 프리잭킹 캠페인의 배후에 있는 클라우드 중심 위협 행위자인 ‘Automated Libra’에 대한 최신 정보를 다룹니다. 마지막으로, 악명 높은 러시아 정부 후원 위협 그룹인 ‘투를라(Turla)’와 연관된 악성 활동에 대해 만디언트(Mandiant)가 최근 발표한 보고서를 심층적으로 분석해 보겠습니다.
1. APT 해커들이 초기 침투 경로로 악성 엑셀 애드인을 활용하고 있다
시스코 탈로스(Cisco Talos)의 ‘위협 스포트라이트(Threat Spotlight)’ 블로그에 따르면, 고급 지속적 위협(APT) (새 탭에서 열림) 공격 주체들과 범용 악성코드 계열들이 초기 침투 경로로 엑셀 애드인 파일(.XLL 파일)을 점점 더 많이 활용하고 있다.
XLL 파일 사용이 증가한 것은 마이크로소프트가 VBA 매크로의 실행을 기본적으로 차단하기로 결정한 이후의 일입니다. (새 탭에서 열림) 이제 Microsoft Office 응용 프로그램은 더 엄격한 검토 절차를 거치며, 문서에 ‘웹 표시(MOTW)’ 태그가 포함된 경우 사용자가 매크로를 실행하지 못하도록 제한합니다. 마이크로소프트가 매크로를 차단하기로 결정한 주된 이유는, 많은 위협 행위자들이 VBA 매크로를 악성코드와 랜섬웨어를 유포하기 위한 초기 침투 경로로 활용했기 때문이다.
마이크로소프트와 애드인: 간략한 개요
애드인은 다양한 형식으로 제공되며 여러 가지 기능을 갖춘 실행 가능한 코드 조각입니다. 이 기능들은 Microsoft Office 응용 프로그램에 추가하여 기능을 강화할 수 있습니다.
- Word: Microsoft Word의 경우, 애드인은 레지스트리 값에 지정된 특정 위치에 저장해야 합니다. 만약 공격자가 파일 확장자 .wll을 사용하여 DLL을 신뢰할 수 있는 위치에 배치할 경우, Word는 해당 DLL을 자체 프로세스 공간으로 불러오려고 시도할 것입니다.
- Excel: Microsoft Excel의 경우, 사용자가 Windows 탐색기에서 .XLL 파일을 열려고 하면 셸이 자동으로 Excel을 실행하여 파일을 열려고 시도합니다. XLL 파일이 로드되기 전에, Excel은 악성 코드가 포함되어 있을 가능성에 대한 경고를 표시합니다. 이는 VBA 매크로 코드가 포함된 문서를 열었을 때 표시되는 경고나 처리 방식과 유사합니다. 이론적으로는 그럴듯해 보이지만, 대부분의 사람들은 별다른 생각 없이 이 부분을 그냥 넘기며 경고를 무시하는 경향이 있습니다.
XLL 파일이란 무엇인가요?
XLL 파일은 표준 Windows 동적 링크 라이브러리(DLL)입니다. XLL 파일의 특징은 Excel 애드인 관리자가 호출하는 특정 내보낸 함수를 구현할 수 있다는 점입니다. 이 애드인은 네이티브 코드로 작성되며, 개발자가 Excel의 기능을 확장할 수 있게 해줍니다.
- C/C++ 기반 XLL: 네이티브 XLL 애드인은 Microsoft Excel XLL 소프트웨어 개발 키트(SDK)를 사용하여 개발됩니다. 애드인 관리자에 의해 애드인이 로드되려면, XLL은 xlAutoOpen이라는 내보낸 함수를 적어도 하나 구현해야 합니다. 그래야 Excel에서 애드인이 로드될 때 해당 코드가 호출될 수 있습니다. Excel XLL SDK는 XLL 파일이 Excel API를 사용하여 통합 문서 데이터에 액세스하고 Excel 함수를 호출할 수 있도록 해주는 C/C++ 헤더 파일과 라이브러리로 구성되어 있습니다.
- Excel-DNA 기반 XLL: Add-In Express와 Excel-DNA( , 새 탭에서 열림) 등 두 가지 널리 사용되는 프레임워크를 통해 개발자는 .NET 언어를 사용하여 XLL 애드인을 만들 수 있습니다. Excel-DNA는 무료 프레임워크이기 때문에, 많은 악성코드 제작자들이 이를 활용해 악성 XLL 파일을 제작하고 있습니다.
악성 XLL의 진화
Cisco Talos는 VirusTotal에 제출된 네이티브 및 Excel-DNA 기반 악성 파일의 수를 시간 경과에 따라 추적할 수 있었습니다.
시스코 탈로스(Cisco Talos)는 또한 심층 분석을 통해, 2017년 중반이 위협 행위자들이 XLL 파일을 악성 코드 실행의 매개체로 활용하기 시작한 시점임을 확인했습니다. XLL 파일의 사용은 2021 버전까지 산발적으로 이루어졌던 것으로 보이며, 101 버전부터 Dridex와 같은 일반적인 악성코드 계열에서 이를 사용하기 시작했습니다.
타늄(Tanium) 사이버 위협 인텔리전스 팀의 애널리스트 의견
“감염 경로로 XLL이 증가하는 데에는 마이크로소프트가 VBA 매크로를 차단하기로 한 결정만이 유일한 이유는 아닌 것으로 보인다.” 이러한 현저한 증가는 지난 몇 년 동안 관찰되어 왔으며, 마이크로소프트의 호평을 받은 매크로 차단 결정이 내려지기 훨씬 전부터 시작되었다. 그 이유나 시기와는 별개로, 점점 더 많은 일반 악성코드 계열과 위협 행위자들이 XLL을 채택하고 있다. XLL과 관련된 최근 사례로는 Ekipa RAT가 있는데, 이 악성코드는 마이크로소프트 퍼블리셔 매크로를 악용해 원격 접속 트로이목마를 심는 동시에 XLL 엑셀 애드인을 공격에 활용했습니다.”
2. PurpleUrchin은 CAPTCHA를 우회하여 클라우드 플랫폼 자원을 탈취합니다
팔로 알토의 Unit 42 팀은 최근 ‘ ’라는 제목의 심층 분석 보고서( (새 탭에서 열림))를 발표하며, 프리잭킹 캠페인 ‘PurpleUrchin’의 배후에 있는 클라우드 위협 행위자 ‘Automated Libra’에 대해 심도 있게 다뤘습니다.
Automated Libra는 남아프리카공화국에 기반을 둔 프리잭킹 그룹으로, 클라우드 리소스의 기간 한정 체험판을 제공하는 클라우드 플랫폼을 표적으로 삼는 것으로 알려져 있습니다. 이후 위협 행위자는 이러한 무료 체험판을 이용해 암호화폐 채굴 작업을 수행합니다. 이 위협 행위자는 ‘PurpleUrchin’으로 알려진 프리잭킹 캠페인의 배후로 지목되고 있다.
Automated Libra는 새로운 CAPTCHA 해결 시스템을 사용하는 것이 관찰되었으며, 암호화폐 채굴을 위해 CPU 자원을 더욱 적극적으로 활용하고, 무료 클라우드 자원을 악용하기 위한 믹싱 기법을 사용하는 것으로 나타났습니다.
PurpleUrchin이란 무엇인가요?
PurpleUrchin 암호화폐 채굴 캠페인 (새 탭에서 열림) 는 (새 탭에서 열림) 에서 2022년 10월 프리잭킹 작전으로 확인되었습니다. 이 캠페인은 무료 클라우드 계정을 제공하는 자원을 악용하여 각 무료 계정당 소액의 수익을 창출하는 방식을 취했으며, 이러한 수익이 합쳐지면 더 큰 금액이 되었습니다.
PurpleUrchin의 배후 세력은 위조되거나 도난당한 것으로 추정되는 신용카드를 이용해 가짜 클라우드 계정을 생성하고, 이를 통해 ‘Play’ 및 ‘Run’ 작업을 수행했습니다. 이 가짜 계정들 때문에 클라우드 서비스 요금이 미납되었습니다.
팔로 알토의 42 팀은 컨테이너 데이터와 시스템 접근 로그를 포함해 250GB 건 이상의 데이터를 분석했습니다. 이 위협 행위자들이 사용하는 인프라 아키텍처는 CI/CD 기법을 활용하며, 여기서 운영에 사용되는 각 개별 소프트웨어 구성 요소는 컨테이너 내에 배치됩니다. CI/CD 아키텍처를 통해 운영의 일부 구성 요소가 실패하거나 업데이트되거나 종료되더라도 전체 환경에 영향을 미치지 않도록 할 수 있습니다. 분석 결과, 연구진은 이 위협 행위자의 활동 흔적을 2019년 8월까지 추적할 수 있었다. 또한 이번 조사 결과, 해당 위협 행위자가 기존 가상 서비스 제공업체(VSP)를 통해 클라우드 서비스를 이용하는 것을 선호하는 것으로 드러났다.
GitHub 워크플로를 활용한 마이닝
이 위협 행위자는 GitHub에서 ‘Play and Run’과 ‘freejacking’ 전술을 조합하여 공격을 수행했습니다. 이 위협 행위자들은 분당 평균 3~5개의 GitHub 계정을 자동으로 생성했다. 계정 기반을 구축한 후, 프리재킹 활동이 시작되었다.
이후 각 GitHub 계정은 ‘Play and Run’ 전략에 가담했는데, 이 전략에 따라 각 계정은 해당 계정에 제공된 컴퓨팅 리소스를 사용했으나, 그로 인해 발생한 요금은 미납된 채로 남겨졌습니다. 연구진은 해당 위협 행위자가 다양한 가상 사설 서버(VPS) 제공업체와 클라우드 서비스 제공업체에 걸쳐 130.000 개 이상의 계정을 생성한 증거를 밝혀냈다.
GitHub 계정 생성 자동화
최근 관찰된 위협 행위자의 배포 사례 중 하나는 AHP 서비스를 통해 Togglebox를 실행한 것이었습니다. Togglebox는 완전 관리형 솔리드 스테이트 드라이브(SSD) 기반 클라우드 VPS 및 애플리케이션 호스팅 플랫폼입니다. 이 위협 행위자는 이 플랫폼을 이용해 일련의 컨테이너를 실행했습니다. 각 컨테이너는 GitHub 계정을 자동으로 생성할 수 있습니다. 연구진은 또한 사용자 계정 생성 파이썬 프로세스 내에서 “named”라고 불리는 계정 관련 스위치를 확인했다. 이 프로세스에서는 Md5 개의 해시를 기반으로 무작위로 생성된 명명된 계정을 사용했습니다.
자동 계정 생성 프로세스에 필요한 도구들은 컨테이너 형태로 배포되었습니다. 최신 버전의 컨테이너를 통해, 위협 행위자는 Iron Browser, xdotool, ImageMagick 등 공개적으로 이용 가능한 여러 합법적인 도구를 조합하여 사용했습니다. 도구가 준비되면, 위협 행위자는 계정 생성을 시작할 수 있습니다.
CAPTCHA의 취약점 악용
GitHub 계정을 만들려면 CAPTCHA 테스트를 통과해야 합니다. 이를 위해 공격자는 ImageMagick 툴킷에 포함된 ‘convert’와 ‘identify’ 등 두 가지 도구를 사용합니다.
CAPTCHA 이미지는 먼저 변환 도구를 사용하여 적색, 녹색, 청색의 보색 이미지로 변환됩니다.
이미지가 변환된 후, 각 이미지에 대해 identify 명령을 실행하여 “비뚤어짐” 특징을 추출합니다. 그 결과 오름차순으로 정렬된 목록이 생성되며, 가장 작은 값이 정확한 정답으로 드러납니다.
CAPTCHA를 해결하면 GitHub에서는 계정 이메일로 전송된 런치 코드를 입력해야 합니다. 이 샘플에서 위협 행위자는 수신된 IMAP 메시지를 읽어 실행 코드를 획득하는 과정을 자동화하기 위해 Gmail 계정을 사용했습니다.
접근 코드가 입력되면 자동화 시스템이 워크플로 권한이 포함된 개인용 액세스 토큰을 생성합니다. 최근의 공격 사례에서는 명명 규칙이 변경되어, 위협 행위자가 MD5 개의 해시를 기반으로 한 임의의 이름을 저장소에 사용하고 있습니다.
생성된 계정
Unit 42 은 GitHub에서 생성된 계정 수를 추산했습니다.
GitHub에 리포지토리가 생성된 후, 원하는 워크플로를 적용하기 위해 bash 스크립트가 실행됩니다. 워크플로 자체는 PHP 스크립트를 사용하여 생성됩니다. 이 워크플로 메커니즘을 통해 위협 행위자는 외부 애플리케이션을 실행할 수 있습니다. 관찰된 한 사례에서, 생성된 워크플로는 총 64 개의 작업을 실행했으며, 각 작업은 사용 가능한 5 개의 고유한 구성 중 1개를 무작위로 선택했습니다.
2021 사건 당시 위협 행위자가 주로 사용한 클라우드 서비스 중 하나는 Heroku였는데, 이는 사용자가 호스팅 인프라를 직접 관리할 필요 없이 애플리케이션을 개발하고 배포할 수 있게 해주는 클라우드 애플리케이션 플랫폼입니다. 연구진은 Heroku 플랫폼에서 생성된 100.000 개 이상의 고유 계정을 확인했다.
타늄(Tanium) 사이버 위협 인텔리전스 팀의 애널리스트 의견
“수동 개입 없이 ‘Automated Libra’의 CAPTCHA 해결 시스템을 활용해 GitHub 계정을 생성한 점은 인상적이다.” 악의적인 행위자들이 암호화폐 채굴 활동을 통해 막대한 수익을 올릴 수 있다는 것은 공공연한 사실이며, 이러한 자동화된 계정 생성 과정은 사이버 범죄자들에게 이를 훨씬 더 쉽게 만들어 줄 뿐입니다. “이 CAPTCHA 우회 기법은 위협 행위자들이 작전을 더 효과적으로 수행하기 위해 이러한 기법을 지속적으로 개선하고 발전시켜 나갈 것임을 보여주는 또 다른 사례입니다.”
3. 러시아의 ‘Turla’ APT 그룹은 다른 해커들이 USB를 통해 감염시킨 시스템을 악용하고 있다
선도적인 사이버 위협 정보 기업인 맨디언트(Mandiant)가 발표한 새로운 보고서는, 러시아 연방보안국(FSB)의 지시를 받아 활동하고 있는 것으로 높은 확신을 얻고 있는 악명 높은 러시아의 고급 지속적 위협(APT) 그룹인 투를라(Turla, )의 최근 활동을 조명하고 있다. (새 탭에서 열림)
만디언트(Mandiant)는 투를라(Turla)가 등록한 새로운 명령 및 제어(C2) 도메인과 이 그룹이 KOPILUWAK 및 QUIETCANARY 악성코드를 표적 배포한 사실에 대한 정보를 제공하는 한편, 투를라가 감염된 USB 드라이브를 통해 악성코드를 유포했던 약 10년 전의 사이버 범죄 캠페인과 이전에 연관되었던 만료된 도메인을 등록함으로써 피해자 네트워크에 어떻게 접근했는지를 설명하고 있다.
USB 피기백
맨디언트(Mandiant)의 보고서는 ‘사이버 위협 인텔리전스( 2022년 9월 )’ 활동을 통해 우크라이나의 한 네트워크에서 발생한 흥미로운 침해 사례를 발견한 결과로, 이 사건에서는 누군가가 기기의 빈 포트에 USB 드라이브를 삽입한 후 해당 네트워크 내 여러 대의 컴퓨터가 감염된 것으로 나타났다.
만디언트는 결국 이 활동이 투를라(Turla)의 작전과 관련이 있다고 판단했는데, 해당 위협 행위자는 만료된 ANDROMEDA C2 도메인 중 최소 3개를 재등록할 수 있었던 것으로 나타났다. 이를 통해 Turla는 비교적 오래된 악성코드(ANDROMEDA는 2010s년 초반에 널리 유포되던 상용 악성코드였다)의 감염자를 샅샅이 조사하고, 표적을 분석한 뒤, 우크라이나 피해자들을 대상으로 KOPILUWAK 정찰 유틸리티와 QUIETCANARY 백도어를 선택적으로 배포할 수 있었다.
안드로메다에 관한 참고 사항
앞서 언급한 바와 같이, ANDROMEDA는 2010s년 초반 무렵에 가장 큰 인기를 끌었던, 널리 퍼진 범용 악성코드였습니다. 이번 사건에서 Turla는 2013년에 VirusTotal에 처음 업로드된 변종의 인프라를 탈취했습니다. 사실, 이 ANDROMEDA 변종은 감염된 USB 메모리를 통해 확산됩니다.

이번 사건은 키예프( 2021년 12월)에 위치한 한 우크라이나 기관에서, 여러 종류의 구형 악성코드에 감염된 USB 메모리가 삽입되면서 발생했습니다. 만디언트(Mandiant)에 따르면, 표적 시스템의 사용자가 USB 드라이브에 포함된 폴더로 위장한 악성 링크(LNK) 파일을 더블클릭하면 “구형 ANDROMEDA 샘플”이 자동으로 설치되었으며, 이때부터 비콘 신호를 전송하기 시작했다고 한다.
이 버전의 ANDROMEDA가 2013년에 VirusTotal에 업로드된 이후로, 이 악성코드의 C2 개 도메인 대부분은 연구자들에 의해 싱크홀 처리되었거나, 아니면 거의 10년이 지나 만료된 것으로 보입니다. 이 특정 바이너리가 실행되자, C:\ProgramData\Local Settings\Temp\mskmde.com에 또 다른 ANDROMEDA 샘플을 배치하여 지속성을 확보했으며, 시스템 사용자가 로그온할 때마다 이를 실행하도록 레지스트리 ‘Run’ 키를 추가했습니다. 만디언트는 만료된 C2 개 도메인 중 하나가 2022 년 1월에 개인정보 보호 조치를 취한 등록자에 의해 재등록되었으며, 이를 처리한 등록기관은 다이나닷(Dynadot)이라는 사실을 확인했습니다.
Turla는 이 C2 을 활용하여 해당 악성코드 샘플의 기존 감염자를 분석함으로써, 1단계 드로퍼인 KOPILUWAK을 통해 관심 대상 사용자를 선별적으로 표적으로 삼을 수 있었다.
KOPILUWAK과 함께하는 정찰
만디언트(Mandiant)에 따르면, 투를라(Turla)는 수개월 동안 안드로메다(ANDROMEDA) 비콘 신호를 전송했으나 별다른 활동이 관측되지 않은 끝에, 결국 2014년 1월( 2022년 9월)에 피해자의 기기에 코필루왁(KOPILUWAK)이 포함된 WinRAR 자동 압축 해제 아카이브(WinRAR SFX)를 다운로드하여 실행했다.
종합해 보면, 맨디언트(Mandiant)의 연구원들은 그 달 동안 공격자들이 동일한 WinRAR SFX KOPILUWAK 드로퍼를 7차례 다운로드하여 실행하는 것을 관찰했으며, 매번 “상당한 양의 데이터를 C2 manager.surro[.]am으로 전송”하려 시도한 것으로 나타났다.
공격자들이 왜 이런 일을 저질렀는지는 여전히 밝혀지지 않았다. KOPILUWAK의 피해자 프로파일링 명령어는 하드코딩되어 있으므로, 동일한 대상 호스트에서 수집된 데이터라도 서로 다른 데이터 세트를 산출하지는 않습니다.
만디언트(Mandiant)가 설명한 사건에서, “wauclt.exe” 프로세스는 안드로메다(ANDROMEDA)에 의해 주입된 후, 대상 URL “/system/update/version”을 지정하여 “yelprope.cloudns[.]cl”에 대한 GET 요청을 보냈다. 이 도메인은 ClouDNS에서 호스팅하는 동적 DNS 하위 도메인으로, 과거 ANDROMEDA 활동과 연관된 바 있으며 Turla가 재등록한 또 다른 도메인입니다.
본질적으로, Turla는 KOPILUWAK을 1단계 표적 분석 자원으로 활용했으며, KOPILUWAK은 ANDROMEDA 이후 공격자들이 사용한 최초의 맞춤형 Turla 악성코드였다. KOPILUWAK은 Turla가 피해자 호스트에 대한 네트워크 정찰을 수행할 수 있도록 지원했으며, whoami, netstat, arp, net 등의 유틸리티를 사용하여 PID를 통해 활성 TCP 연결을 탐색하고 네트워크 공유 위치를 파악한 뒤, 논리 디스크와 현재 실행 중인 프로세스를 열거했습니다. 모든 명령어의 실행 결과는 %TEMP%\result2.dat 파일로 파이프 처리된 후, POST 요청을 통해 KOPILUWAK의 C2 번 “manager.surro[.]am”으로 업로드되었습니다.
QUIETCANARY가 등장한다
KOPILUWAK이 처음 실행된 후, Turla가 경량 .NET 백도어인 QUIETCANARY를 호스트에 두 차례 다운로드하는 것이 관찰되었습니다(단, 명령이 실행된 것은 두 번째 경우뿐이었습니다). QUIETCANARY는 주로 Turla가 피해자의 데이터를 수집, 압축, 중간 저장한 뒤 최종적으로 외부로 유출하는 데 사용되었습니다. QUIETCANARY가 디스크에 기록되었습니다.
만디언트는 QUIETCANARY로 전송되어 백도어를 통해 실행된 상호작용 명령들을 관찰할 수 있었다.
참고: 실행된 명령어에 간혹 오타가 있었고, 이에 따라 수정 후 다시 실행된 점을 미루어 볼 때, 이는 자동화된 데이터 수집이 아닌 수동으로 진행된 과정인 것으로 보인다.

흥미롭게도, Turla는 2021년 1월 1일 이후 생성된 파일의 유출에만 관심을 보인 것으로 보입니다.
타늄(Tanium) 사이버 위협 인텔리전스 팀의 애널리스트 의견
“만디언트는 보고서에서 이번 사건과 관련된 투를라(Turla)의 페이로드가 우크라이나에서만 확인되었다는 점을 분명히 밝히고 있다.” 사실, 맨디언트는 탈취된 ANDROMEDA 감염 사례가 Turla 악성코드를 유포하는 데 사용된 것을 단 한 건만 확인했습니다. 그러나 투르라가 이러한 유형의 작전을 수행한 곳이 우크라이나뿐이라고 단정 짓는 것은 현명하지 않을 것이다. Turla가 ANDROMEDA 감염을 악용한 공격이 단 하나의 표적에만 국한되었다고 결론 짓는 것 역시 현명하지 못한 일일 것이다. 또한 터라가 기존 감염 사례를 자신들의 목적을 위해 악용할 유일한 행위자가 될 것이라고 가정하는 것은 무모한 일일 것이다. "동기야 다르겠지만 다른 위협 행위자들도 본 문서에 설명된 활동과 유사한 방식으로, 과거의 침입 사례를 악용하려 할 가능성이 높다."
사실, Turla가 다른 위협 행위자들의 공격 인프라를 탈취한 것은 이번이 처음이 아니다. 이 주제에 관한 《와이어드》 기사에서 다음과 같이 언급했듯이:
Turla는 악성코드의 제어권을 숨기거나 심지어 다른 해커들의 제어권을 탈취하기 위해 교묘한 수법을 사용해 온 오랜 역사를 가지고 있으며, Mandiant가 이번 최근 사례에서 확인한 바와 같다. 사이버 보안 기업 카스퍼스키는 2015 호에서, 투르라(Turla)가 위성 인터넷 연결 (새 탭에서 열림)을 장악하여 자사의 명령 및 제어 서버 위치를 숨겼다고 밝혔다. 2019호 기사에서 영국의 정보기관 GCHQ()는 투를라(Turla)가 이란 해커들의 서버 (새 탭에서 열림)를 은밀히 장악해 자신들의 정체를 숨기고, 신원을 파악하려는 수사관들을 혼란에 빠뜨렸다고 경고했다.
"최근 몇 년간 USB를 이용한 해킹 기법이 다시 활기를 띠고 있는 것으로 보이며, 이번 사건에서 만디언트(Mandiant)가 관찰한 투를라(Turla)의 은밀한 수법은 보안 전문가들에게 이 특정 침입 경로가 결코 구식이 아니라는 점을 상기시켜 주는 계기가 되어야 합니다. 또한, 투를라처럼 정교하고 풍부한 자원을 갖춘 공격자의 손에 이 기법이 들어갈 경우, 여전히 상당한 위협이 될 수 있습니다.”
더 자세한 내용을 확인하시려면, 최근 발행된 ‘’ 사이버 위협 정보 요약 자료를 참고해 주세요.

