3줄 요약
1. 다크웹에 악성코드 대신 배포해주는 심상치 않은 서비스 등장
2. 체크포인트가 발견한 DaaS 서비스, ‘스타게이저고스트(Stargazers Ghost)’란 이름 붙어
3. “악성코드 배포의 새로운 시대가 열렸다”는 경고 나와
[보안뉴스 문가용 기자] 다크웹에 심상치 않은 서비스가 등장한 것으로 보인다. ‘서비스형 배포(Distribution-as-a-Service, DaaS)’라고 보안 업체 체크포인트(Checkpoint)는 이름을 붙인 채 추적하고 있다. 공격자들은 거대한 공격 인프라를 구성해 운영하고 있으며, 이를 통해 각종 멀웨어를 유포하고 있다. 이런 개념을 가진 공격 인프라가 처음 등장한 건 아니지만, 이번에 발견된 것에는 독특한 점들이 존재한다. 체크포인트가 발견한 DaaS 서비스에는 스타게이저고스트(Stargazers Ghost)라는 이름이 붙어 있다.
[이미지 = gettyimagesbank]
스타게이저고스트의 배후 세력이 DaaS 사업을 위해 운영하고 있는 거대 공격 인프라는 최소 3천 개 이상의 깃허브 계정들로 구성되어 있는 것으로 추정된다. 체크포인트의 연구원들은 “이것은 빙산의 일각일 뿐, 공격자들은 더 거대한 공격 인프라를 보유하고 있을 가능성이 매우 높으며, 그것이 얼마나 큰지 전체 그림을 가늠하는 것조차 힘들다”고 보고서를 통해 주장하고 있다.
사실 공격자들이 가짜 계정을 다수 운영한다는 것 자체는 그리 놀라운 일이 아니다. 이미 선거철만 되면 주요 해킹 조직들이 소셜미디어 플랫폼에서 다수 계정을 운영하면서 가짜뉴스를 빠르게 퍼트리는 것이 수차례 목격되기도 했다. 북한의 해커들 역시 스스로 보안 전문가나 IT 엔지니어인 것처럼 꾸며 링크드인 프로파일을 생성한 뒤 다른 보안 전문가나 IT 엔지니어들을 공략하기도 한다. 진짜처럼 보이는 가짜 계정들을 통해 로맨스 스캠을 꾸리는 공격 사례들도 존재한다.
심지어 깃허브가 공격에 악용되는 사례도 그리 놀라울 것이 없다. 지금은 ‘공급망 공격’이 크게 유행하고 있는 때이기 때문이다. 공급망 공격이란, 소프트웨어가 개발되고 시장에서 유통되는 과정 자체에 공격자가 개입하여 멀웨어를 퍼트리는 것을 말한다. 정상적인 소프트웨어의 정상적인 업데이트를 감염시켜 소비자들이 아무런 의심 없이 잘못된 업데이트를 설치하게 하는 것도 공급망 공격이고, 아예 개발자들의 개발 환경을 감염시켜 악성 요소가 소프트웨어에 처음부터 심겨지도록 하는 것도 공급망 공격이다. 최근에는 후자가 적극 모색되고 있는데, 공격자들은 깃허브나 PyPI 등 개발자들이 자주 사용하는 코드 공유 플랫폼에 악성코드를 업로드 해 개발자들이 멋 모르고 다운로드 받도록 유도하는 편이다.
그렇다면 왜 체크포인트는 스타게이저고스트에 주목하는 것일까? “깃허브가 공급망 공격에 악용되는 건 익히 알려진 사실입니다. 하지만 그런 공격 전부 이미 개발자들이 만들어 사용하는 정상적인 계정을 공격자가 침해하여 정상 코드에 악성 요소를 삽입하는 식이지, 아예 처음부터 공격자들이 가짜 계정들을 대량으로 만들고, 이를 통해 멀웨어를 직접 유포하는 전략은 발견된 사례가 없습니다. 게다가 가짜 계정을 대량으로 만들어 운영한다고 하면 대부분 소셜미디어 플랫폼에서 있었던 일입니다. 깃허브와 같은 개발자용 플랫폼에서 이런 일이 벌어진 것은 처음입니다.”
어떤 식으로 공격이 진행되는가?
먼저 이 스타게이저고스트라는 거대 공격 인프라(혹은 배포 인프라)를 운영하고 있는 세력을 체크포인트는 ‘스타게이저고블린(Stargazer Goblin)’이라고 부른다. 이들의 운영 방식 중 가장 눈에 띄는 건 ‘정성’이라고 한다. “그 많은 유령 계정들이 유령 계정처럼 보이지 않게 온갖 활동들을 합니다. 악성 행위도 하지만 정상적인 활동도 한다는 소리입니다. 소셜미디어들에 있는 ‘좋아요’ 누르기나 ‘팔로우’ 신청하기, 콘텐츠 공유하기 등의 활동을 깃허브에서도 할 수 있는데, 공격자들은 가짜 깃허브 계정들을 통해 이런 일들을 부지런히 합니다. 그렇게 함으로써 ‘이 계정은 가짜가 아니다’라는 뉘앙스를 잔뜩 심는 것입니다.”
[이미지 = gettyimagesbank]
특정 캠페인을 위해 다급하게 가짜 계정들을 만들어 1회용으로 활용하는 것과 달리 꾸준한 활동을 통해 거대한 규모의 공격 인프라를 상시 대기시켜 놓는다는 게 이 스타게이저고스트의 무서운 점이라고 할 수 있다. 실제로 그렇게 하여 실시되는 DaaS 사업의 효과는 꽤나 좋은 것으로 나타났다. 체크포인트에 의하면 단 4일 만에 1300명이 넘는 피해자들이 정보 탈취형 멀웨어에 감염되기도 했었다고 한다. 이 경우 사용된 멀웨어는 아틀란티다스틸러(Atlantida Stealer)였다.
고스트 계정의 관리를 위해 이들이 적잖은 정성을 쏟는다는 게 드러나는 지점이 하나 더 있다. 하나의 공격을 이행한다고 했을 때, 그 공격에 소요되는 단계들을 세분화 하여 각 임무를 별도의 계정들에 부여하고 있다는 것이다. “예를 들어 악성 파일을 다운로드 하도록 피싱 링크를 피해자에게 노출시킨다고 했을 때, 첫 번째 계정으로는 미끼용 리포지터리 템플릿을 제공하도록 하고, 두 번째 계정으로는 그 미끼용 리포지터리 템플릿에 사용되는 가짜 이미지가 로딩되도록 하며, 세 번째 계정으로는 아카이브 형태로 저장된 실제 멀웨어 페이로드가 발동되도록 하는 식입니다. 피해자는 그럴 듯한 이미지까지 탑재된 가짜 템플릿을 잘못 클릭하여 멀웨어를 다운로드 받게 되는데, 그 과정 하나하나가 별도의 계정들로부터 이뤄진다는 것입니다.”
이렇게 계정들을 하나하나 나눠서 공격을 진행한다고 했을 때 스타게이저고블린이 가져가는 이득에는 무엇이 있을까? 먼저는 문제가 생겼을 때 대처하기가 쉽다는 것이다. “고스트 계정들을 아무리 잘 숨겨놓고, 아무리 진짜처럼 보이게 여러 가지 활동을 한다고 해도, 언젠가는 발각될 위험이 큽니다. 깃허브가 자체 플랫폼 점검을 통해 이런 계정들을 찾아내 솎아내곤 하는데, 여기에 영원히 걸리지 않을 확률은 낮죠. 공격자 입장에서는 커다란 변수가 될 수밖에 없습니다.”
그래서 어느 날 특정 공격을 실행하던 계정 하나가 삭제된다면, DaaS 사업에도 차질이 빚어지게 된다. 하지만 이 때 삭제되는 계정이 탬플릿에 이미지를 로딩하던 것이었다면 어떨까? 그러면 공격자 입장에서 재빨리 이미지 로딩용 계정 하나만 더 만들어 실행시키면 된다. 템플릿 계정이 사라졌다면, 또 다른 템플릿을 마련하기만 하면 된다. 이미지나 멀웨어는 그대로 남아있으므로 복구 시간이 짧아진다. “아무래도 템플릿과 이미지를 담당하는 계정보다 실제 멀웨어 페이로드를 보유하고 있는 계정은 탐지될 가능성이 높죠. 깃허브는 이런 계정이 발견되면 관련된 모든 계정과 리포지터리 등을 차단하거든요. 그래서 스타게이저고블린은 멀웨어 계정이 차단되면 빠르게 그와 연결된 템플릿 계정과 이미지 계정들을 새롭게 고쳐서 같이 삭제되지 않도록 합니다. 그렇게 함으로써 공격 계정들을 새로 마련할 때의 노력과 시간을 아낄 수 있게 됩니다.”
체크포인트는 스타게이저고블린이 주기적으로 자신들의 DaaS 네트워크를 점검하는 것으로 추정하고 있다. “깃허브가 어떤 계정이나 리포지터리를 차단했는지 매일 확인합니다. 계정 하나 사라지면 공격의 연결고리가 끊기는 것이니까 이런 것에 민감하게 대응하는 것입니다. 하지만 이렇게 점검해야 하는 계정의 수가 최소 3천 개입니다. 한두 사람이 매일 점검해도 다 하지 못할 양이죠. 게다가 진짜처럼 보이게 계정들을 가지고 여러 가지 활동도 해야 한다면, 할 일이 어마어마하게 많아지죠. 아무래도 자동화 기술을 도입해 활용하는 것으로 보입니다. 그래서 빠르게 공격 연결고리가 끊어진 곳을 확인해 복구시킬 수 있게 되는 것입니다. 자신들의 피해를 최소화 하기 위한 장치를 잘 마련했다고 볼 수 있습니다.”
이 때문에 깃허브도 악성 행위들을 근절시키기 위해 여러 가지 보안 장치들을 마련해 운영하고 있고, 심지어 성과까지 내고 있지만 스타게이저고스트 네트워크는 멀쩡히 유지되고 있다. “계정과 리포지터리들에 별도의 작은 역할들을 부여한 것이 주요하게 작용하고 있습니다. 어떤 고스트 계정들이나 리포지터리들은 깃허브가 자주 적발하여 차단하기도 합니다만, 반대로 어떤 것들은 수상한 것이 없기 때문에 차단이 되지 않기도 합니다. 스타게이저고블린은 자주 차단되는 것들만 파악해 재빨리 복구시키거나 대체시키기를 반복하고 있어서 이 DaaS 인프라는 고스란히 유지가 될 수 있습니다.”
이런 식으로 현재까지 여러 가지 멀웨어들이 유포됐는데, 대다수가 정보 탈취형 멀웨어였다고 한다. 대표적인 것은 다음과 같다.
1) 아틀란티다스틸러
2) 라다만티스(Rhadamanthys)
3) 라이즈프로(RisePro)
4) 룸마스틸러(Lumma Stealer)
5) 레드라인(RedLine)
실제 캠페인 사례 1
체크포인트는 한두 가지 감염 사례를 집중적으로 파헤쳤다. 그 중 하나는 아틀란티다스틸러를 유포시키는 캠페인이었는데, 공격자들은 악성 깃허브 링크를 디스코드 등을 통해 전파한 것으로 추정된다고 한다. “공격 표적은 트위치 사용자들이었습니다. 공격자들은 미리 워드프레스 웹사이트들을 침해해서 악성 스크립트를 호스팅해두고 있었고요. 피해자를 악성 깃허브 리포지터리로 유도한 뒤, 그 리포지터리에서부터 다시 워드프레스 사이트의 악성 스크립트가 다운로드 및 로딩되도록 한 것이죠.”
[이미지 = gettyimagesbank]
이 때 다운로드 된 것은 PHP 파일이었다(index.php). 이 파일은 제일 먼저 HTTP 요청문의 헤더를 확인하여 그 요청의 출처가 깃허브인지 아닌지를 구분한다. 만약 IP 주소가 토르 네트워크나 그 외 다른 블랙리스트 처리 된 IP 주소인지 확인하기도 한다. 그래서 조건이 맞으면 이 index.php 파일은 해당 HTTP 요청을 우회시켜 download.php가 피해자의 시스템에 다운로드 되도록 한다. 그러면 .hta 파일(Impress_V1.0.2.hta) 하나가 다운로드 되는데, 여기에는 악성 iFrame이 포함되어 있고, 악성 비주얼베이직 스크립트가 이를 통해 실행된다.
“이 때 비주얼베이직 스크립트에는 난독화 기술이 어마어마하게 적용되어 있었습니다. 그런 가운데 파워셸 코드가 실행되고요. 이 파워셸 코드는 원격에 있는 워드프레스 웹사이트에 호스팅 되어 있는 또 다른 코드를 실행시키도록 만들어져 있었습니다. 그러면서 인젝터 코드가 발동되고, 이 인젝터 코드가 결국 아틀란티다스틸러를 피해자의 시스템에 주입시켰습니다. 대단히 복잡한 방법으로 일이 진행되는데, 이 모든 일들이 깃허브 상의 거대 공격 인프라를 통해 이뤄지는 것입니다. 깃허브도 모르고, 사실 아무도 몰래 말이죠.”
이런 일이 몰래 일어날 수 있었던 건 단지 스타게이저고스트 네트워크가 은밀해서만은 아니었다. 애초에 피해자로 선정된 이들이 소수였다고 한다. “이 캠페인의 경우 고도의 표적형 캠페인이었습니다. 트위치, 인스타그램, 유튜브, 트위터 등 유명 소셜미디어 상에서 팔로워를 빠르게 늘리고 싶은 사람들이 그 대상이었다고 할 수 있습니다. 이런 절박함 때문에 속이기도 쉬웠을 거라 봅니다. 빠르게 팔로워를 늘리는 방법이라는 테마로 접근했을 것으로 추정됩니다.”
실제 캠페인 사례 2
또 다른 사례도 있었다. 이 경우 공격자들은 라이즈프로라는 정보 탈취형 멀웨어를 미끼로 썼다. “보안 위협인 라이즈프로의 크랙 버전을 받아가세요”라는 문구를 미끼로 활용한 건데, 이 때문에 체크포인트의 연구원들은 이 캠페인의 표적이 보안 전문가들인지 해커들인지 헷갈린다고 밝혔다. 공격자들이 공격자들을 공략하는 사례는 얼마든지 존재하기에 이상한 일이 아니다. 하지만 여기에 혹해 라이즈프로를 무료로 받으려 했다가 라다만티스라는 정보 탈취형 멀웨어에 감염된 사례들이 있다고 한다.
[이미지 = gettyimagesbank]
“이 캠페인에서도 공격자들은 가짜 깃허브 계정들을 통해 ‘무료 라이즈프로 다운로드 링크’를 유포했습니다. 링크는 단축 링크 형태로 제공되었기 때문에 육안으로 악성 여부를 식별하는 건 어렵습니다. 이 링크를 클릭하면 피싱 템플릿이 나타나는데, 다양한 계층들을 노린듯한 템플릿들이 활용되고 있다는 걸 확인할 수 있었습니다. 이 템플릿들은 또 다른 깃허브 리포지터리들과 연결되어 있었고, 피해자들은 아카이브 파일을 다운로드 받게 되었습니다. 이 아카이브 내에는 다운로더가 숨겨져 있었고, 이 다운로더로부터 라다만티스가 피해자의 시스템에 심겨졌습니다.”
재미있는 건 공격자들이 통계까지 내고 있었다는 것이다. “마지막 다운로더의 경우 GET 요청을 하는 기능도 보유하고 있었습니다. 감염된 IP 주소들을 등록시키기 위한 것이었죠. 캠페인의 진행 상황을 공격자 스스로가 점검하기 위한 것이었다고 봅니다. 이를 추적해 확인했을 때 러시아어로 된 페이지에 도달했습니다. 다운로더가 언제 얼마나 발동되었는지 등의 자료가 적혀 있었습니다. 2주 만에 라다만티스가 약 1050명을 감염시켰다는 걸 알 수 있었습니다.”
두 캠페인의 공통점과 차이
두 캠페인은 스타게이저고스트 네트워크를 통해 진행됐다는 공통점을 가지고 있으며, 종국에는 정보 탈취형 멀웨어가 유포됐다는 점에서도 동일하다. 하지만 단계별로 진행되는 공격의 특성도 다르고, 큰 틀에서의 전략도 같다고 말하기 힘들며 난독화 등 추적을 따돌리기 위해 적용된 기술의 수준도 다르다. 따라서 체크포인트는 두 캠페인의 배후에 동일한 세력이 있을 가능성을 낮게 보고 있다. “스타게이저고블린이 직접 실행한 것으로 보이지는 않습니다. 이들은 자신들의 인프라를 대여했을 뿐, 그 인프라를 활용한 건 또 다른 공격자들일 거라고 생각합니다.”
스타게이저고블린이 하는 일은 위에 설명된 ‘평상 시 인프라 유지 및 관리’에 집중되어 있는 것으로 보인다. 여기에 더해 다크웹 포럼들에 광고글을 올려 고객들을 유치하는 것도 이들의 중요한 할 일인 것으로 추정되고 있다. “실제로 저희들은 이런 가설을 세우고 다크웹의 여러 포럼들을 검색하기 시작했습니다. 그리고 2023년 7월 8일자로 올라온 광고 글을 찾을 수 있었습니다. 러시아어와 영어로 작성된 홍보 글이었고, 다량의 깃허브 계정들을 활용한 공격 인프라라는 설명이 적혀 있었습니다. 이 즈음부터 이들이 최초로 활동을 하기 시작한 것 같습니다.”
가격은 얼마나 많은 깃허브 계정들을 동원시킬 것인가에 따라 결정되는 구조였다. “100개 계정을 활용할 때의 가격은 10달러였습니다. 생성 기간이 길며 커뮤니티의 평판마저 좋은 계정들을 사용한다면 하나 당 2달러를 요구하고 있었습니다. 500달러 이상 구매할 경우 할인도 할 수 있다고 나와 있었고요. 이를 바탕으로 계산했을 때 스타게이저고블린은 올해 5월 중순부터 6월 중순까지 최소 8천 달러 이상의 수익을 올린 것으로 보입니다. 그리고 최초 활동 시작부터 지금까지 족히 10만 달러는 벌어들였을 거라고 보고 있습니다.”
스타게이저고스트, 어떤 의미를 갖는가
공격자들은 들키지 않으려고 갖은 애를 쓴다. 예나 지금이나 이는 변하지 않는 사실이고, 그래서 결국 이들은 각종 난독화 기술을 손쉽게 발휘할 줄 알게 됐다. 이것이 ‘공격자들의 진화’라고 할 수 있다. 이메일을 통해 직접 멀웨어를 퍼트리던 방식은 더 이상 사용되지 않고 있다. 이제는 여러 번의 다운로더와 로더를 번갈아 발동시키는 과정을 거쳐 최종 페이로드가 다운로드 되도록 하는 게 일반적이다. 그리고 그 마저도 요즘은 잘 탐지되는 추세다. 보안 업계는 이러한 전략을 아주 잘 이해하고 있기도 하다.
[이미지 = gettyimagesbank]
“그래서 공격자들이 한 발 더 나아간 게 스타게이저고스트 네트워크라고 할 수 있습니다. 깃허브 생태계에 이 거대한 공격 인프라가 있다니, 누가 꿈이나 꿨을까요. 이들은 가짜 계정들을 평소에도 부지런히 관리해 진짜처럼 보이게 만들어두었고, 평판마저 쌓고 있습니다. 그리고 그 계정들마다 세분화된 임무를 부여해 공격을 실시하고 있고요. 눈에 띄지 않게 숨어서 멀웨어를 유포하고 있으며, 현재까지는 높은 성공률을 기록하고 있습니다. 깃허브의 보안 장치들을 사실상 무력화시키고 있기도 하고요.”
현재까지 나온 ‘탐지 회피 및 공격 실행’ 전략 중 스타게이저고스트의 수준에 달하는 것은 본 적이 없다고 체크포인트는 강조한다. “대단히 고차원적인 전략성과 기술력까지 갖춘 자들입니다. 그리고 그것을 영리하게 활용해 수익까지 높이고 있습니다. 그러면서 해킹 공격은 활성화되고 있기도 하지요. 이러한 전략이 다크웹의 사이버 범죄자들 사이에 퍼질 가능성이 높고, 조만간 이런 방법들이 보편화 될 것이라고 봅니다. 그렇다면 이런 식의 공격에 대비할 수 있어야 합니다. 이건 플랫폼 운영사만의 문제가 아니라, 진짜 같아 보이는 것들을 꼼꼼하게 확인하지 않으려 하는 우리 모두의 문제이기도 합니다.”
그러면서 체크포인트는 “멀웨어 배포의 새로운 시대가 열렸다”고 힘주어 경고한다. “지금 이 순간에도 스타게이저고스트 네트워크는 계속해서 성장하고 있습니다. 저희가 발견한 것들을 바탕으로 어림 잡아 계산했을 때 3천 개가 넘는 유령 계정들이 있다고 추정할 뿐인데, 사실 이건 최소한의 숫자라고 봐야 합니다. 이것보다 훨씬 많은 계정들이 스타게이저고스트에 소속되어 있을 가능성인 높습니다. 깃허브가 차단하지 않는 것도 아닌데 이 네트워크가 살아남아 있다는 건, 가짜 계정을 식별하고 정의하는 부분에 있어 근본적인 변화가 필요한 것 아닌가 하는 생각이 들게 합니다.”
[국제부 문가용 기자(globoan@boannews.com)]
<저작권자: 보안뉴스(www.boannews.com) 무단전재-재배포금지>