Lena Reversing tutorial 03 _ 2
이번엔 RegisterMe.Oops.exe 파일을 가지고 PE header를 고쳐보려고 한다.
RegisterMe.Oops.exe 파일을 실행하면 이전 RegisterMe.exe 파일과 동일하게 실행된다.
Ollydbg에서 실행시켜보면 다음과 같은 오류창이 나온다.
그 후에 내용을 살펴보면 익숙치 않은 내용들을 볼 수 있다.
PE header를 보기 위해 상단의 M 버튼을 클릭한다.
이중 PE header 부분의 오른쪽 마우스를 눌러 Dump를 눌러준다.
내리다 보면 다음과 같이 AddressofEntryPoint와 ImageBase 값을 볼 수 있다.
두 값을 합친 주소가 시작하는 부분이라고 볼 수 있다. 따라서 00401000부분으로 이동한다.
401000 주소로 이동하니 이전 RegisterMe.exe 파일과 같은 내용이 보인다.
이번에는 PE header를 수정하여 오류가 나지 않는 올바른 파일이 되도록 해보려고 한다.
아까 보았던 PE header의 Dump를 열어 내용을 확인해보자
비정상적인 값들이 눈에 보인다.
값이 올바른지 너무 큰지 확인은 PE 구조를 공부하면 더 잘 보일 것 같다.
올바른 값을 잘 모르겠다면 이전 RegisterMe.exe의 값과 비교해보자
우선 SizeOfCode의 값을 400으로, SizeOfInitializedData의 값을 A00으로,
BaseOfcode의 값을 1000으로, BaseOfData의 값을 2000으로 바꾸어준다.
내리다보면 다음 내용도 나온다.
다음과 같이 NumberOfRvaAndSizes를 10으로,
Export Table address를 0으로, Export Table size를 0으로 바꾸어준다.
다음은 변경했으므로 파일로 저장을 해준다 오른쪽 마우스를 눌러 Save file을 눌러 저장해준다.
그다음 저장한 파일을 다시 열어보면 이전 RegisterMe.exe 파일과 같이 변한 것을 볼 수 있다.
NAG 삭제는 이전 tutorial 03_1 을 참조하면 된다.
끝.
'Security&Hacking > 리버싱' 카테고리의 다른 글
Lena Reversing - tutorial 05 (0) | 2020.03.02 |
---|---|
Lena Reversing - tutorial 04 (0) | 2020.02.27 |
Lena Reversing - tutorial 03_1 (0) | 2020.02.24 |
Lena Reversing - tutorial02 (0) | 2020.02.23 |
Lena Reversing - tutorial01 (0) | 2020.02.23 |