Professional Documents
Culture Documents
소개
최근에 DMichael 이 저한테 Relocation을 해결하기 위한 방법을 물어왔습니다.
인터넷 상에서 ImpREC를 만든 제작자의 ReloX 라는 툴을 발견했습니다.
그래서, 어떻게 하는지 스크린샷과 함께 간단한 문서를 만들어봐야겠다고 생각했습니다.
필요한 툴
이 튜토리얼에서는 OllyDbg, ImpREC, LordPE, ReloX, ReloX_Help_GUI.exe (이 문서와 같이
첨부되었습니다.) 가 필요합니다.
Relocations
읽기 전에 relocation에 대한 자세한 설명을 읽어볼 것을 추천드립니다.
이 지식 없이는 당신이 무엇을 하는지 조차도 모를 것입니다.
간단히 말해서, relocation은 동일 ImageBase를 갖는 두 개의 (다른) DLL이 어떤 프로세스의
메모리로 로드될 때 에러가 일어나지 않도록 해줍니다.
튜토리얼
우선 대상이 필요합니다. 저는 UPX를 가지고 제 프로그래밍 디렉토리의 DLL 중의 하나를
패킹하였습니다.
패킹한 DLL은 문서와 함께 첨부시켰습니다. 그러나 어떤 DLL 이라도 작업할 수 있습니다.
아주 간단합니다.
다른 ImageBase로 같은 DLL을 두 번 로드하려면 제가 만든 툴을 사용하면 됩니다.
양쪽 DLL을 모두 덤프하고, ReloX로 작업하고, ImpREC로 수정한 DLL을 툴로 고치면
됩니다.
툴을 아직은 닫지 마세요!
로드된 양쪽 DLL을 LordPE를 사용하여 모두 덤프할 필요가 있습니다.
이 작업을 하고나서 ReloX를 오픈합니다.
(아직 수정되지 않은) 덤프한 양쪽 DLL을 둘 다 선택해줍니다.
마지막 한마디
자, 이제 끝났습니다.
어려운 팩커/프로텍터를 가지고 시작하기 전에, 먼저 쉬운 팩커/프로텍터에 대한 기술을
확실히 마스터하시길 바랍니다.
그럼 이만!