Forensic/포렌식 공부

[디스크 복구] GoldenEye 랜섬웨어 MBR 복구

Ron Weasley 2022. 8. 14. 15:06

*본 내용은 공부를 목적으로 만들어진 내용입니다. 악용 시 법적인 책임을 물 수 있습니다.

 

 

앞 시간에 Petya 랜섬웨어를 복구 하는 방법을 배웠었습니다. 이번 시간에는 Petya 랜섬웨어의 변형된 형태인 GoldenEye 랜섬웨어를 복구하는 방법을 배워보겠습니다.

 

http://m.boannews.com/html/detail.html?idx=52668 

 

보안뉴스를 보게 되면 GolednEye 랜섬웨어에 대한 내용들이 자세히 설명되어 있으니 참고 해주시길 바랍니다.

 

사실 Petya 랜섬웨어랑 별반 다를거 없은 GoldenEye 랜섬웨어는 XOR 연산으로 0x07 변형이 되었고, 감염시키는 오프셋이 0x7202가 아니라 0x4602 입니다. 그래서 앞서 배웠던 Petya 랜섬웨어 복구하는 것이랑 똑같이 하시면 됩니다.

마찬가지로 노란 해골모양이 나오며 부팅이 되질 않습니다. 그리고 key를 하나 누르면 다음 화면으로 넘어가게 됩니다.

이제 그대로 부팅이 되게끔 복원을 시도하겠습니다. 단계는 2단계로 나뉩니다.

1단계 : XOR 암호화된 MBR을 XOR 복호화하여 MBR획득
2단계 : 악성 데이터가 덮어 쓰인 영역을 모두 0으로 채움

FKT Imager로 열어서 [0x4600]을 입력하면 XOR된 MBR 정보를 확인할 수 있다.

그래서 감염된 MBR을 복구하기 위해 hxd에디터에 저 0x4400 ~ 0x45FF까지 복사하였습니다.

http://tomeko.net/online_tools/xor.php?lang=en 

링크가 걸린 저 사이트에서 "키 값" 을 07로 주고 복원을 시키면 바로 원본 MBR을 구할 수 있습니다.

복원이 완료 되었다면, 악성 데이터가 덮인 vmdk에서 정상적인 MBR을 덮어 씌워야합니다.

악성 데이터가 덮인 MBR은 이제 ftk에서 0x00오프셋에 있는 데이터를 복사해서 불러오면 됩니다.

15,488 섹터에 손상된 MBR이 존재합니다. 그리고 복구한 원본 MBR을 덮어씌웁니다.

다음으로 할 일은 악성 데이터가 덮인 영역을 복구해야 하는데, 바로 다음부터 나오는 오프셋인 0x790200부터 4402만큼만 0 으로 값을 채워준다면 정상적으로 복구가 되겠지요!! 왜냐면 앞에 200만큼은 MBR에서 복구를 했기 때문에 4602에서 200을 뺀 나머지 4402만 채워주시면 됩니다. 부팅을 진행해보겠습니다.

부팅이 정상적으로 돌아왔습니다!!!!

 

여기까지 MBR을 감염시키는 2개의 랜섬웨어를 복구시키는 방법에 대해서 배워봤는데요...사실 설명을 잘 하지는 못해서 이해가 안되는 부분이 있다면 언제든지 댓글 남겨주시길 바랍니다!!