2018년 1월 26일 전후부터 유포되기 시작하여 최근까지 꾸준하게 확인되고 있는 GandCrab 랜섬웨어에 대해 전체적으로 살펴보도록 하겠습니다.
초기에 유포된 GandCrab 랜섬웨어는 보안 패치가 제대로 이루어지지 않은 PC 환경에서 웹 사이트 접속 중에 취약점(Exploit)을 통해 자동 감염되는 방식으로 진행되었으며, 최종 다운로드된 악성 파일 정보는 다음과 같습니다.
- 1월 26일 ~ 1월 28일 : C:\Users\%UserName%\AppData\Local\Temp\b<숫자>.exe 또는 C:\Users\%UserName%\AppData\Local\Temp\bi<숫자>.exe
- 1월 27일 ~ 2월 7일 : C:\Users\%UserName%\AppData\Roaming\Microsoft\<Random>.exe
그러던 중 2018년 2월에는 취약점 방식이 아닌 메일 첨부 파일 형태로 유포 방식이 전환되기 시작되었습니다.
대표적인 방식을 살펴보면 메일에 첨부된 PDF 문서 파일(SHA-1 : c9433b8dfbb2c6b77fd102ae58b804039ce70386 - BitDefender : Trojan.PDF.Agent.PO)을 사용자가 실행할 경우 챕차(CAPTCHA) 기능처럼 위장한 "I'm not a robot" 체크 박스 영역을 사용자가 클릭할 경우 외부에서 Feb-00974.doc 파일명을 가진 MS Word 문서를 추가 다운로드를 시킵니다.
사용자가 다운로드된 Feb-00974.doc 문서 파일(SHA-1 : 9742c3bd6845af4134f53764afcc60de6458f0d9 - Norton : W97M.Downloader)을 직접 실행하여 오픈할 경우 다음과 같은 화면을 볼 수 있습니다.
실행된 MS Word 문서를 오픈할 경우 기본적으로 보안 경고를 통해 내부에 포함된 매크로(Macro) 실행을 차단하여 사용자가 해당 매크로 실행을 허용하도록 유도합니다.
사용자가 매크로 실행을 허용할 경우 PowerShell 모드로 sct5 파일(SHA-1 : d9fb7d948fb35550a6fe82c9c94fb609d9a1f682 - Microsoft : TrojanDownloader:PowerShell/GandCrab)을 추가 다운로드 및 실행할 수 있습니다.
다운로드된 sct5 파일 내부에는 "function Invoke-GandCrab" 코드 하단에 난독화된 PE 코드가 포함되어 있으며, 내부 코드를 확인해보면 금융 정보를 탈취할 수 있는 Dridex 악성코드(.exe)와 GandCrab 랜섬웨어(.dll) 2종의 악성코드가 실행될 수 있는 것으로 보입니다.
테스트 시점에서는 GandCrab 랜섬웨어 행위는 확인되지 않는 대신 특정 러시아(Russia) 메일 계정(zmail.ru)에 대한 로그인 시도가 이루어지는 부분이 확인되는 것으로 보아 Dridex 악성코드 행위가 발견되고 있습니다.
위와 같은 메일 첨부 파일을 통해 GandCrab 랜섬웨어가 유포되어 실행되는 과정을 간단하게 살펴보았으며, 실제 GandCrab 랜섬웨어에 감염될 경우 관련 정보를 간단하게 살펴보도록 하겠습니다.
사례에서는 2018년 2월 15일경 해외에서 발견된 GandCrab 랜섬웨어 변종으로 "C:\Users\%UserName%\AppData\Local\Temp\WinNtBackend-454298201552995.tmp.exe" 파일 형태(SHA-1 : f380a665b083c8d41cfd250f6673592bfefd9786 - Kaspersky : Trojan-Ransom.Win32.GandCrypt.fn)로 생성되어 파일 암호화가 진행됩니다.
랜섬웨어가 실행되면 ipv4bot.whatismyipaddress.com IP 조회 서비스를 이용하여 감염자 PC의 IP 정보를 "nomoreransom.coin" 서버로 전송합니다.
이후 "C:\Windows\SysWOW64\nslookup.exe" 파일을 통해 gandcrab.bit, nomoreransom.bit, nomoreransom.coin, dns1.soprodns.ru, dns2.soprodns.ru 서버에 대한 DNS 쿼리 조회를 진행합니다.
이후 "nomoreransom.coin/curl.php?token=" C&C 서버와 성공적으로 키교환 통신이 이루어질 경우 파일 암호화가 진행될 수 있습니다.
파일 암호화 시에는 실행 중인 프로세스 중 "agntsvc.exeagntsvc.exe, agntsvc.exeencsvc.exe, agntsvc.exeisqlplussvc.exe, dbeng50.exe, dbsnmp.exe, firefoxconfig.exe, infopath.exe, msaccess.exe, msftesql.exe, mydesktopqos.exe, mydesktopservice.exe, mysqld-nt.exe, mysqld-opt.exe, mysqld.exe, ocautoupds.exe, onenote.exe, oracle.exe, outlook.exe, powerpnt.exe, sqbcoreservice.exe, sqlagent.exe, sqlbrowser.exe, sqlservr.exe, sqlwriter.exe, synctime.exe, tbirdconfig.exe, thebat.exe, thebat64.exe, thunderbird.exe, winword.exe, wordpad.exe, xfssvccon.exe" 32종의 프로세스가 존재할 경우 종료 후 파일 암호화가 진행됩니다.
- 암호화 제외 폴더 : \All Users\, \Local Settings\, \Program Files\, \ProgramData\, \Tor Browser\, \Windows\
- 암호화 제외 파일명 : autorun.inf, bootsect.bak, desktop.ini, GDCB-DECRYPT.txt, iconcache.db, ntuser.dat, ntuser.dat.log, Ransomware
또한 특정 폴더 및 파일명을 가진 경우에는 GandCrab 랜섬웨어에 의한 파일 암호화가 이루어지지 않도록 처리됩니다.
그 외에 "ashDisp.exe, avengine.exe, cmdagent.exe, fsguiexe.exe, Mcshield.exe, msmpeng.exe, NortonAntiBot.exe, pccpfw.exe, persfw.exe" 백신 프로그램 관련 프로세스 정보를 체크하는 기능이 포함되어 있습니다.
GandCrab 랜섬웨어에 의해 암호화된 파일은 .GDCB 확장명이 추가되며, 암호화 대상 폴더 영역에는 GDCB-DECRYPT.txt 랜섬웨어 메시지 파일이 각각 생성됩니다.
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\RunOnce
- <Random> = C:\Users\%UserName%\AppData\Local\Temp\WinNtBackend-454298201552995.tmp.exe
또한 GandCrab 랜섬웨어는 기본적으로 Windows 시작 시 RunOnce 시작 프로그램 등록값을 통해 자동 실행되며, 실행되어 파일 암호화가 완료된 후에는 종료되지 않고 로컬 디스크, 외장 하드, 네트워크 드라이브 영역에 새로운 암호화 대상 파일이 생성될 경우 지속적으로 파일 암호화가 진행될 수 있습니다.
GDCB-DECRYPT.txt 메시지 파일에서는 Tor 웹 브라우저를 이용하여 특정 .onion 페이지로 접속을 유도하는 내용으로 구성되어 있으며, Windows 부팅 시마다 자동 실행되도록 "C:\Users\%UserName%\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup\GDCB-DECRYPT.txt" 파일로 추가합니다.
이후 일정 시간이 경과될 경우 웹 브라우저를 통해 GandCrab Decryptor 페이지로 연결을 시도하는 행위가 이루어집니다.
GandCrab Decryptor 결제 페이지를 확인해보면 감염자 PC 정보와 함께 2MB 이하 파일 크기를 가진 특정 확장명 파일(.txt, .jpg, .jpeg, .bmp, .png, .gif) 1개에 대하여 테스트 목적으로 복호화를 무료로 지원해 주고 있습니다.
결제를 위해서는 0.89 DASH 암호 화폐를 특정 주소로 지불하도록 안내하고 있으며, 41시간이 경과할 경우에는 1.78 DASH로 가격이 2배로 상승한다고 안내하고 있습니다.
GandCrab 랜섬웨어의 최초 등장부터 현재까지 발견된 모든 변종에 대하여 AppCheck 안티랜섬웨어는 정상적으로 차단 및 일부 훼손된 파일에 대하여 자동 복원을 지원하는 것을 확인할 수 있었습니다.
기존의 랜섬웨어와는 다르게 DASH 암호 화폐를 통한 지불을 요구한다는 점과 취약점 및 메일 유포 방식으로 1월 하순경부터 최근까지 꾸준하게 유포가 이루어지고 있다는 점에서 GandCrab 랜섬웨어에 의한 피해가 앞으로도 지속될 가능성이 높아 보이므로 중요 파일에 대한 백업 및 안티랜섬웨어 제품을 함께 사용하시기 바랍니다.