상세 컨텐츠

본문 제목

Trojan.Ransom.WannaCryptor 악성코드 분석 보고서

악성코드 분석 리포트

by 알약(Alyac) 2017. 5. 17. 18:51

본문

Trojan.Ransom.WannaCryptor 악성코드 분석 보고서



지난 주말부터 미국, 중국 등의 전세계 많은 국가로 WannaCry 랜섬웨어(Trojan.Ransom.WannaCryptor)가 전파되고 있습니다. 워너크라이(WannaCry)/워너크립터(WannaCryptor) 랜섬웨어는 기존 랜섬웨어와 달리 ‘쉐도우 브로커스’ 그룹에서 공개한 SMB 취약점(MS17-010)을 이용하여 네트워크 상으로 전파되었습니다.


이스트시큐리티는 본 보고서에서 워너크라이(WannaCry) 랜섬웨어를 살펴보고자 합니다.



악성코드 분석

※ D5DCD28612F4D6FFCA0CFEAEFD606BCF.exe 상세분석


본 파일의 경우, 악성행위를 하는 파일을 드롭 및 설치를 하는 기능을 수행합니다. 특히 최근 NSA 해킹에 악용된 취약점 MS17-010를 사용하여 네트워크를 통해 전파되는 특징이 있습니다.


1) 파일정보


FileName

 D5DCD28612F4D6FFCA0CFEAEFD606BCF.exe

 MD5

 D5DCD28612F4D6FFCA0CFEAEFD606BCF

 Size(Byte)

 3,723,264

 Detection Name

 Trojan.Ransom.WannaCry

 Time-Stamp

 2010/11/20 09:03:08 UTC

 Ransomware Version

 Wanna Cryptor 2.0

 Resource Language

 U.S. English(Unicode)

 File Description

 Microsoft® Disk Defragmenter



2) 서비스 설치 및 드로퍼 기능 수행


도메인(‘http://www.ifferfsodp9ifjaposdfjhgosurijfaewrwergwea.com’)이 존재하지 않을 경우, 서비스를 설치하고 드로퍼 기능이 수행됩니다.이는 도메인을 통하여 공격자가 원하는 시각에 감염을 시키기 위한 행위로 보입니다. 다음은 도메인 체크 코드입니다.


[그림 1] 도메인 체크 코드


도메인이 존재하지 않을 경우, 드롭 및 서비스 설치를 진행합니다. 서비스는 "Microsoft Security Center (2.0) Service"의 이름으로 생성 및 실행되며, 주요 기능은 네트워크를 통한 랜섬웨어 전파 기능을 수행합니다. 다음은 서비스 설치 코드입니다.


 [그림 2] 서비스 설치 코드


이후 리소스에 숨겨져 있는 파일을 드롭합니다. 생성되는 경로는 ‘C:\WINDOWS\tasksche.exe’입니다. 이미 해당 파일이 존재할 경우, ‘C:\ WINDOWS\qeriuwjhrf’ 이름으로 파일을 복제한 뒤, ‘C:\WINDOWS\tasksche.exe’로 리소스의 파일을 드롭 및 실행합니다. 이는 변종 유포 시, 신규 파일을 실행하기 위한 행위로 보입니다.


(*내부에 숨겨진 파일의 위치 : 리소스 ‘R’)


[그림 3] 파일 드롭 기능



3) 네트워크 전파


설치된 서비스를 통하여 네트워크를 통한 감염이 진행됩니다. 감염에 앞서 네트워크 상에 취약점이 가능한 PC가 존재 여부를 체크합니다. 다음은 취약점 체크 코드입니다.


 [그림 4] 취약점 체크 코드


취약점이 가능한 PC가 검색되었을 경우, 취약점을 터뜨리기 위한 ShellCode를 전송합니다. 다음은 전송되는 ShellCode의 일부입니다.


 [그림 5] 전송되는 ShellCode의 일부


※ tasksche.exe


본 파일은 주 악성 행위인 파일 암호화 기능을 수행하며, 주기능 외에 파일 드롭 기능을 갖고 있습니다.


1) 파일정보


 FileName

 tasksche.exe

 MD5

 84C82835A5D21BBCF75A61706D8AB549

 Size(Byte)

 3,514,368

 Detection Name 

 Trojan.Ransom.WannaCry

 Time-Stamp 

 2010/11/20 09:05:05 UTC

 Ransomware Version 

 Wanna Cryptor 2.0

 Resource Language 

 U.S. English(Unicode)

 File Description 

 DiskPart 



2) 드롭퍼 기능


워너크라이(WannaCry) 랜섬웨어는 리소스 ”XIA”에서 파일을 드롭합니다. 해당 파일은 압축파일로써 암호 “WNcry@2ol7”가 설정되어 있습니다. 이는 압축 해제를 통해 현재 실행 중인 악성코드의 경로에 드롭됩니다. 드롭 시 파일을 숨기기 위해 숨김 파일을 설정하며, “icacls . /grant Everyone:F /T /C /Q” 명령어를 사용해 현재 사용자가 PC에 대한 파일에 모두 접근할 수 있도록 권한을 설정합니다. 다음은 파일 드롭 및 실행 코드입니다.


[그림 6] 파일 드롭 및 실행 코드


드롭되는 파일의 정보는 다음과 같습니다.


 파일 

 내용 

 비고

 msg

 각 나라의 언어로 제작된 안내 파일들이 존재하는 폴더

 폴더

 b.wnry

 바탕화면BMP이미지

 -

 c.wnry

 다크웹 주소와 Tor의 다운URL이 담겨있다.

 ‘gx7ekbenv2riucmf.onion’

‘57g7spgrzlojinas.onion’ 

‘xxlvbrloxvriy2c5.onion’ 

‘76jdd2ir2embyv47.onion’ 

‘cwwnhwhlz52maqm7.onion’ 

‘https://dist.torproject.org/torbrowser/6.5.1/tor-win32-0.2.9.10.zip’

 r.wnry

 랜섬노트 TXT파일

 -

 s.wnry

 결제 사이트 접속을 위한 Tor파일과 모듈

 -

 t.wnry

 암호화된 DLL

 암호화 기능을 수행하는 DLL

 u.wnry

 복호화 결제를 위한 @WanaDecryptor@.exe

 -

 taskdl.exe

 특정 폴더 내 감염 파일(.WNCRYPT) 확인하는 프로그램

 -

 taskse.exe

 모든 로컬PC의 세션에서 결제 프로그램을 실행하는 프로그램

 -



3) 파일 암호화 및 복호화 결제 요구


이스트시큐리티는 해당 랜섬웨어 분석 중 워너크라이(WannaCry)가 파일을 암호화하기 위해서 제외되는 경로가 존재하는 것을 발견했습니다. 이는 불필요한 암호화 진행을 없애고 랜섬웨어 실시간 탐지를 방해하기 위한 행위로 보입니다.


‘\Intel’

‘\ProgramData’

‘\WINDOWS’

‘\Program Files’

‘\Program Files (x86)’

‘\AppData\Local\Temp’

‘\Local Settings\Temp’

‘This folder protects against ransomware. Modifying it will reduce protection’

‘Temporary Internet Files’

‘Content.IE5’


탐색된 경로에서 파일을 암호화시킵니다. 다음은 파일 암호화 코드의 일부입니다.

 

[그림 7] 암호화 루틴 일부 코드


암호화 대상 파일은 다음의 확장자를 갖습니다. 암호화 확장자는 ‘hwp’를 포함한 총 179개가 발견되었습니다.


".doc"

".docx"

".xls"

".xlsx"

".ppt"

".pptx"

".pst"

".ost"

".msg"

".eml"

".vsd"

".vsdx"

".txt"

".csv"

".rtf"

".123"

".wks"

".odt"

 ".wk1"

".pdf"

".dwg"

".onetoc2"

".snt"

".jpeg"

".jpg"

".docb"

".docm"

".dot"

".dotm"

".dotx"

".xlsm"

".xlsb"

".xlw"

".xlt"

".xlm"

".pem"

 ".xlc"

".xltx"

".xltm"

".pptm"

".pot"

".pps"

".ppsm"

".ppsx"

".ppam"

".potx"

".potm"

".edb"

".hwp"

".602"

".sxi"

".vdi"

".vmdk"

".p12"

 ".sti"

".sldx"

".sldm"

".vmx"

".gpg"

".aes"

".ARC"

".PAQ"

".bz2"

".tbk"

".bak"

".tar"

".tgz"

".gz"

".7z"

".rar"

".zip"

".csr"

 ".backup"

".iso"

".vcd"

".bmp"

".png"

".gif"

".raw"

".cgm"

".tif"

".tiff"

".nef"

".psd"

".ai"

".svg"

".djvu"

".m4u"

".m3u"

".crt"

 ".mid"

".wma"

".flv"

".3g2"

".mkv"

".3gp"

".mp4"

".mov"

".avi"

".asf"

".mpeg"

".vob"

".mpg"

".wmv"

".fla"

".swf"

".wav"

".key"

 ".mp3"

".sh"

".class"

".jar"

".java"

".rb"

".asp"

".php"

".jsp"

".brd"

".sch"

".dch"

".dip"

".pl"

".vb"

".vbs"

".ps1"

".pfx"

 ".bat"

".cmd"

".js"

".asm"

".h"

".pas"

".cpp"

".c"

".cs"

".suo"

".sln"

".ldf"

".mdf"

".ibd"

".myi"

".myd"

".frm"

".der"

 ".odb"

".dbf"

".db"

".mdb"

".accdb"

".sql"

".sqlitedb"

".sqlite3"

".asc"

".lay6"

".lay"

".mml"

".sxm"

".otg"

".odg"

".uop"

".std"

 ".sxd"

".otp"

".odp"

".wb2"

".slk"

".dif"

".stc"

".sxc"

".ots"

".ods"

".3dm"

".max"

".3ds"

".uot"

".stw"

".sxw"

".ott"


암호화된 파일의 구조는 다음과 같습니다.


[그림 8] 암호화된 파일구조


위 포맷을 생성하며 처음 ‘WANACRY’ 시그니쳐와 키의 크기를 통해 이미 암호화된 파일인지를 확인합니다. 이는 중복 감염을 방지하기 위한 것입니다. 다음은 암호화된 파일인지 확인하는 코드입니다.


 [그림 9] 암호화된 파일 확인 코드


※ @WanaDecryptor@.exe 분석


@WanaDecryptor@.exe는 볼륨 섀도우 삭제 기능과 복호화를 위한 결제를 안내합니다.


1) 파일정보


 FileName 

 @WanaDecryptor@.exe

 MD5 

 7BF2B57F2A205768755C07F238FB32CC

 Size(Byte) 

 245,760

 Detection Name 

 Trojan.Ransom.WannaCry

 Time-Stamp 

 2009/07/13 23:19:35 UTC

 Ransomware Version 

 Wanna Cryptor 2.0

 Resource Language 

 U.S. English(Unicode)

 File Description 

 Load PerfMon Counters



2) 볼륨섀도우 삭제


‘@WanaDecryptor@.exe’는 ‘tasksche.exe’로부터 실행되어 볼륨 섀도우 삭제기능을 수행합니다. 이를 통해 이용자가 파일을 정상적으로 복원할 수 없도록 합니다. 다음은 볼륨 섀도우 삭제 코드입니다.


 [그림 10] 볼륨섀도우 삭제 코드


3) 복호화를 위한 결제 유도


암호화 이후, 복호화를 댓가로 비트코인 결제를 요구합니다. 다음은 프로그램 실행 화면입니다.


 [그림 11] 결제 안내 프로그램 화면

※ 메타 데이터


1) 문서 작성자 Messi


tasksche.exe로부터 드롭되는 ‘msg’폴더 내에서는 다양한 언어를 지원하는 문서 파일이 있습니다. 파일은 모두 RTF 포맷으로 되어 있으며, ‘만든 이’가 ‘Messi’이라는 점을 발견했습니다.


[그림 12] 문서 작성자 Messi



2) 구글 번역


워너크라이(WannaCry) 랜섬웨어는 한국어를 지원하고 있습니다. 영문 안내 파일을 구글 번역기로 번역한 결과, 발견된 한국어 안내 파일과 내용이 동일함을 확인할 수 있었습니다.


영어 

한국어 

What Happened to My Computer?

Your important files are encrypted.

Many of your documents, photos, videos, databases and other files are no longer accessible because they have been encrypted. Maybe you are busy looking for a way to recover your files, but do not waste your time. Nobody can recover your files without our decryption service.


Can I Recover My Files?

Sure. We guarantee that you can recover all your files safely and easily. But you have not so enough time.

You can decrypt some of your files for free. Try now by clicking <Decrypt>.

But if you want to decrypt all your files, you need to pay.

You only have 3 days to submit the payment. After that the price will be doubled.

Also, if you don't pay in 7 days, you won't be able to recover your files forever.

We will have free events for users who are so poor that they couldn't pay in 6 months.


How Do I Pay?

Payment is accepted in Bitcoin only. For more information, click <About bitcoin>.

Please check the current price of Bitcoin and buy some bitcoins. For more information, click <How to buy bitcoins>.

And send the correct amount to the address specified in this window.

After your payment, click <Check Payment>. Best time to check: 9:00am - 11:00am GMT from Monday to Friday.

Once the payment is checked, you can start decrypting your files immediately.


Contact

If you need our assistance, send a message by clicking <Contact Us>.


We strongly recommend you to not remove this software, and disable your anti-virus for a while, until you pay and the payment gets processed. If your anti-virus gets updated and removes this software automatically, it will not be able to recover your files even if you pay!

내 컴퓨터는 어떻게 되었습니까?

중요한 파일은 암호화됩니다.

문서, 사진, 비디오, 데이터베이스 및 기타 파일은 암호화되어있어 더 이상 액세스 할 수 없습니다. 어쩌면 파일을 복구 할 수있는 방법을 찾느 라 바쁘지 만, 시간을 낭비하지 않아도됩니다. 누구도 암호 해독 서비스 없이는 파일을 복구 할 수 없습니다.


내 파일을 복구 할 수 있습니까?

확실한. 모든 파일을 안전하고 쉽게 복구 할 수 있습니다. 그러나 너는 그렇게 충분한 시간이 없다.

일부 파일은 무료로 해독 할 수 있습니다. <Decrypt>을 클릭하여 지금 시도하십시오.

그러나 모든 파일의 암호를 해독하려면 지불해야합니다.

지불을 제출하는 데는 3 일 밖에 남지 않았습니다. 그 후 가격이 배가됩니다.

또한 7 일 내에 비용을 지불하지 않으면 파일을 영구적으로 복구 할 수 없습니다.

우리는 6 개월 안에 돈을 내지 못해서 매우 가난한 사람들을위한 무료 이벤트를 가질 것입니다.


어떻게 지불하나요?

지불은 Bitcoin에서만 허용됩니다. 자세한 내용을 보려면 <About bitcoin>를 클릭하십시오.

Bitcoin의 현재 가격을 확인하고 비트 코인을 구입하십시오. 자세한 내용은 <How to buy bitcoins>을 클릭하십시오.

이 창에 지정된 주소로 정확한 금액을 보내십시오.

지불 후 <Check Payment>을 클릭하십시오. 확인하기 가장 좋은 시간 : 월요일부터 금요일까지 오전 9 시부 터 오전 11 시까 지 그리니치 표준시.

지불이 확인되면 즉시 파일의 암호 해독을 시작할 수 있습니다.


접촉

도움이 필요하면 <Contact Us>를 클릭하여 메시지를 보내십시오.


이 소프트웨어를 제거하지 말고 지불하고 지불이 처리 될 때까지 잠시 동안 안티 바이러스를 비활성화하십시오. 안티 바이러스가 업데이트되고이 소프트웨어가 자동으로 제거되면 비용을 지불하더라도 파일을 복구 할 수 없습니다!



3) 공격자 수익 추정


파일 내부에서 공격자의 비트코인 지갑 주소를 확인했습니다. 2017-05-16 14:00경까지 공격자는 약 7,800만원 정도의 수익을 낸 점을 확인할 수 있었습니다.


비트코인 주소 

수신량 

 115p7UMMngoj1pMvkpHijcRdfJNXj6LrLn

 9.44967018 BTC

 12t9YDPgwueZ9NyMgw519p7AA8isjr6SMw

 12.71671641 BTC

 13AM4VW2dhxYgXeQepoHkHSQuy6NgaEb94

 13.78657998 BTC



악성코드 분석 결론

워너크라이(WannaCry) 랜섬웨어는 감염PC의 파일들을 암호화시키며 복호화의 댓가로 돈을 지불하도록 유도합니다. 암호화될 수 있는 파일은 ‘hwp’ 확장자를 포함한 총 179개가 존재합니다. 또한 유포자가 원하는 시각에 공격 가능하도록 킬스위치인 ‘http://www.ifferfsodp9ifjaposdfjhgosurijfaewrwergwea.com’를 설정했습니다.


워너크라이(WannaCry)에서 가장 주목해야 할 부분은 네트워크를 통한 전파 기능입니다. WannaCry는 일반적인 랜섬웨어와는 달리, SMB취약점인 MS17-010를 통해 네트워크 상의 다른 PC로 전파되는 특징이 있습니다. 바로 해당 특징을 통해 전세계적으로 빠르게 전파된 것입니다.


해당 랜섬웨어는 네트워크를 통한 강력한 전파 기능을 갖고 있는 점과 감염 파일 대상 중 우리나라에서 주로 사용하는 문서파일인 HWP가 존재하므로, 백신 업데이트와 윈도우 업데이트를 철저히 하여 감염을 사전에 예방해야 합니다. 


워너크라이(WannaCry) 랜섬웨어에 대한 더 자세한 내용과 조치 방안은 알약 블로그 ▶포스팅에서 확인해주시기 바랍니다. 감사합니다.





관련글 더보기

댓글 영역