랜섬웨어정보
홈 > 커뮤니티 > 랜섬웨어 복호화 툴
2016-02-02 16:47:36
github.com의 ‘Googulator’회원이 TeslaCrypt2.2를 복호화하는 소스를 공개하였습니다.
이에 랜섬웨어침해대응센터에서는 아직 암호화된 파일을 가지고 계신 분들에게 도움을 드리고자 공지합니다.
'googulator'에게 감사를 표하는 바입니다.
본 과정은 TeslaCrypt2.2(.vvv, .ccc)만 적용되며 최근 유행하는 TeslaCrypt3.0(micro, ttt, xxx, zzz)는 적용되지 않습니다.
암호화된 PDF 파일에서 키를 추출하는 과정이며 OS:Windows7 64bit CPU:intel-i5 RAM:8GB 환경에서 테스트하였습니다.
본 과정은 github.com의 Googulator의 소스로 진행하며, 방법만 제시할 뿐 복호화 되지 않거나, 파일이 훼손되는 것에 대해 책임지지 않습니다.
반드시 복사본으로 시도하시기 바랍니다.
(원문: https://github.com/Googulator/TeslaCrack)
이번 TeslaCrypt2.2(.ccc, .vvv)복호화 방법은 Bitcoin key를 이용하여 복호화 하는 방법입니다.
이전에 올렸던 'TeslaCrypt2.2(.ccc, .vvv) 복호화방법(AES key)' 글의 <복호화 준비과정> ~ <키 추출과정> 8번까지는 공통과정 입니다.
이전에 AES key로 복호화를 시도했으나 복호화가 안되신 분은 <키 추출과정> 9번부터 진행하시면 됩니다.
복호화 준비과정
1. C드라이브에 decrypt폴더 생성
2. Python 설치
↑ https://www.python.org 접속 후 Downloads -> Windows 메뉴로 이동
↑ Lastest Python 2 Release - Python 2.7.11 클릭
↑ 본인의 OS가 64bit인 경우 ->Windows x86-64 MSI installer를 클릭하여 python-2.7.11.amd64.msi 다운로드 후 실행
↑ 본인의 OS가 32bit인 경우 -> Windows x86 MSI installer를 클릭하여 python-2.7.11.msi 다운로드 후 실행
↑ Next 클릭
↑ Next 클릭
↑ 다음과 같이 설정하고 Next 클릭
↑ Finish클릭
3. pycrypto2.6 설치
* 본인의 OS가 64bit인 경우 -> http://www.voidspace.org.uk/downloads/pycrypto26/pycrypto-2.6.win-amd64-py2.7.exe
* 본인의 OS가 32bit인 경우 -> http://www.voidspace.org.uk/downloads/pycrypto26/pycrypto-2.6.win32-py2.7.exe
* 클릭하고 다운로드하여 실행(Next만 누르시면 됩니다.)
4. 본인의 OS가 32bit일 경우 추가 설치(64bit 해당 없음)
https://www.microsoft.com/ko-kr/download/details.aspx?id=21576 접속하여 다운로드 클릭
↑ 다운 후 설치
5. TeslaCrack 다운로드
↑ https://github.com/Googulator/TeslaCrack 접속 후 Download ZIP을 클릭하여 TeslaCrack-master.zip을 다운로드 한 다음 압축해제 하여 파일들을 C드라이브의 decrypt폴더로 이동
6. yafu1.34 다운로드
↑ http://sourceforge.net/projects/yafu 접속 후 Download를 클릭하여 yafu-1.34.zip 다운로드
* yafu-1.34.zip 압축해제 후 파일들을 decrypt폴더로 이동
↑ 과정1~6 이후 C:decrypt 폴더
키 추출 과정
※ 참고1 : 본 <키 추출 과정>은 원본파일형식이 PDF일 경우를 가정합니다.
PDF에서 추출한 키로 다른 형식의 파일들도 복호화가 가능합니다.
JPG나 XLSX에서 키를 추출할 경우 c:decrypt 폴더 내에 unfactor.py를 우클릭하여 ‘Edit with IDLE’를 클릭하여 magic
number를 수정해야 합니다. JPG일 경우 -> magic = 'xffxd8'입니다.
※참고2. 암호화 된 파일의 형식이 ccc일 경우 (vvv일 경우 생략)
teslacrack.py 파일을 우클릭, 'Edit with IDLE'를 클릭하여 extension을 '.ccc'로 수정합니다.
1. 시작->모든 프로그램->보조프로그램->명령프롬프트를 우클릭하여 관리자 권한으로 실행
2. c:decrypt 폴더로 이동
3. 다음 명령어를 입력
python -c "import urllib2; print urllib2.urlopen('https://bootstrap.pypa.io/ez_setup.py').read()" | python
4. 다음 명령어를 입력
easy_install pip
5. 다음 명령어를 입력
pip install pycrptodome
6. 다음 명령어를 입력
pip install ecdsa
7. 키 추출할 파일을 복사
키를 추출할 파일(암호화된 파일)을 c:decrypt 폴더로 복사합니다.
(주의:파일이름을 임의로 영어소문자로 변경 예)2015년자료.pdf.vvv -> aaa.pdf.vvv)
8. 다음 명령어를 입력
python teslacrack.py .
(주의:python teslacrack.py다음 공백 그다음 마침표입니다.)
9. 결과 값에서 공개키를 추출
공개키를 메모장에 적어둡니다.
↑ 본 과정에서 공개키는
0E57F08C415F9B796F27FAEC9DC42AF34E65BA1E383A4B899FC194D57036C2
BD4226B125C97EEFC3FE066638291A1C14F472B76DCA0F4BC9CE9DAACDB7463ABC 입니다.
10. 다음 명령어를 입력 (공개키에서 소인수 추출)
본인의 OS가 64bit인 경우 -> yafu-x64 factor(0x<위에서 추출한 공개키>) -threads 2
본인의 OS가 32bit인 경우 -> yafu-Win32 factor(0x<위에서 추출한 공개키>) -threads 2
↑ 본 과정에서는 yafu-x64 factor
(0x 0E57F08C415F9B796F27FAEC9DC42AF34E65BA1E383A4B899FC194D57036C2
BD4226B125C97EEFC3FE066638291A1C14F472B76DCA0F4BC9CE9DAACDB7463ABC) -threads 2
입니다.
11. 추출된 소인수 확인
추출된 소인수 들을 메모장에 적어둡니다.
↑ 본 과정에서 소인수 들은
2 2 3 41 197 6359 70968389 155294899299743642489
1382827764863134336750390230307 2617253980438790762929403
30557451489294449536540566155110125150974592196074835557246091 입니다.
12. 다음 명령어를 입력 (비밀키 추출)
python unfactor_ecdsa.py "<파일이름>“ <소인수> <소인수> ....
↑ 본 과정에서는 python unfactor_ecdsa.py "aaa.pdf.vvv"
2 2 3 41 197 6359 70968389 155294899299743642489
1382827764863134336750390230307 2617253980438790762929403
30557451489294449536540566155110125150974592196074835557246091입니다.
13. 추출된 비밀키
추출한 비밀키를 메모장에 적어둡니다.
↑ 본 과정에서 추출한 비밀키는
65E4B63EC0FEBA0985D9367381EAD4E4D8E53052B52BF2E608BC00086B48C362 입니다.
과정 13까지 메모장에 적어둔 내용입니다.
14. TeslaDecoder 다운로드 후 압축 해제
http://download.bleepingcomputer.com/BloodDolly/TeslaDecoder.zip
로 접속하여 TeslaDecoder를 다운로드 후 압축 해제
15. TeslaDecoder 실행
TeslaDecoder를 실행 후 Set Key를 클릭
16. Set key
Key(hex)에 메모장에 적어놓은 비밀키(bitcoin)을 입력하고 Extension에는 .ccc, .vvv를 선택하고
Set Key 버튼을 클릭
17. Decrypt Folder 선택
Decrypt Folder를 클릭하여 복호화 할 폴더를 선택합니다. ( 감염PC내의 모든 파일을 복호화하실 때에는 Decrypt All을 선택해주세요.)
18. Decrypt Folder 선택
본 과정에서는 aaa.pdf.vvv가 있는 c:decrypt 를 선택하였습니다.
19. 복호화 시작
'예(Y)'를 클릭
20. 복호화 완료
C:decrypt 폴더 내에 있던 aaa.pdf.vvv파일이 복호화 되었습니다.