메그니베르(Magniber) 랜섬웨어 유포지 모니터링 작업 중, 4 11()부터 기존의 메그니베르가 아닌 GandCrab 랜섬웨어가 유포되는 것이 확인되었다. GandCrab 랜섬웨어는 공개키 방식으로 암호화하는 것으로 알려져 있어 복구가 불가능 함으로 사용자 주의가 요구된다유포에 사용되는 취약점 및 생성경로파일의 외형은 모두 메그니베르와 동일한 것을 볼 때제작자가 복구툴 배포작업으로 인해 랜섬웨어를 교체한 것으로 추정된다.

 

유포에 사용되는 취약점은 동일함으로 취약점 패치를 통해 감염을 차단하는 것이 필요하다.


아래의 그림은 4 11일 수집된 GandCrab 랜섬웨어에 의해 보여지는 랜섬노트와 감염 후 확장자를 나타낸다. 기존 3 19일자 ASEC블로그에 언급된 샘플에서는 버전이 2.0에서 현재는 2.1로 유포되는 것을 확인할 수 있다


http://asec.ahnlab.com/1101 (3월 19일자 GandCrab 관련 글)





  • 파일명: uD4ia0J3.exe (V3: Win-Trojan/RansomCrypt.Exp / 2018.04.11.06 엔진버전)
  • md5: 99bd57898469f06450000411790a505b


[취약점 패치]


스크립팅 엔진 메모리 손상 취약점 (CVE-2016-0189)


취약점 대상의 인터넷 익스플로러 버전은 다음과 같습니다.

인터넷 익스플로러 9, 10, 11


최신 버전의 인터넷 익스플로러는 다음 경로에서 자신의 OS 환경에 맞는 것으로 다운로드 할 수 있습니다.

https://support.microsoft.com/en-us/help/17621/internet-explorer-downloads


또한 윈도우 보안 업데이트는 다음과 같이 진행 할 수 있습니다.

윈도우 시작 버튼 -> 모든 프로그램 -> Windows Update


[참고]


기존 메그니베르 랜섬웨어 복구에 필요한 확장자//벡터 정보는 지속적으로 업데이트하여 제공할 예정입니다. http://asec.ahnlab.com/1125


Posted by 분석팀

4 8일 이후 확인된 메그니베르(Magniber) 랜섬웨어는 기존의 복구툴로 복구가 불가능하다. 이유는 복구를 위해 필요한 벡터정보를 고정값이 아닌 랜덤하게 생성하여 발생한 것으로 동일한 확장자로 암호화된 파일이라도 사용자마다 사용된 벡터정보가 다를 수 있다. (하나의 시스템에서 암호화된 파일은 동일 벡터가 사용)

 

이러한 문제로 인해 테스트로 복구 서비스를 제공하는 웹 페이지에서도 일부 알려진 포멧(JPG, PNG, BMP, DOCX, PPTX, HWP, XLSX 등)의 파일들을 제외하고 복구가 실패하는 것을 알 수 있다. 또한, 하나의 파일 복구에 8시간 정도 소요될 수 있다는 문구가 추가되었다.

 

4 8일 이후에 암호화된 파일을 복구하기 위해서는 감염시점에 무료로 복구 테스트를 제공하는 페이지를 통해 암호화 파일복호화 파일 한 쌍을 백업해 둘 필요가 있다. (일정시간이 지나면 해당 서비스 페이지 접속불가) 실패없이 복구에 성공하기 위해서 테스트 복구대상으로는 그림파일, 문서파일 등이 사용되는 것이 좋다. (*.doc, *.pdf, *.xls, *.ppt, *.hwp, *.docx, *.xlsx, *.pptx, *.jpg, *.bmp, *.png 등)

 

[그림-1] README.txt 파일에 표시된 URL 주소로 접속 시, 사용자에게 보여지는 웹 페이지


[그림-2] 1개의 파일을 무료로 복구 서비스 제공하는 페이지


이러한 작업을 통해 암호화 파일과 해당 파일에 대한 복호화 파일 한 쌍을 백업한 후, 추후 ASEC블로그를 통해 제공 예정인 확장자, 키 정보를 통해 아래와 같이 입력하면 암호화에 사용된 벡터정보를 추출할 수 있다. 이 벡터 정보를 통해 기존의 툴에서 확장자, , 벡터정보를 입력하면 암호화된 파일 전체를 복구할 수 있다.



현재 안랩에서 확보한 메그니베르 랜섬웨어에 대한 확장자, 키 정보는 지속적으로 업데이트할 예정이다


Posted by 분석팀

작년 10월부터 국내 사용자만을 대상으로 유포되는 메그니베르(Magniber) 랜섬웨어에 대한 복구툴을 ASEC 블로그를 통해 4 2일에 공개했다확장자 별 복구에 필요한 키벡터정보 제공을 통해 해당 확장자로 암호화된 사용자에게 복구할 수 있는 기능을 제공하였다하지만지난 주말(4 8)에 확인된 메그니베르에서는 복구에 필요한 벡터정보를 랜덤하게 생성하는 구조로 암호화 방식이 변경되었다동일한 암호화 확장자에 서로 다른 벡터 값이 생성되는 구조를 갖는다

(GetTickCount 함수를 통한 랜덤생성)


[기존] README.txt

: URL 주소에서 붉은색 표시부분이 벡터정보에 해당한다.


ALL YOUR DOCUMENTS, PHOTOS, DATABASES AND OTHER IMPORTANT FILES HAVE BEEN ENCRYPTED!

=========================================================================================

 Your files are NOT damaged! Your files are modified only. This modification is reversible.


 The only 1 way to decrypt your files is to receive the private key and decryption program.


 Any attempts to restore your files with the third party software will be fatal for your files!

 ========================================================================================

 To receive the private key and decryption program follow the instructions below:


 1. Download "Tor Browser" from https://www.torproject.org/ and install it.


 2. In the "Tor Browser" open your personal page here:


 http://0290t5v57ebu3f22r41.7pvbou2ievub53gq.onion/WB7Nd859MS90Q017


 Note! This page is available via "Tor Browser" only.

 ========================================================================================

 Also you can use temporary addresses on your personal page without using "Tor Browser":


 http://0290t5v57ebu3f22r41.pistay.pw/WB7Nd859MS90Q017


 http://0290t5v57ebu3f22r41.fitcard.host/WB7Nd859MS90Q017


 http://0290t5v57ebu3f22r41.gappull.space/WB7Nd859MS90Q017


 http://0290t5v57ebu3f22r41.oddnine.site/WB7Nd859MS90Q017


 Note! These are temporary addresses! They will be available for a limited amount of time! 


[변경] README.txt

: URL 주소에서 파란색 표시부분이 벡터가 아닌 확장자 정보에 해당한다. (벡터정보 랜덤하게 생성)


ALL YOUR DOCUMENTS PHOTOS DATABASES AND OTHER IMPORTANT FILES HAVE BEEN ENCRYPTED!

 ========================================================================================

 Your files are NOT damaged! Your files are modified only. This modification is reversible.


 The only 1 way to decrypt your files is to receive the private key and decryption program.


 Any attempts to restore your files with the third party software will be fatal for your files!

 ========================================================================================

 To receive the private key and decryption program follow the instructions below:


 1. Download "Tor Browser" from https://www.torproject.org/ and install it.


 2. In the "Tor Browser" open your personal page here:


 http://bicjzusdxey82om20w0.xidr33zp37jbu4tv.onion/dpktdqtdz


 Note! This page is available via "Tor Browser" only.

 ========================================================================================

 Also you can use temporary addresses on your personal page without using "Tor Browser":


 http://bicjzusdxey82om20w0.gaveodd.website/dpktdqtdz


 http://bicjzusdxey82om20w0.backfan.site/dpktdqtdz


 http://bicjzusdxey82om20w0.madpart.pw/dpktdqtdz


 http://bicjzusdxey82om20w0.lesssex.host/dpktdqtdz


 Note! These are temporary addresses! They will be available for a limited amount of time! 


따라서 완벽한 복구를 위해서는 확장자와 키 정보 외에 가변적인 벡터정보를 알아야 하는 추가 작업이 필요한 상황이다현재 분석팀에서는 감염 사용자 마다 서로 다른 벡터정보를 획득하는 방법에 대해 연구 중이다. 추후 블로그를 통해 별도의 툴을 제공하고자 한다.

 

랜섬웨어 제작자 역시 가변적인 벡터정보를 알 수 없음으로 테스트로 복구해주는 사이트에서 복구 시도 시아래와 같이 8시간이 소요될 수 있다는 문구가 추가된 것을 알 수 있다제작자도 정확한 벡터정보를 알 수 없음으로 알려진 포멧에 대한 정보와 무수히 많은 키 대입을 통해 유추하는 것으로 추정된다. 또한일부 포멧이 정형화되지 않은 파일(JS파일)의 경우복구가 실패하는 것을 확인하였다.



현재 분석팀에서는 메그니베르 랜섬웨어의 유포지를 지속적으로 모니터링하고 있으며, 이를 바탕으로 아래와 같이 Generic 진단을 수행하고 있다. 또한, 파일진단이 아닌 행위탐지를 통해서도 암호화를 사전에 차단하고 있다.



[Magniber 랜섬웨어 감염방지 방법]


Magniber 랜섬웨어는 멀버타이징 (Malvertising) 기법으로 감염이 되며 악용되는 취약점은 다음과 같습니다. 따라서 해당 취약점에 대한 보안 업데이트를 하지 않으면 재감염 될 수 있습니다. 따라서 반드시 아래 글을 참고하여 보안 업데이트를 진행 해주시기 바랍니다.


- 스크립팅 엔진 메모리 손상 취약점 (CVE-2016-0189)


취약점 대상의 인터넷 익스플로러 버전은 다음과 같습니다.


- 인터넷 익스플로러 9, 10, 11


최신 버전의 인터넷 익스플로러는 다음 경로에서 자신의 OS 환경에 맞는 것으로 다운로드 할 수 있습니다.

- https://support.microsoft.com/en-us/help/17621/internet-explorer-downloads


또한 윈도우 보안 업데이트는 다음과 같이 진행 할 수 있습니다.


- 윈도우 시작 버튼 -> 모든 프로그램 -> Windows Update


Posted by 분석팀

해당 문서는 Magniber 랜섬웨어 중 복구가 가능한 확장자 목록을 관리합니다.

툴의 상세 사용법 등의 추가 정보는 이전 글을 참고 하시기 바랍니다. [링크]


복구가능 확장자

벡터 

kympzmzw

Jg5jU6J89CUf9C55

 i9w97ywz50w59RQY

owxpzylj

u4p819wh1464r6J9

 mbfRHUlbKJJ7024P

prueitfik

EV8n879gAC6080r6

 Z123yA89q3m063V9

rwighmoz

BF16W5aDYzi751NB

 B33hQK9E6Sc7P69B

bnxzoucsx

E88SzQ33TRi0P9g6

 Bo3AIJyWc7iuOp91

tzdbkjry

n9p2n9Io32Br75pN

 ir922Y7f83bb7G12

iuoqetgb

QEsN9KZXSp61P956

 lM174P1e6J24bZt1

pgvuuryti

KHp4217jeDx019Uk

 A4pTQ6886b401JR5

zpnjelt

LyAAS6Ovr647GO65

 nS3A41k9pccn03J2

gnhnzhu

I0727788KuT5kAqL

 sCnHApaa61l5U2R0

hssjfbd

u5f1d693LGkEgX07

 kV35Z1K3JB7z6P06

ldolfoxwu

i24720y16f10qJ21

 fX5U9Z6A2j8ZUvkO

zskgavp

nuu9WO56Gc0N5hn7

 ASY0d6dlyrEH6385

gwinpyizt

 dcQOje3dzW469125

 T5438Nl5VI62XxM8

 hxzrvhh

 EsoNSQ0oaSE614v1

 lEF91UX3DHb1N194

 cmjedin

t65Ytyq8kTBxRsvz 

 w4wP6OG97u9881XB

 dzvtwtqz

 x1BVyu8F455hjop0

 Nc5dS939N5k4cJO2

 pxynindl

M2zCCsnI02BwA044 

 a33PrNnPC5196V1M

sqzprtt 

 m6Nc49V5V54458r5

 L1Y49jXUlA87y72P

 wanmzqw

ku5CMd5Q04D5m836 

zprBfTG14C37A2t8 

 wudltho

 C06185a29O96539t

 Z21763v10u996Ka6

 ftmkyyu

np0dQ328TCZ3X0m3 

dhb1E5ll9is9lf4J 

 twiozfvn

Ri94A630CmT0z9zn 

 U5p18Y9W83QnPcW2

 mncmxtrh

 beW4q941272J41gV

 I35i5z4qw741rS5Q

 yictsss

 IK5y8AeoB6mqJt3U

IS7K85WQZ7SAQ7IF 

 bjyefjc

 g6Ss47O61810npG1

 dFJ13I84R8m8074U

 mjzynopr

 TWa351q6PbCDL062

 DdT89BNpF5893Ay9

 slquvqwl

 gdg8EMkDv4W249jl

 iEaliP0a38PTb266

 engebkljb

 tkK166zMlh50A65I

 l0NV4441rz769hEt

 mxelnjrqa

 GDd145D46H7708l3

 Cw5up332qA5T7032

fkvmhyxp 

 AqnUw8318N9fOqyw

bh1SSx41c9333nNs 

 tjsqpxh

 Dc7T3x6O8hTfe5C4

 e2e42LPE2710L1z9

jumjeax 

 NpRaZ8E8D7k791RN

 dKNg6K3o2thM90p9

phhqjkjt 

 NS5KwT8d4q4NIkV9

 J374w3SdZzQJ0722

 jwlofszwv

 Q335bl2Q3pUI9Uw9

 G5wmgpMg1Bpe2R05

bjnjtjwsd 

E542954FvcqM2E94 

Q3F39Lrw72k99m13 

 ldiozsezr

 b1893I7NIg7J3XoS

n48B7D43YqIF1324 

yqxuphxkt 

 ywRs68r4W2261j05

 K869GX044AXn5DO7

 veynddw

 U384dc6a88zVrlUE

 LpK22c71z103mHHn

 otsnjnzox

s7k4635o1Q73K051 

 nO63aj78k5l532Q0

 gadnynk

n5jQN3976Ji034N2 

 t1V1n5x4YfGx3ZcS

 aycceto

 zvP5090g757abWqg

 us49777rh55UTK99

 dcmexmm

 D094803312sJA65o

 u8YeX2i051i156E9

 kegpmoriq

 tad5256ZmMV8jz7i

 s383czJi0k63CcO8

 gbfyhfpg

 G0n8EA41z15LU335

 Ev8X4xRZ38l5Go45

 jsauiwn

 P2352ruO5hone1v9

 pODla5786q8GkrA8

 cukortpwt

 G4R277xU550rZuRj

 nt38x553ak25kf51

 udhxxzhu

 eCuG29E2J39370zP

 e93R69r77Iym25n0

 gkifuknv

 C0TBS76aT261H387

 d5g51jRBx63H43w9

 wpbkwfnfc

 t2E952y51D1uD7Uk

 cx0f3eIDxi9JH41F

 ogwlkvm

 Xnw66hL87466SH0G

 DLF6I9rZaH9019Hg

 vpixnwtwe

 sKGY4yQb7n6tV1T8

 xVQE7Oj5He4uXg13

 rurkhst

 i2E0bShGl6j3tP7D

 e93YI6l0tX3c814L

 huethtwr

 NJzD955s7q36TB9P

 E3C71uN5n0MI73WH

 oslnvenw

 i5l25844m0BS197G

 Ni8x96vTmS6A727L

 qltzunls

 S8145M7wa8096K0J

 g8877tJu8e5320TE

 gocpygw

 EDO5F92256b36iJd

 J51tvdVen65425cm

 cwejgxri

 i4955Lp2987t2d6Y

 Wz98p3Ptk3rZ96An

 htmurhxgx

 D7Fc17c8kIsRaF86

 V482xOO76HiDyx9h

 frvwyrm

 k9uC65vr4195a187

 n601cRSW74332t1i

 ywxhyjp

 MWdYs0RT9ga0460X

 SCB3337m5450g8s2

 gtiszqhn

 JFIh91761770J4jc

 I7yS448h67t2L551

 ilttgse

 xr2J1Z94168H2G9d

 inr3E479x0SX0tf9

 ohrxfcn

 nDa3177793C1HWu4

 Ztr00g54Fp8vw40N

 kacvgslne

 c27bz7fl0F7me3v6

 iPRXQC2qLC0LN9zJ

 qlmyegogp

 RK11338v64rEA9pF

 N7496uu7Ioj2YmiJ

 sxzjaxe

 eKc3sK2NHOAkN025

 Ubjx93WXE7x14754

 vukhzat

 lUj706009M2r8533

 X772m1bq93440zL3

 tpoawjrv

 MuiyU57c83D12q62

 ToKS8YEu4772r7H5

 sppcxsy

 B14AP7D9cp18q72e

 zzCsXTJdIMV92S01

 kirwfic

 WeOo3n3a18157g9g

 ib10dS466889v44O

 dpksfvg

 aY67tKsU4COYM2L4

 m501s61382008828

 eabsred

 G51goU96462Br04t

 B83A23A0n2x4zg0Z

 yroeswd

 C86KUn2zzqbUSu92

 Sh2Xz75h25u1792v

 bjzhfte

 ry857k9K899mjbSx

 F10xX3774jv7j6A6

 sttkkakql

 x39c23G8AO5Md41R

 Qab51672k02374bv

 eminstte

 GF3x78WhRqa4JPH2

 C7KA0M8ksYjD38K7

 ucmipqts

 fGrw41X80B447d86

 c2237gZ1z5gUHdty

 ywwuyrp

 Zx4614iE36z32z62

 g1neEN8V46204m8x

 mquqjrn

 R86m1mA20ABQ129H

 CS778m68816766P7

 gngegzxbu

 VJ115eoLX6XxLJCe

 A5l1AY378a5H31MV

 wvwvweuoo

 QOB27WeRr11f4F0E

 F4cg461I35bW99L1

 ddvzdmh

 is45dpE4yVN50Ah4

 jq6l9N5QxJG6061F

 xsxdrbrha

 svA62174oLm6A987

da5Am1E19725h3pM 

 afalmdja

 zw59EVl81n5u66u8

n7xKYS4d9TP3QcFL 

 qbexjpirc

 m96j9Q1B343c01c3

ZzI8122knW8d206O 

 hbxckiks

ym7m8OcO279Yy079 

P5U54l3LdB392gG4 

 abymsdoif

yCms8242czzd2G8V 

 jO66P7z209s17585

 ysfaojveu

 Fy7n5j4B6sCLkr27

 a174PbL14262878F

 ewpucsv

B2h6Pa9726bxY503 

 p70R7q5D1l6lALFi

 cfspfpn

 DT82109Z0g6633wT

E6T95FpxU51W31w1 

 lndvvcxh

 T2G4858tobcP72Z6

zS23kzsyyP8APMrd 

 xwimlxeiu

 njf8Uzsdk19EI9i8

 l7d21365875l5Le9

 ozvuseco

 b7wp59i90OA7ZAq2

fw9n5i3392vba394 

 inadrka

PhDmUjlJxEfgj5rC 

V98BG5wJ012uq8hE 

 dmthywcz

 IRu5ep9ql100la36

 c945pQccL0k19QcF

 pvhqkiaej

 C3L9U6jhB3w7Zqz8

 Ijl7qLK00wtvD033

tddyhbt 

GZn2C9Oq30PX1941 

r8e2v7XxI4p1h139 

 cyxysbq

ta7VtUnhqdLsm5TZ 

G2wz4151XxIEK62c 

rzubktx 

g22igD04t95101k6 

 fIbb67uy30r9kQ5n

 rxfrmwpg

i5R697ak4n3wI0ZQ 

 mC5B42P662D2aCYw

 qbheigky

Ku932mU24Ws7nfD3 

 J48um2tY1mIDxxDw

 hsanvuns

I9Dqu8768w559253 

Qt6n05mu2RYCV87L 

ptnlpnekm 

b210F0D4372vONXr 

S71W1y5096S3AfA2 

ghblkfbh 

DgGh00b7TYm81p2G 

 eI0z4jOd4rBk13Xg

ptqzmpr

NK57S333676TR452

WB7Nd859MS90Q017

 hgoxfvg

 N9ozv8ZhOh178A0R

 KsG5r422iZxEoC4L


복구가능 확장자

 키

 벡터

tptucwwt

A330461924y8J9p3

sg5z97117B3426K0

lbddvehx

a38Ul745kK8u35s5

Q60m3150uj7O45ed

zordjtplo

A4162SO2837rgFs7

M09fYp80uO3exkou

uwkvvev

anJCD318blXDF564

VmoZX027LwCg3na8

iwfjjev

aO48D5175i8H08a6

c06Y8c199s09Or58

defxjubv

Asz9e2Pn6eU01wx7

kXot5QtPnH2q6Dv1

hvyusohh

B043tp15G2WriF2S

D02O4CK685Fu4v3j

jkaipybm

b17wyPbctF7JcK81

c41j04nY7xJ18XKj

lbwalgx

b2a7I4t5eTJ9CR09

Y353rQsJLJL0U78W

gcwssbfuw

B4484pQ2w3y6Icq6

X0x117b1Um535FD8

vgvtonaxq

b7243362PRAXXQkZ

m952g10Sd07HXqv3

fzsawvng

b7D1238y59l0dY85

Pyo49A11znVD2961

ampppvrt

b93bJ06h5C641ikF

Ly5qH79GrXWW4555

nibbxutar

be0T41YP3o1m4m1C

E25138g7Xzl17R2Y

rakapah

bkRLK2S1dyp8IiQ6

JL55C9H5285V4Z08

kugqidckf

BQQa26lTahR9D42b

e33RJ348bD6G2f2X

saxujsmyu

bw8lZ5xG7c6vm7G1

ZG9Cs50u0f5883Q1

grlszelrq

BXQU2D58drAI4YuB

jDg99g7s45Ju2Xuu

kivtnure

by48m7A0C73u6O94

m786ZtKy8J2z9pW2

xoziier

bZLHvH75K0m60G3Q

fi7729Y152tfx64d

dfucods

C5G593P0q95hIwV8

L6Ih8EMJ10968Bxy

pulppmg

c7wcpQ63V47lTXZ1

lX6d9J10AEAkz1CH

jozncdx

cPlE6aA609HJKmfH

GQ7682r13624LE1c

dolskfdd

cQq6M5d87R3Rtq0x

Z8Q3rJ077RVMt358

mpxzafam

cSH07L18GE5609M7

fRY1633IunAF6p4c

jxrhgat

CZH7Fy6Q537ycWX3

R9Ltm45J2oVk7ciZ

pluazeg

D4229pAvO0l2cU7G

ketVHNP3d4bC5Ra0

nsqzmwh

d56DPK92O2xWq9Fl

x0p8uRI24WX553K5

kiptsmzle

D8p72XJ65728HdUa

T05HpLtw6st73UZc

chpgikk

D9b3z0j901o4735k

kl4Q16lu3t58uHf8

ypmdkvac

Ddy4ceuHO4W2r470

x061z2Y31128P3mk

eqevdijsg

dLv254e1K2P6CXU5

a15841F19N1SmD8O

fmfsgkqd

DSG7Da7iR61ImImQ

B5gy0j816hVn6r5w

lqwoxojgs

E11x02h6tF651QLF

bu573XbsDj7A6KZK

eihcwor

E185U8c6q2985141

cYOvSQ12TYj60J4N

zzzscixcq

e32i944jXgX4A296

c6p8s1DJh94KU58S

bzrxdzo

e63Q3496k2Q5M7Q2

L1p8NCOIYF066Q6s

pxmqmpo

e69327Ggj2q3G7Sp

qk7070I08kL9Qihx

varulgaej

E8dO5A041a5D48o8

N4561H6O19SK0YV0

nwpkjoz

eiXdNH96317y1P70

cBl522j9RT3SVuPL

wqtmfil

EL76Wn6uIRI73Yfj

TE515HQ571it4f04

yxyzuyet

EWfaJ95a5as1Stw6

a06R3O20840a9hWi

sehupakic

eXN970836CP67LI8

JOEH85it09qAi74y

vguvsgejh

F18hE01E82y7k4p1

l769W59l0E0ZYo63

kvrdhmyrx

f2Kk640D7Pyo6A5D

Jibr6EvVLOMW1q5T

nejhdgd

f4PPp53863Tk47y7

l4CmFqc8UPIz2K6X

xajfdvo

F77xaa55R83E035r

d0tO80blz6003396

gbipirx

f87S4HpIZH97S178

SP58UNgid01N104S

jsyjuom

F8Fa55eG427pWy6G

d7gMGV6Q2Na61559

owhbdbii

fJJMY9419834Wb1X

aG20K8sUzXOWVk7R

orqjbqlw

fJrQ33yW162L8ArM

N78M7d0A618625Kt

yihvogi

FSIPE51e0j925a4H

uSU10jYZ3r93739H

dfbsvoi

fUyp7pm9727F2m0C

ft5vP705OqC4fRY6

nxvibarm

g10766Np34VL1ATl

C0iU601FyKzV27J1

nvmfyqtr

g1ta3gzqQ95N9314

D17738VE38jAZU53

yqusccvjs

g4n38V7o6k77vM3n

X3A4f9UHq1k1n36P

qgsxyzidg

g5eIdGlVqO9s1Naj

Nu4996t2h6m7K3bx

veidrssph

G8DPM9P4Qy3259e7

j6IGQx4k52C7Tc2I

aosrnmlh

GOe67b0V68NSvk3T

g843vn3718o42T79

eosfqaw

gvpPyV7bL16B2R7E

I1p74M6i1h0W0awY

uazwgcb

GxJ8P6G5XQ23Qfo1

e207Y29d6V495eIB

piouqjwhh

i1438z9Vf3G7oECJ

m5T03C6u8GEd10A4

qmrlvewfz

I14443L0lGB85439

FX3PqM0MvUG5HIOr

gtayhcybh

I2j8LU2vSA9T28c1

XPHIi02013jt160Z

yokiqfnh

i366h17h16r5la10

I24E8I7u9cXU3t37

owkjugjhz

I4a42v4v2sl24182

Xp8oa2s8SzAg13ql

wmhllph

I55mP3gMv984d1j9

D9TQ4zD3R60x116a

mtjoqjlp

I56623G4307U6fV7

LCL5i17985j709m1

yacadvjua

I6Bn0M735098Z44p

EY45M2gs17Dh2Vy7

xmzcpmcnm

i94Qf6295wU29143

n942bjin9329RO92

ktqzoasic

ictAAKt9jSqy0k78

S25H98z31YcWU943

ceofwwovn

IDTw4j0q3i9125j3

PQA33m736005W4zg

fndljgjxi

IFI2X90Z6W7Sxv98

k4C9rK210w5i7GIt

epkqrkw

iFs216g4cb8V98TQ

Y34M3eDzt3L092Ck

xnzjxdlpo

ij0Ao3601X69O8H8

ICFd773d4hCM5tm9

hnulvoo

Ij16sw15u8OQmd11

Mi1Z5DQu9Dyh9lfI

jfvgmby

Io7G1Dnv86lr5Q4Y

VLG8iaoF6PRu8s7e

hvxtivt

iRkH0h436BykW3ZA

c7i43t699Y5Dm09G

rcerfjglu

It35Fgolf2E509FI

E025s22FK7h8tn64

xmfwemss

iuQR8138720D5n29

i07ABfS24mk9mq7e

dasxmuzk

ix34b7ruTH05FTv7

xnHoP1IB867a3u7s

spnxdiqmy

j0LI533s6EbR7186

Fl02Hy68Q29A64O7

wbltymhoy

j2A73e34R76PWO3K

u0RK0q4048Z91F15

flihwxzqv

j2P1oNu8yYpI3dJ5

l3GF81Lo943eg520

zgaazpz

J3W5RF0NFe0827V1

NjO775U545g27qMB

hjanfemhf

j6J5fmb2QKGd1vX0

dsi70d21A15SDSOP

nlooiaxfg

JA2v3455W9Xy7wuL

eGcby86427c2Qq07

jewwdrnh

JeQ4037f7LFS8Kdt

blfrX648YR05Pt06

yqjpdfzzh

jfv2656Lovt943G9

L06L1d580075lrL7

xlnthrtyk

Ji83r9U4Oc8F856F

EA67n7P179Ku3051

lweqspih

jjBr77A0432iIT53

GZ470Jr49JWXVpjm

uordkbs

Jjsl66Q3yI1Qw0r3

J54785J3Ck17663I

wfdrwcf

jTpqX282311P7w9L

F04Pu3198j6Q26WP

tsddqero

jv20s8tV4dW0U59T

TGr8r7n09sw1J9zP

drgzprn

K1qK410X3U5bCh06

c3640C14MD7r5k00

fggjekvsm

K4v7eo99My847R99

i9lKh6M10Z868118

aecbgeosp

K601I74w60aOc9i9

GVL4MbDcKi8HO45U

hcapkvy

K8gG9t4194kEPA56

af1591Uu3zp7qf97

sjqdrcc

kh7hi556Qa796vdQ

GoF2ZYql5F6wC70h

zjqryvkik

Kk5B751HpR3k9433

uU30juT2OX9dt4Wh

aqajrzrvb

kN7vXerY8Y61tyCI

Mq5m120zb3eICkK0

igydlgihj

kqx14LoUf31Fmg8G

YR81J5BH1k6z72R2

dicfhzz

l09l08x5V42yn8NC

D0W355A9L5979Q2B

omigfwgfj

L6835j4N2b0o30zC

F2N55D454O1VcUl5

ovzhfln

L685ci3L08T39802

jS7P3s6MnTRy71s9

kuzwhyqhn

l86445S74w5h0Xq4

ivHdS9B950T91684

mrjgulk

LBUE60D60uR9yysr

R88621DBulo4ay95

pmrcxedz

lm78p3Sr618X6H73

J96ur5Eme5GA71q1

czbaghow

Lm8o9e2a28rR2nCC

N0207LSF2300A65U

xlmupxgup

LR9F849nU19216Ga

NkFKi57LrSLPxcFx

adgjpyfhs

lTv90X3o897Z43d6

Fif19x3r84V3773l

vawzlqwcb

M0982u2v1l4E97R7

iVzlv09u4E8A03s3

pxynindl

M2zCCsnI02BwA044

a33PrNnPC5196V1M

hxevydof

M3Z16344tR3Jlfd6

We95937ZCU0e6Jz9

dcmkdzt

m4652AjfEB8U5C94

F91f083m4Xo3J65m

xapudecz

M829dhH3j4C0645Q

I58h44cO176Ev2Z6

whxdyab

m88687BF21cz5N30

B5890051Km99sib7

njoxiffb

M9j78A06KA8L7p3M

y5Zaw2b69lMK69ew

zuqpqkz

MexXih15d326BEG7

e1hR8O67aT39006b

vrklzimn

Mn681m322ROqJXoZ

KOu4060X44EQ0618

npqdnxui

MnG8oFsL6fX0H13T

Lz5v7Vc26keJ1m0E

cjakjko

mOQN9z72xDv11l26

DV78ru93626r1A3p

yzurnwszl

Mrw853508FxA395K

x7r87U00p9083192

sjntqmxiy

MtHjy78r7mL603nl

eiA5y5qy4x2T1Zfa

iaanlfhpx

mUI4eau9Pa7Z2a4P

l5eeyyefSH2016QY

tckzlztg

n2Om62ToR86jn8Jb

qr3f8Fto9Zdjwy56

suoltyql

n455x9ndQc9UlK6h

GB6T7n93026AU0y1

zexhvgmpv

n631E3n3OUQ52FF8

NI8r38D35jH77CZU

otipslja

n9951HN5eau4icW1

e2kL2R90ZC43P8j8

auwknwxvn

NA4A0112T64U6965

U7N1oJa9qD43l025

upjbubr

Nc1d2Z6l5z80a4z4

sU331G2rQd2mk390

mcxsraw

Nr90983O95m8LF7K

pOo1qL81xH590ALP

qjpoqzrgr

Ny2237aB7vRAZ7i0

C3D9Qr6J671r11G7

kivkopdym

nyJ6GHZ2A8SU98D3

bo5KD99tXG8178CS

rhuvresfm

p4lWYF0Q5YD7cKX0

nN00dwzk3jfg8SAB

dbjauesek

p858G4W9r331sF42

s3Ai6w57GLt6998J

inwkter

pN7OI283pU0f15rO

eYOI3p7i050bcEt8

pjdajwx

pSyG93UK256Eitqe

e02UmR97J5196a0m

uxxyaux

Px07J4i0S1dqDcEa

gbTWa67xBb550140

ztowimtxq

q0B0Fv6YL3KJPE2i

Wq0ju1T914n9r0PN

iynthoioj

q22458n3936rMI83

BO4WN27aV1687230

zoanmba

Q2X1x8E03i433G53

gx2pA3705wmpN70B

vvznovp

q3pNe2gC3695a1f1

PEo11R780Em9E8m9

kohkddwp

q7j76898ptv71094

Z73DyR88tFG1cIUV

eyqfqmqod

Q9S20z14D1fX2ev3

UY0g436860i4AFtK

gdyusodd

QD4y9J2m4G34eE78

C8h5w2L6jg8TdQz9

cmkvlvr

qgXhu1QAw69H7G28

v6n114147O8441WR

bavdwjir

Qh9jIG1d356Z8A57

z049Rrm50U0sG7D5

hovrpyzwz

QM1L6n9x346V70YG

iy27M30cb21I204a

vcjxopq

RA34I1F35XY29x10

tS3Fd3IfJKSw7918

ytfrnjocr

rcO3T1Y6z9Gt061A

ZPpNU551235S2Oz8

rhxwwbe

RdP17hT30C25p3xH

N2j4RF7103cue82P

dqckgzz

Rudg83K16pTeQ96k

IDU31h98PAr02869

nhxalxkol

S7Wgvb0W85R5605W

f65cujZAn4Ul0EQ1

lvuqkxi

s87zLF6yf1JGAkoS

F69036R06397r176

ctffcqen

s8K86k5Q6n7R06L9

K06296slW865E063

ssltrpc

SA536076dbc4bXo4

Fn667221t15uKhf8

swxylyh

SHN5uObQKcfI4kn9

kD56v1605448k3r2

bscdmdqkg

SoZ7yHM6JqXcJ8an

Iu18S8100525dC28

vvycltcwu

Sp56ob4558B2071j

M2vRT008A4IeRu09

zyazaqi

T0Xp56o784o4N9q6

iu6d71sqg8OWR1a7

ezjasdu

Tn6253SfxZaheR41

D7R66y1724z89M2l

ovlmooo

U02g643nK9b9787M

E1o5Po21838RV6u9

cqhrdfhp

u541oP73IA1RL904

P36Rvm98Xi4gCklW

ippuhkky

u7t826bQBo7NQp1v

i6t2B6g897P4P1PJ

zghmlcchv

U88D1ti82GLicE92

CF5tf56v79353lTh

feviyat

U948Zw9c312xS678

a25sZ851zUK27263

jbhfqzm

u96aN3934817I6q3

S6CX07c636V50Cc9

lyxtdoyz

utK1E0q4x14Tw374

Ef026lHr48i7m066

jueonftx

uTlA4n116Jn8A325

Pg8286r0gT0198uS

fhpjvusz

Ux4ZsI528bbFYa3I

XB9z02e1nvz09k9y

jjeresvdk

UZq796Mk2N6a4iCS

Ni51u7g56Kgl18gy

wqfsoqij

V44KG87q70FU5u08

E2aag0q4437l892D

gsugbuym

v5M228q8x58Ua6HY

U3g76kkAI2LGlJe2

kldesalce

v6zN6020reIzlsH9

l5Gk77DWdc9pS063

uudbjqjqj

Vf09y77C7IlT4227

DO3q0v24smZ9xhV8

sxmbvvxpz

w5aYW3B4124C5S85

x23pac63177TLt91

rvwrcgeto

w72448570ffZ62yR

BB0h551j39j658O2

iidrfzu

w9EF3j1O8794rWR8

FH198h98n399UmC5

mneddvd

wMmW4l4YHOVWambK

MQ84Gd167CB397UA

rdfiyenc

WRKlxxERCpsV1lX0

D12W5459w8G0yHVn

yodiysbpp

x179nW4T6OT66giO

ryqe9qHo94nX029i

flwjobf

xKb67W985xZJ762p

SC6M485e3z12DJ9w

czlwpqjx

xL464245Q567Sk2c

n406HcU2lN2tM0nR

mllswoeko

XZ31pPVe4568U3w8

jKwL0Z7d9w70h42O

bvhttjjj

y10258487dI0V33g

X645x9s046ws3aB7

sqqyzkb

y4779s08H91ap3Z0

l36pUU4u7U5E0oU0

pmiwovlto

y932Z7Foos951wge

B7jbyM6mTXLcD58v

qyphposl

yf0U407AtH3T7xT4

Qfz2530971i6zvMl

uipdyyfsg

yT0iVg38r9E4ksYZ

jb6Q72q32Gd5G7M1

htrsvkhnj

z3m8M941M8W50728

aG753yys9u1J052Q

bjlduooa

z4T73rmsE454QF8J

NRV28hydakG23ds9

uwsgpyl

z71v755928w5L530

x7976G62p6RRi96A

ygngumzgl

Z81T3v6K1iIFyJ0D

Jp7C46P9Z1vb94By

yfsepzs

Z870780e5iM0984f

ND60M54hR9STP565

agcevflsx

zA992i8G28c3d6pa

d70892406SiCU3v3

bvxzqlmp

ZG8701xJAGO76GX7

Wc0JXq253dIUMP80

xxzbrah

zTLBP5mJvj5U13n3

EBW2TOs0n93TFYE6



// 3월 1일 ~ 3월 31일 까지의 확장자/키/벡터 정보가 업데이트될 예정입니다.



[사용 방법]


1. 압축파일 내부의 Run_Me.bat 파일을 메모장에서 열고, 확장자/키/벡터 값을 기록하여 저장한다.




2. Run_Me.bat 파일을 오른쪽 마우스로 클릭하여 관리자 권한으로 실행한다.




[복구툴 Hash]

"안랩이 제공하는 전용 백신 및 랜섬웨어 복구툴은 사용자가 비영리 목적으로 다운로드하여 설치 및 이용할 수 있으나 영리적인 목적으로의 사용은 금지되어 있습니다.

만약 영리적인 목적의 이용 · 판매  · 재판매 행위가 확인될 시에는 법적 조치를 취할 수 있음을 밝혀둡니다."


Posted by 분석팀

Magniber 랜섬웨어와 외형이 유사한 형태의 랜섬웨어로는 HermesGandCrab 랜섬웨어가 있다, V3에서 "Trojan/Win32.Magniber"로 진단하는 파일 중에는 실제 Magniber가 아닌 유형이 존재할 수 있다. 각 랜섬웨어 별 랜섬노트를 통해 구분이 가능하다.

 

§  Hermes : DECRYPT_INFORMATION

§  GandCrab : CRAB-DECRYPT

§  Magniber : README

 

복구툴에서 복구가 가능한 형태는 README 이름의 랜섬노트를 갖는 Magniber 랜섬웨어이며, 아래와 같은 화면구성을 갖는다. 붉은색 표시부분의 값이 복구 시 사용되는 키 정보 중, 벡터값(IV)에 해당한다.



3 30일 부터 현재까지 확인된 Magniber 랜섬웨어 확장자 별 키, 벡터 정보는 아래의 표와 같다. 이후 추가적으로 확인되는 확장자 별 키, 벡터 정보는 http://asec.ahnlab.com/1125 에서 확인 할 수 있다.


 날짜

복구가능 확장자

키 

벡터 

 다운로드

 3/30

 kympzmzw

 Jg5jU6J89CUf9C55

 i9w97ywz50w59RQY

MagniberDecrypt.zip

 3/30

 owxpzylj

 u4p819wh1464r6J9

 mbfRHUlbKJJ7024P

MagniberDecrypt.zip

 3/30

 prueitfik

 EV8n879gAC6080r6

 Z123yA89q3m063V9

MagniberDecrypt.zip

 3/31

rwighmoz 

 BF16W5aDYzi751NB

 B33hQK9E6Sc7P69B

MagniberDecrypt.zip

 3/31

 bnxzoucsx

 E88SzQ33TRi0P9g6

 Bo3AIJyWc7iuOp91

MagniberDecrypt.zip

 3/31

 tzdbkjry

n9p2n9Io32Br75pN 

ir922Y7f83bb7G12 

MagniberDecrypt.zip

 4/1

 iuoqetgb

 QEsN9KZXSp61P956

lM174P1e6J24bZt1 

MagniberDecrypt.zip

 4/1

pgvuuryti 

 KHp4217jeDx019Uk

 A4pTQ6886b401JR5

MagniberDecrypt.zip

 4/2

 zpnjelt

 LyAAS6Ovr647GO65

 nS3A41k9pccn03J2

MagniberDecrypt.zip

 4/2

 gnhnzhu

 I0727788KuT5kAqL

 sCnHApaa61l5U2R0

MagniberDecrypt.zip

 4/3

 hssjfbd

 u5f1d693LGkEgX07

 kV35Z1K3JB7z6P06

MagniberDecrypt.zip

 4/3

 ldolfoxwu

 i24720y16f10qJ21

 fX5U9Z6A2j8ZUvkO

MagniberDecrypt.zip

 4/3

 zskgavp

 nuu9WO56Gc0N5hn7

 ASY0d6dlyrEH6385

MagniberDecrypt.zip

 4/3

 gwinpyizt

 dcQOje3dzW469125

 T5438Nl5VI62XxM8

MagniberDecrypt.zip



표에 언급된 예제 중, 3월 30일자의 prueitfik 확장자를 갖는 파일에 대해 복구툴을 이용한 복구 방법은 다음과 같다. (* cmd.exe 를 관리자 권한으로 실행)




1) 단일 파일에 대해 복구할 경우


/f 옵션에 파일에 대한 경로를 지정한 후 "/e 확장자 /k 키 /v 벡터 값"을 입력한다.




2) 특정 드라이브(이동식 디스크 등) 혹은 폴더에 대해 전체 복구할 경우





3) "c:\" 부터 복구할 경우

특정 폴더 나 드라이브를 지정하지 않더라도, c:\ 경로 부터 탐색 한다. 이 때는 /f, /d 옵션을 주지 않아도 된다.



※ 암호화된 파일이 존재하는 특정 폴더에 대해서 "파일 목록 읽기 실패"할 경우에는 임의로 새 폴더를 생성하여 해당 폴더에 파일들을 저장하고 /d "새 폴더 경로" 옵션을 통해 복호화 하면된다.


복구가 완료될 경우 아래 그림처럼 ".prueitfik" 확장자가 제거된 상태로 같은 경로에 저장된다.






[업데이트 - 2018.04.03]

모든 폴더를 대상으로 자동으로 진행하는 bat 파일 추가 업데이트


1. 암호화 확장자에 해당하는 탭의 다운로드 항목의 zip 파일을 다운로드


2. 압축 해제 후 bat 파일을 관리자 권한으로 실행





[복구툴 다운로드]

"안랩이 제공하는 전용 백신 및 랜섬웨어 복구툴은 사용자가 비영리 목적으로 다운로드하여 설치 및 이용할 수 있으나 영리적인 목적으로의 사용은 금지되어 있습니다.

만약 영리적인 목적의 이용 · 판매  · 재판매 행위가 확인될 시에는 법적 조치를 취할 수 있음을 밝혀둡니다."

Posted by 분석팀

국내 사용자를 타겟으로한 Magniber 랜섬웨어는 파일 내부에 고정된 대칭키 방식(AES-128, CBC모드)으로 파일을 암호화하며, 암호화에 사용된 키를 추가로 공개키로 암호화하는 과정이 없음으로 해당 대칭키 정보만 알면 복원이 가능한 구조를 갖는다. 하지만, 랜섬웨어는 암호화 과정 후에 자신을 삭제하는 기능이 존재하여, 사실상 복원이 불가능한 상황이다이러한 파일내부에 저장된 키 정보를 알면 복원이 가능하다는 취약성을 바탕으로 5개월 전 아래의 GitHub 사이트를 통해 Magniber 랜섬웨어의 복호화 코드가 공개되었다.


https://gist.github.com/evilsocket/b89df665e6d52446e3e353fc1cc44711


당시 Magniber 랜섬웨어에 암호화된 파일의 시작 첫 16바이트에는 초기화 벡터값을 저장한다. 하지만 현재 변형된 Magniber 랜섬웨어는 암호화된 파일 내부에 벡터정보를 저장하지 않고, 랜섬웨어 내부에 키와 벡터값을 가지고 있다. 


안랩에서는 매일매일 새로운 변형이 배포되는 상황에서 암호화 확장자 별로는 고정된 키 정보가 사용된 다는 점을 바탕으로 확장자와 키 정보를 제공하고자 한다. 이를 통해 감염피해 고객 중, 공개한 확장자로 암호화된 경우, 제공예정인 복구툴을 통해 복원이 가능하도록 한다. 아래의 <그림 1> <그림 2>에서 Magniber 랜섬웨어가 파일을 감염시킬 때 사용하는 암호화 알고리즘이 AES-128 CBC모드 인 것을 확인할 수 있다.


< 그림 1. RSA-AES 암호화 사용 >



< 그림 2. CBC 모드 사용 >


AES-128 CBC모드는 대칭키 방식의 블록 암호화로, 이때 사용되는 16 바이트의 대칭키와 16 바이트의 초기화 벡터는 압축해제 한 랜섬웨어 파일 내부에 저장되어 있다. 아래의 <그림 3> 3 16일에 수집된 샘플이며 압축해제 과정을 거친 후에 키와 확장자, 초기화 벡터값을 파일 내부에 가지고 있는 것을 보여준다.


< 그림 3. Magniber 랜섬웨어 내부에 저장된 key, 확장자, 초기화 벡터 >



아래의 < 1> 지속적으로 유포 중인 Magniber 랜섬웨어 중 일부의 확장자와 키, 초기화 벡터 값을 정리한 것으로 감염된 파일의 확장자에 따라 키와 초기화 벡터 값이 달라진다.


 수집 날짜

확장자 

키 

초기화 벡터 

 01/16

 qshyrt

 p4Ygp14C4819L58t

 aC5Lo5Z431665033

 01/24

 sphtkgo

 Fok67q8kK2u9106Z

 g480w799652z86V7

 02/05

 cnkkykps

 e81482f90mA84aWO

 be1r75Za8L02hS5F

 02/28

 xuorfaas

 FSNweo784J9123MO

 gVHRq8cLy5c47f42

 03/16

 qwjfypajw

 Z97UNAhSB586M8b2

 a884GxkFHNbQm1M5

 03/29

 smrpzykh

 D9k3Q8M791Pd6E6H

 gqp7J4c2W16C3DIz

< 표 1. 날짜 별 Magniber 랜섬웨어 정보 >


만약 감염 파일의 확장자가 같다면, 동일한 키와 초기화 벡터를 가지는 것을 아래의 < 2>를 통해 알 수 있다.


 Hash

컴파일시간

확장자 

키 

초기화 벡터 

7fe28d48fea54f55b797561ef664c5b3 


2018/03/27 03:30:58 UTC

 afseslnoy

 YQL62z574m7Z3Zud

 p7gtLlTs5R6j723U

 350e5bda858cca10ba774e4fcb5925e0

2545c6c70fa34f5ea1c55513cab29c84 

4488c3c623dd008591cff82cd24d0462 

5165ea305bbb107df2eaf5479f72a508 

a688d3534d0925154c042c3c3de6c9d7 

b4c6b7d79c0a891e2fed6c5af2d80057 

bfbbbb22eca1234afb278d7a3d0c1089 

c5a927e477a0940b8a21c3463e55b830 

ede965f0e76764bd8ef6c4f9682d87b3 

< 표 2. 같은 확장자에 감염된 파일의 키와 초기화 벡터 >



안랩에서는 지속적으로 수집되는 Magniber 랜섬웨어의 정보를 바탕으로 향후 감염된 확장자에 따른 복호화 도구를 제공할 예정이다공개할 복호화 도구는 <그림 4>처럼 사용자로 부터 3개의 인자 값을 전달 받아 동작하는 구조이다.



< 그림 4. Magniber 랜섬웨어 복호화 콘솔 프로그램>


  • 첫 번째 인자 값 : 확장자 (prueitfik )
  • 두 번째 인자 값 : (EV8n879gAC6080r6 )
  • 세 번째 인자 값 : 벡터 (Z123yA89q3m063V9)


복호화가 완료된 결과는 아래 <그림 5>와 같으며, 복호화된 파일의 확장자는 ".dec"를 갖는다.



<그림 5. 복호화가 완료된 폴더 내부>



현재 V3에서는 Magniber 랜섬웨어를 수동, 실시간 모두 진단이 가능하며, 다음의 진단명으로 진단하고 있다. 복구툴은 4월 2일 ASEC블로그를 통해 제공할 예정이며, 확장자//벡터 정보는 지속적으로 업데이트하여 제공될 예정이다.


- 파일 진단 : Trojan/Win32.Magniber (V3: 2018.03.28.03)

- 행위 진단 : Malware/MDP.Create


Posted by 분석팀

멀버타이징(Malvertising)을 통해 유포되는 Magniber 랜섬웨어의 최근 유포 방식이 변화하였다. 기존에 유포되던 실행파일(.exe) 형식에서 라이브러리 파일(.dll)로 변화하여 유포되는 정황이 포착되었다. <그림 1>은 Magniber 랜섬웨어 유포에 사용되는 스크립트 원본이다. 해당 스크립트는 Magniber 랜섬웨어를 사용자 시스템에 생성하고 실행하는 역할을 수행한다.


<그림 1. Magniber 랜섬웨어 유포 스크립트 원본>


<그림 2>는 원본의 난독화가 해제된 스크립트이다. 유포 스크립트는 <그림 3>과 같이 %HOMEPATH% 경로에 DLL 형태의 랜섬웨어 파일을 생성한다. 그리고 <그림 2>의 빨간 박스의 실행문에 의해서 WMI 쿼리를 통해 DLL 파일을 실행한다. 

<그림 2. 난독화 해제된 Magniber 랜섬웨어 유포 스크립트>




<그림 3. 유포 스크립트를 통해 생성된 랜섬웨어 파일>


해당 쿼리문은 <표 1>과 같이 rundll32.exe를 이용해 랜섬웨어 DLL파일을 구동시키는 명령문이다. rundll32.exe 의 두 번째 인자인 "c4wrfevre" 는 실행할 export 함수명에 해당한다. 해당 쿼리를 통해 <그림 4>와 같이 사용자 시스템에서 Magniber 랜섬웨어가 실행된다.


rundll32.exe %HOMEPATH%upTO137.i96DS4, c4wrfevre

<표 1. WMI 쿼리를 통해 실행되는 rundll32.exe 명령문>


<그림 4. WMI쿼리를 통해 실행된 rundll32.exe>



현재 V3에서는 Magniber 랜섬웨어를 수동, 실시간 모두 진단이 가능하며, 다음의 진단명으로 진단하고 있다.


- 파일 진단 : Trojan/Win32.Magniber (엔진 반영 버전 : 2018.03.27.01)

- 행위 진단 : Malware/MDP.Execute.M1883

Posted by 분석팀

최근 국내에서도 Hermes 랜섬웨어의 새로운 유포방식으로 알려진 "GreenFlash Sundown" 웹 공격툴킷(Web Exploit Kit)이 발견되었다.

 

 

침해된 사이트에 게시된 기사 페이지 내부에는 아래와 같이 난독화된 악의적인 스크립트가 포함되어 있고 이를 통해 "GreenFlash Sundown" 툴킷으로 연결된다.

 

(그림) 삽입된 악의적인 스크립트

 

 

(그림) 난독화 해제된 스크립트 코드

 

"GreenFlash Sundown"은 Adobe Player를 위한 SWF 파일 형식으로 구성된 웹 공격툴킷(Web Exploit Kit)으로, 파일의 내부에서 난독화, 다운로드 및 파일 로딩 단계를 여러번 거치는 복잡한 내부구조를 갖는 것이 특징이다.

  • 다단계 다운로드 구조
  • 탐지 우회 및 난독화 기법 사용
  • 다양한 취약점 및 0-day 취약점 사용

 

// 다단계 다운로드 구조

 

아래는 웹 공격 툴킷의 메인 랜딩페이지 역할을 수행하는 첫 번째 SWF 파일(page.css)의 내부 구조이다.

해당 파일은 내부에 명시된 다운로드 주소로부터 페이로드를 다운로드한 후 새로운 SWF 파일을 구성하고, 이를 메모리상에서 재로딩하는 방식으로 동작한다.

 

(그림) page.css(SWF) 파일 내부

 

각 단계별로 파일을 구성하는 방식에는 차이가 있으나, 첫번째 파일과 같이 다운로드한 데이터를 재구성하여 SWF 파일을 재로딩하는 방식이 순차적으로 여러 단계 더 진행된다.

단계별로 접근하는 URL들은 아래와 같다.

 

단계

 접근 URL

형식

설명

 1단계

 hxxp://logicbanners.info/demo/page.css

 SWF

 GreenFlash Sundown 랜딩페이지 역할

 2단계

 hxxp://sugarbanners.info/index.php

 data

 페이로드 다운로드 후 SWF 파일 구성

 3단계

 hxxp://ship.advertisstreamer.info/saz.dat

 GIF

 GIF 파일 내부의 데이터를 이용하여 SWF 파일 구성

 4단계

 

 SWF

 파일 내부에 존재하는 데이터로 취약점 SWF 파일 구성

 

// 탐지 우회 및 난독화 기법

 

GreenFlash EK(Exploit Kit)에서는 알려진 다양한 우회 방법을 활용하고 있다.

웹페이지상에서 자주 이용하는 CSS(스타일 시트) 파일을 가장한 SWF 파일 다운로드 및 페이로드에 이용되는 php 파일 확장자 사용은 이미 널리 알려진 확장자 변경 방법이다.

 

특히, 아래는 2단계 SWF 파일 안에서 발견되는 AS(ActionScript) 코드로서 3단계 SWF 파일을 구성하는 역할을 수행한다.

내부에 명시된 URL(saz.dat)로부터 온전한 GIF 파일 형식의 데이터를 다운로드한 후 특정 옵셋(offset) 위치의 데이터만을 취해서 SWF 파일을 재구성한다.

만약, 전처리 단계에서 파일의 시그니처만으로 탐지형식을 구분하는 단순 구조의 보안제품이라면 이러한 방식으로 쉽게 탐지를 우회할 수 있게 된다.

 

(그림) 3단계 SWF 파일 구성을 위한 코드 (2단계 파일 내부에서 발견)

 

 

이외에도, 아래와 같이 3단계 파일은 기존 Sundown Exploit Kit와 유사한 방식으로 취약점 파일을 난독화된 데이터로 가지고 있다.

 

(그림) 3단계 파일 구성

 

// 다양한 취약점 0-day 취약점

 

기존 웹 공격 툴킷(Exploit Kit)과 동일하게 GreenFlash에서도 사용자 시스템 환경에 맞는 다양한 취약점들이 이용된다.

 

낮은 Adobe Flash Player 버전을 사용하는 경우, 전형적인 Sundown EK 취약점에서 발견되던 이전의 알려진 취약점들이 발견된다.

특히, 28.0.0.137 이전 버전이 설치된 경우 아래와 같이 가장 최근의 제로데이로 알려진 CVE-2018-4878 취약점이 악성코드 유포에 이용된다.

 

 

(그림) CVE-2018-4878 취약점


웹 공격 툴킷 "GreenFlash Sundown"이 최신 제로데이 취약점 CVE-2018-4878을 이용하는 경우, 악성코드 유포는 맨 마지막 단계인 Flash 취약점 파일의 내부에 존재하는 쉘코드를 통해서 이루어진다.

 

 

해당 쉘코드는 아래 다운로드 URL 주소(C&C)로부터 받은 페이로드를 복호화한 후 실행한다.

 

 

 hxxp://ship.advertisstreamer.info/index.php

 

 

최근 (2018.03.22 기준) 유포된 악성코드에 대한 정보 및 자사 진단정보는 아래와 같다.

  • 파일명 : index.htm

  • MD5 : c756dc62d688f3370009d7ff17c260bc

  • 진단명 : Trojan/Win32.Hermesran.R223393

  • 행위 진단 : Malware/MDP.Ransom.M1171 / Malware/MDP.Create.M1369

Posted by 분석연구팀

스팸 메일에 첨부되어 유포되는 Microsoft Office 문서 파일 악성코드 중 Hancitor (Chanitor) 유형이 2016년 이후 다시 활발히 유포되고 있는 정황이 확인되었다. 


Hancitor 악성코드는 VBA 매크로를 이용하여 ‘사용자 정의 폼’ 내부의 암호화 된 쉘코드를 이용하여 생성한 PE를 정상 프로세스에 인젝션하여 악성 기능을 수행한다. 관련하여 2016년 다음과 같은 제목으로 본 블로그에 분석 정보를 제공하였다. 


‘MS 워드 문서에서 폼 개체를 활용한 악성코드’ - http://asec.ahnlab.com/1052


최근 유포되고 있는 Hancitor 악성코드는 2016년과 비교했을 때 폼 개체 이용 및 프로세스 인젝션을 비롯한 전체적인 동작 방식에는 큰 변화가 없다. 부분적으로 쉘코드 생성 후 실행을 위한 Windows API가 달라지고 인젝션 대상 프로세스가 달라지는 차이가 확인되었다. 


1. Microsoft Office 문서 파일



VBA 코드는 파일마다 난독화 방식에 차이가 있으나, 공통적으로 내부 바이너리를 이용하여 쉘코드가 메모리에 로드 및 실행되도록 한다. 이 과정에서 시스템의 x86 또는 x64 환경을 확인하는데 이는 시스템의 프로세서 아키텍처 정보와 더불어 Microsoft Office 제품의 설치 버전 (x86/x64) 에 영향을 받는다. 2016년 샘플과 비교했을 때 이 부분의 코드에 차이가 연산 방식으로 변화한 것이 확인되었다. 



‘사용자 정의 폼’을 이용하여 TabStrip 컨트롤 내에 악성 바이너리를 포함한 방식은 동일하다. 다만 탭 내 아이템 개수를 다수 추가하였고 그 내부에 바이너리를 포함시켜서 악성 문서 파일에 대한 Generic 진단 방식을 우회한다. (http://asec.ahnlab.com/1052 [그림 4] 참고) 이후 로드된 바이너리는 VBA 코드의 복호화 과정을 통해 쉘코드로 생성된다. 복호화 방식은 파일마다 다르게 구현되어 있다.

 





2. 메모리에 쉘코드 로드 후 실행 – 사용 API 변화


생성된 쉘코드를 WINWORD.exe 메모리에 올리고 실행하기 위한 단계로, 기존의 분석 대상 Hancitor는 RtlMoveMemory / VirtualAllocEx / EnumTimeFormatsW Windows API를 이용하였다고 하였다. 


이번에 새롭게 등장한 Hancitor는 공통적으로 메모리 관련 핵심 기능을 수행하기 위해 다음 Windows API를 이용하는 것으로 바뀌었다. 각 API는 VBA 코드에 포함되어 있으며 Alias 키워드로 호출된다.
  • NtAllocateVirtualMemory
  • NtWriteVirtualMemory
  • CreateTimerQueueTimer

아래 코드는 NtAllocateVirtualMemory 함수를 호출하는 부분이며, 프로세스 내 페이지 영역에 할당된 메모리의 BaseAddress를 얻는다. 이 파일에서는 0x194000 (=26476544) 주소 번지 영역이 할당되었다. 


이후 해당 메모리 영역에 NtWriteVirtualMemory 함수를 이용하여 버퍼에 저장된 데이터를 쓰는데 이 때 데이터가 위에서 VBA 코드의 복호화 과정을 통해 생성된 쉘코드이다. 아래 코드에서는 ‘afflatus’ 버퍼에 저장된 데이터가 ‘numerose’ 주소에 써진다. 즉, 쉘코드를 WINWORD.exe 프로세스에 올려놓는 작업이다. 0x194000 메모리 영역은 RWX 권한을 갖는다.


쉘코드는 CreateTimerQueueTimer 타이머 큐(Queue) 생성 콜백 함수를 이용하여 호출된다. 콜백함수를 이용하는 것은 2016년 Hancitor 악성코드가 EnumTimeFormatsW 함수를 이용했던 것과 동일하다. 호출되는 코드 시작 주소는 쉘코드 상에서 +0x1090 영역으로 Opcode 이다.


3. 쉘코드의 기능 – 악성 PE 인젝션

쉘코드의 기능은 과거 Hancitor와 동작 과정 및 기능면에서 크게 달라진 부분은 없다. 실행되고 있는 WINWORD.exe 프로세스(콜백 함수의 시작 주소)에 디버거를 붙여서 보면, 해당 코드는 가장 먼저 ntdll.ldrLoadDll 함수의 주소를 얻는다. ldrLoadDll 은 DLL 로드를 위한 함수로써 이후 기능에 필요한 DLL 라이브러리와 함수 주소를 얻는다.


Kernel32.dll과 PSAPI.dll 모듈과 내부 함수들의 주소를 다수 필요로 하는데, 대표적으로 다음 API 함수들의 주소를 얻는다.
  • Kernel32.ExpandEnvironmentStringsW
  • Kernel32.VirtualAlloc
  • Kernel32.WriteProcessMemory
  • Kernel32.IsWow64Process
  • Kernel32.CreateProcessW
  • PSAPI.GetMappedFileNameA
쉘코드는 페이지 영역에 메모리를 할당하고 해당 주소 영역에 쉘코드 내 바이너리를 복호화하여 Base64로 인코딩 된 데이터를 생성한다. 이후 Base64 데이터를 디코딩하는 과정을 통해 최종적으로 악성 PE를 생성한다. 이 과정은 기존 분석 내용와 동일하다. 


최종 생성된 PE는 Windows 정상 프로세스인 svchost.exe 인젝션되어 동작한다. 파일 경로는 하드코딩 되어 있으며 프로세스는 CreateProcessW API를 이용하여 실행된다. 2016년 Hancitor는 x86 환경에서는 explorer.exe에 인젝션하여 동작하였던 것과 차이가 있다. (http://asec.ahnlab.com/1052 [그림 10] 참고)

x86 - %Windir%\system32\svchost.exe 
x64 - %Windir%\SysWOW64\svchost.exe


악성코드가 정상 svchost.exe 프로세스를 생성하고 코드를 인젝션하여 동작하기 때문에 WINWORD.exe 프로세스가 종료되어도 악성 행위가 지속된다. 또한 정상 프로세스 내에서 동작하기 때문에 사용자는 이상 증상을 인지하기 어렵다.

최종 수행하는 기능은 기존과 동일하게 감염 PC의 사용자, 시스템 정보 등을 C&C 주소로 전송하는 것이며, 해당 주소로부터 명령을 받아 파일 다운로드, 추가 인젝션 행위 등을 수행할 수 있다. 먼저 api.ipify.org 접속을 통해 사용자 PC의 공인 IP 정보를 획득하며, 이 정보를 포함하여 총 3개의 C&C에 접속을 시도한다. 아래는 인젝션 된 svchost.exe가 C&C에 접속 시도하는 모습이다. C&C에 전송되는 데이터 형식은 다음과 같이 고유한 형식으로, 이 또한 기존 악성코드와 동일하다. 



현재 안랩 제품에서는 Hancitor 유형의 악성코드를 다음 이름으로 진단하고 있다.

  • 파일 진단: W97M/Downloader (2018.03.14.00)
  • 행위 진단: Malware/MDP.Injector.M393 (MDS 전용) 


Posted by 분석팀

최근 CVE-2018-0802 취약점이 포함된 RTF 파일이 다수 유포된 정황이 확인 되었다. 대게 9~12KB의 작은 크기의 문서 파일 형태로 유포 되었으며, 주문/결제 확인 등의 문구를 통해 사용자의 실행을 유도 한다. 해당 문서 실행 시 문서 내에 포함된 쉘코드가 실행되어 추가적인 악성 행위가 발생한다.


[ 그림 1. 문서 파일 형태 ]


문서 파일 내부에 Ole10Native 객체가 존재하고, 이 객체의 데이터 영역에 쉘코드가 포함되어 있다.


[ 그림 2. RTF 내에 포함된 객체 ]


문서 파일 실행 시 내용이 없는 빈 문서처럼 보인다.


[ 그림 3. 문서 파일 실행 ]


하지만 취약점으로 인해 사용자가 인지하지 못하게 정상 프로세스인 eqnedt32.exe 가 실행 되고 해당 파일에서 Overflow가 발생하여 RTF 문서에 포함되어 있는 쉘코드가 실행된다.


RTF 문서 내에 포함된 쉘코드는 크게 복호화 부분과, 암호화된 데이터, 암호화된 코드 로 구성되어 있다. 먼저 복호화 코드가 실행 되면 IMUL, ADD, XOR 등을 활용하여 암호화된 데이터와 코드를 복호화 한다.


[ 그림 4. 복호화된 데이터 ]


복호화된 데이터는 파일을 다운로드 받을 URL 과 PC에 저장할 파일명을 가지고 있고, 복호화된 코드는 이를 이용하여 URLDownloadToFile 함수를 이용하여 파일을 다운로드 받은 뒤 WinExec 로 해당 파일을 실행 후 종료한다.


파일 다운로드 특성상 유포되는 파일은 바뀔 수 있지만, 현재 다운로드 되고 있는 파일은 백도어로 확인 되었다.


현재 V3 에서는 다음 진단명으로 진단 하고 있다.


- 파일 진단 : RTF/Exploit (2018.03.20.00) //취약점 문서 파일

- 파일 진단 : Trojan/Win32.Agent.R222910 (2018.03.19.05)  // 다운로드된 파일


또한 추가적인 대비로 취약점이 발생하지 않도록 보안 업데이트를 권장한다. 보안 업데이트와 관련된 정보는 아래 사이트에서 확인 할 수 있다.


- https://portal.msrc.microsoft.com/en-US/security-guidance/advisory/CVE-2018-0802


Posted by 분석팀