PeTya 랜섬웨어 감염 MBR 복구
해당 포스트는 Start up 디스크 포렌식의 PeTya 랜섬웨어 감염 MBR 복구을 복구하는 내용의 실습입니다.
Petya 랜섬웨어란 Petya 랜섬웨어는 유저가 메일을 통해 PDF파일이나 SFX(SoundFX) 파일로 위장한 실행파일을 다운로드한 후 UAC(User Account Control)를 우회하지 않고 실행된다. 강제 재부팅과 MBR영역이 변조되어 파일 접근을 할 수 없도록 한다. 그 이후 해커는 컴퓨터를 복구 시키는 값으로 비트코인을 요구한다.
Petya 랜섬웨어는 MBR영역만 감염시키기 때문에 감염된 하드디스크를 다른 PC의 슬레이브 디스크로 연결하면 디스크에 저장된 파일을 확인 할 수 있다.
해당 디스크를 열어보면 아래와 같은 화면이 나온다.
해당 악성코드로 인해 변경된 MBR구조를 보면 오프셋 0~0x6FFF까지는 악성 데이터로 덮여져 있고, 0x7000 ~ 0x7200 오프셋에는 0x37로 XOR된 MBR 원본이 저장 된다.
이 악성코드는 복구 방법을 2단계로 나눈다.
1단계는 XOR 암호화된 MBR을 XOR 복호화하여 MBR을 획득 후 2단계로 악성 데이터가 덮어쓰인 영역을 0으로 채운다.
우선 XOR로 암호화 된 MBR을 복호화 해주는 작업부터 해야겠다.
FTK Imgaer에서 해당 vmdk 파일을 열고 Go To Offset 창을 열어 0x7000을 검색해준다.
이제 위 정보를 복호화 시켜준다. 복호화 된 MBR을 덮어씌우기 위해 FTK Imager의 0번째 섹터의 헤더의 일부분을 복사해 Hxd에서 위치를 찾아준다.
해당 섹터 부분을 아까 복호화 한 파일로 덮어 씌우면 된다.
이제 다음으로 악성 데이터가 덮인 영역을 복구하는 작업을 해야한다.
해당 작업은 Hxd에서 편집에 블록 선택에서 사작 오프셋을 (감염된 부분)
790200으로 바꾸고 종료 오프셋을 797201로 변경 후
다시 편집에서 선택 채우기에서 00으로 바꾸고 저장하면 된다.
그럼 부팅을 시켰을 때 정상 작동 되는것을 확인 할 수 있다.