WannaCry 정보정리
이 글은 https://gist.github.com/rain-1/989428fa5504f378b993ee6efbc0b168 를 번역한 내용입니다.
개요
- 알려진 이름 : WannaCrypt, WannaCry, WanaCrypt0r, WCrypt, WCRY
- 감염벡터 : MS-17-010 패치 안된, WIN10 이하 모든버전의 윈도우, 자가전파에 EternalBlue1 MS17-010 사용
- 몸값 : $300 ~ $600, 샘플 내 ‘rm'(remove) 명령어 존재, 샘플 충돌시 리셋하기 위한 것으로 추정
- 백도어 : 전파를 위해 감염PC 내 존재하는 RDP 세션에 접근하는 루프가 있다. 이를 통해 DOUBLEPULSAR 백도어를 설치. 또한 VSS도 삭제한다. 출처
- 킬스위치 : 웹사이트 www.iuqerfsodp9ifjaposdfjhgosurijfaewrwergwea.com 에 접근할 수 있다면, 전파를 멈추고 자가종료한다. 출처
마이너 변종이 발견됐다. 바이너리 수정을 통해 킬스위치가 삭제된것으로 보인다. 바이너리 수정을 통해 패치했기에 원 제작자에 의해 재컴파일 된것으론 보이지 않는다. 다른 한 편으론, 이 킬스위치의 삭제가 변종이 갖는 변화의 전부이다. 바이너리 내 암호화키, 비트코인 주소 모두 예전과 동일하다. MS 패치
감염 현황
- NHS (uk) turning away patients, unable to perform x-rays. (list of affected hospitals)
- Nissan (uk) http://www.chroniclelive.co.uk/news/north-east-news/cyber-attack-nhs-latest-news-13029913
- Telefonica (spain) (https://twitter.com/SkyNews/status/863044193727389696)
- power firm Iberdrola and Gas Natural (spain)
- FedEx (us) (https://twitter.com/jeancreed1/status/863089728253505539)
- University of Waterloo (us)
- Russia interior ministry & Megafon (russia) https://twitter.com/dabazdyrev/status/863034199460261890/photo/1
- VTB (russian bank) https://twitter.com/vassgatov/status/863175506790952962
- Russian Railroads (RZD) https://twitter.com/vassgatov/status/863175723846176768
- Portugal Telecom
- Сбербанк – Sberbank Russia (russia)
- Shaheen Airlines (india, claimed on twitter)
- Train station in frankfurt (germany)
- Neustadt station (germany)
- the entire network of German Rail seems to be affected (@farbenstau)
- in China secondary schools and universities had been affected (source)
- A Library in Oman (@99arwan1)
- China Yanshui County Public Security Bureau (https://twitter.com/95cnsec/status/863292545278685184)
- Renault (France) (http://www.lepoint.fr/societe/renault-touche-par-la-vague-de-cyberattaques-internationales-13-05-2017-2127044_23.php) (http://www.lefigaro.fr/flash-eco/2017/05/13/97002-20170513FILWWW00031-renault-touche-par-la-vague-de-cyberattaques-internationales.php)
- Schools/Education (France) https://twitter.com/Damien_Bancal/status/863305670568837120
- University of Milano-Bicocca (italy)
- A mall in singapore https://twitter.com/nkl0x55/status/863340271391580161
- ATMs in china https://twitter.com/95cnsec/status/863382193615159296
- norwegian soccer team ticket sales https://www.nrk.no/telemark/eliteserieklubber-rammet-av-internasjonalt-dataangrep-1.13515245
- STC telecom (saudia arabia, more, more)
- 그 외… https://en.wikipedia.org/wiki/WannaCry_cyber_attack#List_of_affected_organizations 계속 업데이트 중
암호화 상세
- 매 감염시 RSA-2048 키 쌍 생성
- 공개키는 BLOB 로 익스포트해 00000000.pky 로 저장
- 개인키는 공개키로 암호화돼 00000000.eky 로 저장
- 각 파일은 AES-128-CBC 알고리즘으로 암호화. 매 파일마다 새로운 키 사용
- 각 AES 키는 Advapi32!CryptGenRandom 으로 생성
- 각 AES 키는 매 감염시 마다 생성된 RSA 키 쌍으로 암호화돼
매 감염마다 갱신되는 RSA 개인키를 암호화한 데 쓰인 RSA 공개키는 DLL 내에 포함된다.
- https://haxx.in/key1.bin <- 개인키 암호화에 쓰이는 랜서웨어 공개키는
- https://haxx.in/key2.bin <- dll 복호화 키
더 상세한 내용은 여기 참고
비트코인 주소
3 개의 비트코인 지갑이 샘플 내 하드코딩돼있다.
- https://blockchain.info/address/13AM4VW2dhxYgXeQepoHkHSQuy6NgaEb94
- https://blockchain.info/address/12t9YDPgwueZ9NyMgw519p7AA8isjr6SMw
- https://blockchain.info/address/115p7UMMngoj1pMvkpHijcRdfJNXj6LrLn
C2 서버
- gx7ekbenv2riucmf.onion
- 57g7spgrzlojinas.onion
- xxlvbrloxvriy2c5.onion
- 76jdd2ir2embyv47.onion
- cwwnhwhlz52maqm7.onion
랜섬웨어 지원언어
불가리아어, 중국어, 크로아티아어, 체코어, 영어 한국어 등… 모든 언어로 된 랜섬노트 확인은 여기
암호화 화이트리스트
WannaCrypt 는 특정 폴더를 암호화 하지 않는다. 몇몇은 시스템 안정성을 위한 것으로 보이지만, 전혀 의도를 알 수 없는 폴더도 포함. 아래 나열된 경로 및 문자열은 암호화 하지 않는다.
- “Content.IE5”
- “Temporary Internet Files”
- ” This folder protects against ransomware. Modifying it will reduce protection”
- “\Local Settings\Temp”
- “\AppData\Local\Temp”
- “\Program Files (x86)”
- “\Program Files”
- “\WINDOWS”
- “\ProgramData”
- “\Intel”
- “$”
암호화 대상 확장자는 아래와 같다.
.doc, .docx, .xls, .xlsx, .ppt, .pptx, .pst, .ost, .msg, .eml, .vsd, .vsdx, .txt, .csv, .rtf, .123, .wks, .wk1, .pdf, .dwg, .onetoc2, .snt, .jpeg, .jpg, .docb, .docm, .dot, .dotm, .dotx, .xlsm, .xlsb, .xlw, .xlt, .xlm, .xlc, .xltx, .xltm, .pptm, .pot, .pps, .ppsm, .ppsx, .ppam, .potx, .potm, .edb, .hwp, .602, .sxi, .sti, .sldx, .sldm, .sldm, .vdi, .vmdk, .vmx, .gpg, .aes, .ARC, .PAQ, .bz2, .tbk, .bak, .tar, .tgz, .gz, .7z, .rar, .zip, .backup, .iso, .vcd, .bmp, .png, .gif, .raw, .cgm, .tif, .tiff, .nef, .psd, .ai, .svg, .djvu, .m4u, .m3u, .mid, .wma, .flv, .3g2, .mkv, .3gp, .mp4, .mov, .avi, .asf, .mpeg, .vob, .mpg, .wmv, .fla, .swf, .wav, .mp3, .sh, .class, .jar, .java, .rb, .asp, .php, .jsp, .brd, .sch, .dch, .dip, .pl, .vb, .vbs, .ps1, .bat, .cmd, .js, .asm, .h, .pas, .cpp, .c, .cs, .suo, .sln, .ldf, .mdf, .ibd, .myi, .myd, .frm, .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, .odt, .pem, .p12, .csr, .crt, .key, .pfx, .der
암호화 된 파일 시그니처
<64-bit SIGNATURE> – WANACRY!
– 256 for 2048-bit keys, cannot exceed 4096-bits
– 256 bytes if keys are 2048-bits
<32-bit value> – unknown
<64 bit file size> – return by GetFileSizeEx
– with custom AES-128 in CBC mode
취약점 상세
EternalBlue 에서 공략하는 취약점. NSA와 관련있는 것으로 알려진 equation group 이란 공격그룹에서 개발. ShadowBrokers 에 의해 세상에 알려졌다. MS 는 이 취약점을 2017년 3월 14일 수정 완료. 현 시점에서 0-day 라 볼 순 없다.
관련링크1
관련링크2
Uiwix 랜섬웨어 (Wannacry 변종) 활동
- Wannacry 동일취약점통해 유포 (SMBv1, SMBv2)
- 킬스위치 없음
- 자가전파기능 존재
- .uiwix 확장자로 암호화
- _DECODE_FILES.txt – 랜섬노트명
출처 – heimdalsecurity
- EternalBlue 는 NSA 유출문건에 포함된 MS17-010 을 대상으로하는 익스플로잇 툴. 지난 2017년 4월 14일 ShadowBrokers 에 의해 유출. ↩