2016년 12월 중순경부터 보안 패치가 제대로 적용되지 않은 PC 환경에서 웹 사이트 방문 과정에서 악성 스크립트에 노출될 경우 취약점(Exploit)을 통해 자동 감염되는 Sage 랜섬웨어(Ransomware)가 유포되기 시작하였습니다.

 

초기에 유포된 Sage 랜섬웨어는 다음과 같이 암호화 대상 파일을 특정 위치로 복사한 후 암호화를 진행하는 특징을 가지고 있었습니다.

 

  • C 드라이브의 경우 : (원본 파일명).(원본 확장명) → %Temp%\0.tmp / 1.tmp / 2.tmp / 3.tmp <파일 암호화> → (원본 파일명).(원본 확장명).sage
  • D 드라이브의 경우 : (원본 파일명).(원본 확장명) → D:\0.tmp / 1.tmp / 2.tmp / 3.tmp <파일 암호화> → (원본 파일명).(원본 확장명).sage

 

위와 같이 암호화 대상 파일을 임시 폴더(%Temp%) 또는 루트 폴더 영역에 원본 파일을 .tmp 확장명으로 복사 및 파일 암호화를 진행한 후 원본 파일 위치로 암호화된 파일(.sage)을 이동한 후 원본 파일을 삭제하는 방식으로 진행되었습니다.

 

이후 2017년 1월경 Sage 2.0 / 2.2 버전으로 발전하면서 현재까지 국내에서 Cerber 랜섬웨어와 함께 가장 감염이 많이 발생하고 있는 대표적인 랜섬웨어(Ransomware)가 되었습니다.

 

이 글에서 Sage 2.2 버전을 기준으로 감염 후 파일 암호화 및 시스템에 영향을 주는 부분에 대해 간단하게 살펴보도록 하겠습니다.

 

Sage 2.2 랜섬웨어(Ransomware)에 감염되어 파일 암호화가 완료된 경우에는 암호화된 파일은 열쇠 아이콘 모양으로 변경되며, 암호화된 파일은 (원본 파일명).(원본 확장명).sage 형태로 수정됩니다.

 

 

파일 암호화 과정을 살펴보면 "(원본 파일명).(원본 확장명) → (원본 파일명).(원본 확장명)..." 형태로 변경한 후 파일 암호화를 진행하며, 이런 이유는 비정상적인 확장명(...) 형태로 수정하여 행위 기반으로 차단하지 못하게 방해하는 것으로 보입니다.

 

 

파일 암호화가 완료된 후에는 "(원본 파일명).(원본 확장명)... → (원본 파일명).(원본 확장명).sage" 형태로 확장명을 수정합니다.

 

 

이후 암호화되지 않은 원본 파일을 복구할 수 없도록 완전 삭제하며, 추가적으로 다음과 같은 명령어를 통해 시스템 복원을 하지 못하게 합니다.

 

  • "C:\Windows\System32\vssadmin.exe" delete shadows /all /quiet
  • "C:\Windows\System32\bcdedit.exe" /set {default} recoveryenabled no
  • "C:\Windows\System32\bcdedit.exe" /set {default} bootstatuspolicy ignoreallfailures

 

만약 파일 암호화가 진행되는 것을 확인한 사용자가 PC를 종료할 경우를 대비하여 Sage 2.2 랜섬웨어는 시스템 부팅 시 어떻게 자동 실행되도록 파일을 구성하는지 살펴보도록 하겠습니다.

 

  • C:\Users\%UserName%\AppData\Roaming\qkY6Iq4G.exe

 

취약점(Exploit)을 통해 자동 설치된 Sage 2.2 랜섬웨어는 일반적으로 %AppData% 폴더에 랜덤(Random) 파일명을 가진 악성 파일을 생성 및 실행되어 파일 암호화가 진행됩니다.

 

 

  • C:\Users\%UserName%\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup\84JZacBb.lnk

 

파일 암호화 행위를 수행하는 악성 파일을 부팅 시마다 자동 실행할 목적으로 시작프로그램 폴더에 랜덤(Random)한 바로 가기(.lnk) 파일을 추가하여 %AppData%\(Random).exe 파일을 자동 실행하도록 합니다.

 

특히 사용자 계정 컨트롤(UAC) 우회 목적 및 더욱 교묘하게 자신을 실행할 목적으로 "Microsoft Management Console" 파일(C:\Windows\System32\mmc.exe)이 실행될 경우 자신이 실행되도록 다음과 같이 레지스트리 값을 수정합니다.

 

 

HKEY_CLASSES_ROOT\mscfile\shell\open\command
 - (기본값) = %SystemRoot%\system32\mmc.exe "%1" %* :: 변경 전
 - (기본값) = "C:\Users\%UserName%\AppData\Roaming\qkY6Iq4G.exe" :: 변경 후

 

위와 같은 레지스트리 값 수정을 통해 예를 들어 사용자가 이벤트 뷰어를 실행할 경우 "C:\Windows\System32\mmc.exe" "C:\Windows\System32\eventvwr.msc" 형태로 실행되어야 하는데 "C:\Windows\System32\mmc.exe" "C:\Users\%UserName%\AppData\Roaming\qkY6Iq4G.exe" 형태로 실행되어 Sage 2.2 랜섬웨어가 자동 실행됩니다.

 

그러므로 Sage 2.2 랜섬웨어에 감염되었던 사용자는 반드시 수정된 레지스트리 값을 이전 기본값으로 수정하지 않을 경우 시스템의 일부 기능이 실행되지 않을 수 있습니다.

 

파일 암호화가 완료된 후 생성되는 랜섬웨어 메시지 파일은 Sage 초기 버전과 Sage 2.0 버전까지는 한글을 지원하지 않았습니다.

 

  • Sage 랜섬웨어 (초기 버전) 메시지 파일 : !Recovery_<6자리 Random>.html / !Recovery_<6자리 Random>.txt
  • Sage 2.0 랜섬웨어 메시지 파일 : !Recovery_<3자리 Random>.html

 

 

하지만 Sage 2.2 랜섬웨어부터는 Cerber 랜섬웨어처럼 한국어(Korean) 메시지가 추가된 !HELP_SOS.hta 파일을 생성하여 암호화 사실을 안내하고 있습니다.

 

특히 "C:\Windows\System32\WScript.exe" "C:\Users\%UserName%\AppData\Local\Temp\f1.vbs" 실행을 통해 Cerber 랜섬웨어처럼 텍스트 음성 변환(TTS) 기능을 이용한 안내가 특정 시간 주기로 출력됩니다.

 

Attention! Attention! This is not a test!
All you documents, data bases and other important files were encrypted and Windows can not restore them without special software.
User action is required as soon as possible to recover the files

 

Cerber 랜섬웨어의 경우 음성 메시지가 연속적으로 출력되는 반면 Sage 2.2 랜섬웨어에서는 1회 음성 출력 후 일정 시간이 경과 후 음성이 나오는 차이가 있습니다.

 

 

또한 "C:\Users\%UserName%\AppData\Local\Temp\P5O.bmp" 그림 파일을 생성하여 바탕 화면 배경을 수정합니다.

 

현재 국내 인터넷 사용자 중 랜섬웨어에 감염되는 대부분은 Cerber, Sage 랜섬웨어로 양분되어 있으며, 특히 한글 메시지를 제공한다는 점은 Sage 랜섬웨어 감염자 중 요구하는 비트코인(Bitcoin)을 지불하고 복구하는 피해자가 많다는 반증일 것입니다.

 

현재 Sage 랜섬웨어 감염으로 인하여 파일 암호화가 탐지될 경우 AppCheck 안티랜섬웨어 제품은 차단 및 일부 암호화된 파일을 자동 복원까지 지원하고 있습니다.

 

그러므로 Sage 랜섬웨어에 의해 피해를 입지 않도록 백신과 함께 랜섬웨어 차단 솔루션을 함께 사용하시기 바라며, 앞서 언급한 것처럼 Sage 랜섬웨어 감염에 노출되었던 사용자는 악성 파일이 재실행되지 않도록 자동 실행값을 찾아 삭제 및 레지스트리 값 수정을 하시기 바랍니다.

신고
블로그 이미지

벌새

울지않는벌새가 되고 싶은 나..

티스토리 툴바