최종 목표는 크리덴셜 탈취...다행히 분석 통해 악성 도메인 주소와 RC4 키 발견
[보안뉴스 문가용 기자] 제우스 스핑크스(Zeus Sphinx)라는 뱅킹 트로이목마가 코로나 사태를 타고 다시 떠오르기 시작했다. 원래 12월부터 슬슬 모습을 보이기 시작했는데, 3월에 ‘코로나’를 미끼로 삼으면서 급증했다. 4월부터는 미국인들과 조직들을 집중적으로 노리는 모습이 나타났는데, 궁극적인 목적은 온라인 뱅킹 세션으로부터 개인정보를 훔치는 것이라고 한다.

[이미지 = iclickart]
이를 제일 먼저 발견한 IBM 엑스포스(X-Force) 팀의 니르 슈와츠(Nir Shwarts)와 리모 케셈(Limor Kessem)은 자사 블로그를 통해 “스핑크스 운영자들은 지난 몇 년 동안 늘 이렇게 사라졌다가 다시 나타났다가를 반복했다”며 “다시 나타날 때마다 새로운 기능과 전략을 동원했는데, 지금이 그런 시기인 것 같다”고 설명했다.
먼저 스핑크스 멀웨어는 시스템 리부트 시 사라지는 것을 막기 위해 런(Run) 키를 윈도우 레지스트리에 추가한다. 이번에 등장한 최신 버전의 경우에도 비슷한 시도를 하는데, 페이로드 형태에 따라 실행파일이나 DLL의 방식을 취한다고 한다. 브라우저 기능들을 후킹할 수도 있다. “하지만 OS 단에 잘 숨어드는 것부터 성공시켜야 브라우저 후킹도 가능합니다. 그래서 스핑크스는 악성 코드를 다른 프로세스들에 주입하는 것부터 실시합니다.”
보다 구체적으로 설명하자면 스핑크스는 CreateProcessA 함수를 호출해 새로운 프로세스를 만든 후 WriteProcessMemory 함수를 호출해 페이로드를 msiexec.exe 프로세스에 주입한다고 한다. msiexec.exe는 주로 윈도우 설치 프로세스에서 사용되는 이름인데, 공격자들이 이를 그대로 가져다가 활용한다는 건 결국 최대한 눈에 띄지 않기 위해서라고 엑스포스 전문가들은 설명한다.
다음으로 스핑크스는 표적이 된 프로세스의 실행 지점을 변경한다. 주입된 페이로드에서부터 프로세스가 시작되도록 하는 것이다. 이 때 GetThreadContext와 SetThreadContext라는 함수들을 활용한다고 한다. 전자는 원격 프로세스의 명령어 포인터를 취득하는 데 활용되고, 후자는 원격 프로세스의 명령어 포인터를 설정하는 데 활용된다.
한편 msiexec.exe에 주입된 실행파일은 암호화 된 환경설정 내용을 적용시킨다. 내용 중 멀웨어 변종의 ID가 obnovlenie2020라는 이름으로 표기되어 있는 것이 발견됐는데, 이는 러시아어로 ‘2020 업그레이드’라는 뜻을 가지고 있다고 한다. 뿐만 아니라 하드코드 된 C&C 서버 도메인 목록과 RC4 키도 환경설정 파일에서 발견됐다.
엑스포스 팀은 “이 정도 정보만 있으면 특정 도메인들을 블랙리스트화 하는 등의 조치를 취해 스핑크스의 공격을 어느 정도 막을 수 있다”며 “RC4 키 역시 멀웨어 분석에 있어 큰 도움이 된다”고 썼다. 하지만 스핑크스 캠페인이 계속 진행되면서 환경설정 내용이 조금씩 바뀌는 모습이 발견되기도 했다. 예를 들어 C&C 주소라든가 RC4 키가 최근 공격에서 달라졌다. 운영자들이 업데이트를 꾸준히 푸시하는 것으로 보인다.
“스핑크스에 감염된 장비들은 기기 세부 정보를 공격자들의 서버에 전송하고, 서버는 이를 접수하고 개별적으로 ID를 부여합니다. 봇 하나하나에 고유한 이름을 붙이는 것이죠. 이런 시스템을 사용해 원격에서 편리하고 유연하게 제어하고 관리합니다. ID 자체는 RC4로 암호화 되고, 이런 정보가 저장된 환경설정 파일은 다른 바이너리 데이터와 함께 레지스트리에 저장됩니다. 하나의 은밀한 봇이, 거대한 봇넷의 수하에 들어가게 되는 겁니다.”
스핑크스가 처음 발견된 것은 2015년 8월의 일이다. 당시 악명이 높았던 제우스(Zeus)의 소스코드가 유출되는 일이 있었는데, 이 소스코드를 기반으로 탄생한 것이 스핑크스다. 제우스가 뱅킹 멀웨어였기 때문에 스핑크스도 태생이 뱅킹 멀웨어다. 스핑크스에 감염된 장비 주인이 특정 은행 포털이나 서비스 사이트에 접속하면, 스핑크스가 C&C 서버로부터 악성 웹 인젝트를 가져와 페이지를 동적으로 조작함으로써 피해자들을 속였다. 속은 피해자들이 입력한 로그인 정보는 공격자들에게로 전달됐다.
하지만 시간이 지나면서 스핑크스도 점차 변했다. 일단 다크웹에서 거래되는 흔한 상품이 되면서 여러 공격자들이 다양한 방법으로 스핑크스를 활용하기 시작했다. 따라서 불규칙적으로 나타났다가 사라지고, 예측하기 힘든 방향의 업그레이드가 이뤄지는 것이라고 엑스포스 팀은 설명한다.
스핑크스 제우스는 지로더(Zloader) 혹은 테르돗(Terdot)이라는 이름으로도 불린다. 주로 북미 시장에서 활동하며 피해자들도 그쪽 지역에서 많이 나타나지만, 다른 나라라고 해서 안전한 건 아니다. 지난 5년 동안 브라질, 영국, 캐나다, 호주, 일본 등에서 스핑크스의 활동이 목격되곤 했었다.
슈와츠와 케셈은 “스핑크스가 돌아왔다는 걸 금융 업계가 알아채고 방어를 시작해야 한다”며 이번 보고서 발표의 목적을 밝혔다. “스핑크스는 금융 업계에 이따금씩 나타나는 위협 요소입니다. 제우스 때부터 유명했죠. 온라인과 모바일 뱅킹이 활성화 되고 있는 요즘, 스핑크스 공격은 그 어느 때보다 더 위험할 수 있습니다. 이런 사실을 인지하고 방어 체계를 구축해야 할 것입니다. 특히 이번 스핑크스 캠페인은 코로나를 테마로 하고 있다는 걸 기억하면 방어에 도움이 될 것입니다.”
3줄 요약
1. 코로나를 테마로 한 공격 증가하면서 잠자고 있던 스핑크스도 깨어남.
2. 개인정보를 훔쳐내는 것을 목적으로 하며, 여러 가지 업그레이드를 거쳤음.
3. 금융 업계에 특히 위험하니, 스핑크스 멀웨어에 대한 정보 미리 파악해 방어 준비 진행해야 할 것.
Copyrighted 2015. UBM-Tech. 117153:0515BC
[국제부 문가용 기자(globoan@boannews.com)]
<저작권자: 보안뉴스(www.boannews.com) 무단전재-재배포금지>