본문 바로가기

벌새::Analysis

ZIP 압축 파일 내 .js 스크립트 파일로 감염되는 Sodinokibi 랜섬웨어 주의 (2020.4.14)

2018년경에 블로그를 통해 한 번 소개한 적이 있는 .js 스크립트 파일을 통한 랜섬웨어(Ransomware) 유포 방식이 최근까지도 꾸준하게 피해를 유발하고 있기에 최근 방식에 대해 다시 한 번 살펴보도록 하겠습니다.

 

북한 폰트 파일로 위장한 GandCrab 랜섬웨어 (v4) 유포 방식 (2018.7.8)

 

해당 유포 방식은 GandCrab 랜섬웨어(Ransomware) 유포에 처음으로 등장하였으며, 현재까지도 전혀 변경된 점이 없지만, 활동이 종료된 GandCrab 랜섬웨어 이후 등장한 Sodinokibi 랜섬웨어 유포에서도 여전히 일부 인터넷 사용자들이 부주의한 파일 다운로드로 인하여 감염 피해를 당하고 있습니다.

 

인터넷 검색 결과

Chrome 또는 MS Edge 웹 브라우저의 기본 검색 엔진을 이용하여 인터넷 검색을 하는 과정에서 위와 같은 유형의 검색 결과를 클릭할 수 있습니다.

 

랜섬웨어 악성 파일 다운로드 페이지

연결된 웹 페이지는 "QUESTIONS AND ANSWERS" 타이틀로 구성되어 있으며 한글로 작성된 내용 속에 파일 다운로드 링크가 포함되어 있습니다.

 

재접속 시 변경된 웹 페이지 모습

이전과 마찬가지로 만약 사용자가 파일 다운로드 페이지에 1회 접속 후 재접속을 할 경우에는 자신을 감추기 위하여 다른 화면을 표시하여 파일 다운로드를 연속적으로 할 수 없도록 합니다.

 

다운로드한 ZIP 압축 파일과 내부 .js 스크립트 파일

사용자가 다운로드한 파일은 ZIP 압축 파일이며, 해당 압축 파일 내에는 .js 스크립트 파일 1개가 존재합니다.

 

.js 스크립트 파일 코드

ZIP 압축 파일 내에 존재하는 .js 스크립트 파일을 확인해보면 난독화가 되어 쉽게 어떤 기능을 하는지 알 수 없도록 제작되어 있으며, 사용자가 실행할 경우 "C:\Windows\System32\WScript.exe" "<파일 경로>\내_컴퓨터(wynyz4bwfoc1h0olqakek4nei281ntf16k8li7xni03d0e9).js" 방식으로 동작하여 외부 서버로부터 Sodinokibi 랜섬웨어 기능을 수행하는 Windows PowerShell 스크립트 파일을 추가 다운로드하는 기능입니다.

 

추가 다운로드된 Windows PowerShell 스크립트 파일 코드

C:\Users\%UserName%\AppData\Local\Temp\<Random>.db
C:\Users\%UserName%\AppData\Local\<Random>.dat
C:\Users\%UserName%\AppData\Local\<Random>.dll
C:\Users\%UserName%\AppData\Roaming\<Random>.ico
C:\Users\%UserName%\AppData\<Random>.ps1
C:\Users\%UserName%\Downloads\<Random>.ps
C:\Users\%UserName%\<Random>.gif
C:\Users\%UserName%\<Random>.txt
C:\Users\%UserName%\<Random>.zip

 

.js 스크립트 파일을 통해 추가 다운로드된 Windows PowerShell 스크립트 파일은 변종에 따라 위와 같은 위치와 파일 패턴으로 생성될 수 있으며, 운영 체제 환경에 따라 다음과 같은 방식으로 실행됩니다.

 

x64 운영 체제 : "C:\Windows\SysWOW64\WindowsPowerShell\v1.0\powershell.exe" -windowstyle hidden -command "iex ((get-content 'C:\Users\%UserName%\<Random>.txt').'replace'('~',''));"
x86 운영 체제 : "C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe" -windowstyle hidden -command "iex ((get-content 'C:\Users\%UserName%\<Random>.txt').'replace'('~',''));"

AhnLab V3 Lite 백신 체크 코드

<ASEC 블로그> V3Lite 제품에 대한 진단 우회 시도 (GandCrab v5.2) (2019.4.11)

 

특히 이 과정에서 AhnLab V3 Lite 백신 프로그램이 설치되어 있는지 체크를 하여 설치된 환경인 경우 다음과 같은 업데이트 파일에 코드 인젝션을 통해 파일 암호화를 진행할 수 있습니다.

 

C:\Program Files\AhnLab\V3Lite30\MUpdate2\Update\autoup.exe
C:\Program Files\AhnLab\V3Lite40\MUpdate2\Update\autoup.exe

 

만약 AhnLab V3 Lite 백신 사용자가 아닌 경우에는 Windows PowerShell 파일(powershell.exe)을 이용하여 파일 암호화가 진행됩니다.

 

Sodinokibi 랜섬웨어의 파일 암호화 진행 시에는 Windows PowerShell 기능을 통해 "powershell -e RwBlAHQALQBXAG0AaQBPAGIAagBlAGMAdAAgAFcAaQBuADMAMgBfAFMAaABhAGQAbwB3AGMAbwBwAHkAIAB8ACAARgBvAHIARQBhAGMAaAAtAE8AYgBqAGUAYwB0ACAAewAkAF8ALgBEAGUAbABlAHQAZQAoACkAOwB9AA==" 코드 실행이 이루어지며 이를 통해 ShadowCopy 복사본 파일을 삭제(G e t - W m i O b j e c t   W i n 3 2 _ S h a d o w c o p y   |   F o r E a c h - O b j e c t   { $ _ . D e l e t e ( ) ; })하여 파일 복구를 할 수 없도록 합니다.

 

Sodinokibi 랜섬웨어에 의해 암호화된 파일 유형

Sodinokibi 랜섬웨어는 .<5~10자리 Random 확장명> 패턴으로 파일 암호화가 진행되며, 각 암호화 대상 폴더마다 <암호화 확장명>-readme.txt 메시지 파일을 생성합니다.

 

Sodinokibi 랜섬웨어 메시지 파일(<암호화 확장명>-readme.txt)

생성된 메시지 파일에는 Tor 웹 브라우저를 이용한 접속 주소(URL)와 키(Key) 정보 등이 포함되어 있습니다.

 

바탕 화면 배경 메시지

파일 암호화 완료 시점에서는 바탕 화면 배경을 "C:\Users\%UserName%\AppData\Local\Temp\<Random>.bmp" 그림 파일로 변경하여 파란색 배경에 "All of your files are encrypted!" 안내 메시지를 표시합니다.

 

Sodinokibi 랜섬웨어 결제 안내 페이지 (1)

실제로 접속을 진행해보면 랜섬웨어 메시지 파일에 포함된 키(Key)를 입력한 후 제시된 CAPTCHA 문자를 제출하도록 되어 있습니다.

 

Sodinokibi 랜섬웨어 결제 안내 페이지 (2)

정상적으로 접속된 페이지에서는 7일 이내에 $1,500 수준의 Monero (XMR) 암호 화폐를 요구하고 있으며, 기간이 경과될 경우 2배로 가격 상승이 있음을 경고합니다.

 

참고로 최근 Sodinokibi 랜섬웨어는 Bitcoin 결제 방식의 경우 추적될 수 있다는 문제로 인하여 Monero 화폐로 변경이 이루어진 상태입니다.

 

기존의 GandCrab 랜섬웨어 유포 방식부터 현재까지 최소 2년 이상 장기간에 걸쳐 동일한 파일 다운로드 페이지 모양을 가진 유포 활동이 진행되고 있는데 이런 정보를 모르는 일부 사용자들이 의심없이 다운로드한 파일이 정상적인 파일로 착각하고 실행하여 랜섬웨어 피해를 지속적으로 당하고 있습니다.

 

AppCheck 안티랜섬웨어 차단 모습

그러므로 .js 스크립트 파일 실행을 통해 파일 암호화가 진행되는 일련의 과정 속에서 정상적인 Windows 파일을 이용한 동작이 이루어지며 이로 인하여 난독화된 .js 스크립트 파일을 백신 프로그램에서 탐지하지 못할 경우 피해를 당할 수 있으므로 랜섬웨어로부터 조금 더 안전하게 시스템을 보호하기 위해서는 AppCheck 안티랜섬웨어 제품을 함께 사용하시는 것이 좋습니다.