폭발적으로 증가하는 가상 화폐에 대한 관심과 투자에 따라 가상 화폐 채굴(Miner) 기능을 포함한 악성코드가 다양한 유포 방식으로 사용자 PC에 설치되는 부분에 대해 블로그를 통해 지속적으로 소개해 드리고 있습니다.
이번에는 접속한 웹 사이트에서 쉽게 접할 수 있는 구글 애드센스(Google AdSense) 광고 배너를 통해 유포되는 가상 화폐 채굴 악성코드 사례를 살펴보도록 하겠습니다.
2017년 1월 4일경 국내 유명 커뮤니티 사이트에서 노출되는 Google AdSense 광고 배너 중 "WARNING! YOUR COMPUTER IS INFECTED" 메시지를 표시하여 무료 안티바이러스 프로그램을 다운로드하도록 유도하는 배너를 확인할 수 있습니다.
사용자가 배너를 클릭할 경우 아마존(Amazon) 서버에서 ESET NOD32 백신 프로그램처럼 위장한 EsetNod32_51.2.1.exe 파일(SHA-1 : ac0ab8ecc19cc62e76884df3c051734afaeb8cb1 - Kaspersky : Trojan.Win32.Miner.tgqk)이 다운로드되는 것을 확인할 수 있습니다.
우선 Google AdSense 광고 배너쪽을 살펴보면 "tpc.googlesyndication.com" 광고 서버를 통해 광고 배너가 노출되며 클릭 시 악성 파일이 즉시 다운로드되는 형태임을 알 수 있습니다.
광고 배너 부분을 더 자세하게 접근해보면 원래는 러시아의 특정 사이트(crandon.ru) 광고 배너가 먼저 노출된 후 특정 러시아 서버(.ru)로 자동 연결되어 문제의 광고 배너가 최종적으로 노출되는 것을 알 수 있습니다.
다운로드된 ESET NOD32 백신 프로그램으로 위장한 악성 파일은 2018년 1월 2일경 서버에 등록되어 유포가 시작된 것으로 추정됩니다.
생성 폴더 / 파일 및 진단 정보 |
C:\Users\%UserName%\AppData\Roaming\1337 C:\Users\%UserName%\AppData\Roaming\1337\EsetNod32_13.1.1.exe - SHA-1 : 3f321616acb865db5ccbd61c4dc1081f0265d980 C:\ProgramData\SystemIdle.exe :: 숨김(H)/시스템(S) 파일 속성, 작업 스케줄러(ServiceRun) 등록 파일, 메모리 상주 프로세스 - SHA-1 : 4b9e9d79082076727e616c9b2e6a038ed1da6ef0 - BitDefender : Gen:Variant.Zusy.271394 C:\Windows\System32\Tasks\Windowss C:\Windows\System32\Tasks\Windowss\Data C:\Windows\System32\Tasks\Windowss\Data\ServiceRun |
실행된 악성 파일은 "C:\Users\%UserName%\AppData\Roaming\1337" 폴더에 EsetNod32_23.1.0.exe, EsetNod32_13.1.1.exe 파일을 생성한 후 EsetNod32_23.1.0.exe 파일은 "C:\ProgramData\SystemIdle.exe" 파일로 자가 복제한 후 자동 삭제 처리됩니다.
"C:\Users\%UserName%\AppData\Roaming\1337\EsetNod32_13.1.1.exe" 파일의 기능을 살펴보면 최초 실행 시 "h**p://46.101.225.105/joker/ter.php" 서버로 정보를 전송하는 행위를 수행합니다.
코드를 확인해보면 사용자 시스템 Process 정보를 기반으로 한 식별 정보를 전송할 것으로 보이며, 실제 전송되는 패킷을 보면 식별 ID와 CPU 정보가 포함되어 있는 것을 알 수 있습니다.
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Schedule\TaskCache\Tasks\{CD1BA11E-3D55-47C8-B3E1-0A1575247562}
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Schedule\TaskCache\Tree\Windowss
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Schedule\TaskCache\Tree\Windowss\Data
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Schedule\TaskCache\Tree\Windowss\Data\ServiceRun
해당 악성코드의 실행 방식은 시스템 시작 시 "Windowss → Data → ServiceRun" 작업 스케줄러 영역에 등록된 자동 실행값을 통해 "C:\ProgramData\SystemIdle.exe" 파일을 실행하며, 해당 파일은 1분 단위로 재실행이 이루어지도록 설정되어 있습니다.
Themida 패킹으로 제작된 "C:\ProgramData\SystemIdle.exe" 악성 파일은 실행 시마다 다음과 같은 동작을 수행할 수 있습니다.
① 최초 감염 시 추가된 ServiceRun 작업 스케줄러를 재등록(schtasks /create /tn \Windowss\Data\ServiceRun /tr "C:\ProgramData\SystemIdle.exe" /st 00:00 /sc once /du 9999:59 /ri 1 /f)합니다.
② 쉽게 찾을 수 없도록 숨김(H), 시스템(S) 파일 속성으로 설정된 "C:\ProgramData\SystemIdle.exe" 파일의 속성값이 풀리지 않도록 실행 시마다 [attrib +s +h "C:\ProgramData\SystemIdle.exe"] 명령어를 실행합니다.
③ 최초 실행 시 작업 관리자(Taskmgr.exe) 또는 ProcessHacker.exe 프로세스가 실행 중인 경우에는 자동 종료 처리됩니다.
만약 실행 조건에 만족할 경우 실행된 "C:\ProgramData\SystemIdle.exe" 악성 파일은 "C:\Windows\System32\attrib.exe" 시스템 파일에 인젹션하여 가상 화폐 채굴 행위를 수행하게 되며, 기본적으로 약 50% 수준의 CPU 사용량을 보입니다.
채굴 행위를 확인해보면 모네로(Monero) 가상 화폐 채굴을 위해 "xmr.pool.minergate.com (176.9.0.89:45560)" 접속을 통해 작업이 진행됩니다.
사용자가 실수로 광고 배너를 통해 다운로드된 파일을 실행할 경우 가상 화폐 채굴 행위는 CPU 사용량을 통해 인지할 수 있을지라도 악성 파일 및 자동 실행값을 찾는데 어려움이 예상되므로 인터넷 상에서 표시되는 경고 메시지에 겁을 먹고 다운로드된 파일을 함부로 실행하는 일이 없도록 하시기 바랍니다.