정보보안/Lena's Reversing Tutorial

Lena's Reversing Tutorial 3

b1ackhand 2019. 1. 7. 16:13

2019.01.07.


먼저 실행파일에 대해 알아 보았다.




여기서 nag란 현재 띄워져 있는 확인을 누르는 창을 나오지 않게 하는것이다.



올리디버거로 프로그램을 열어보니 GetModuleHandleA를 실행한다.

이를 구글에 검색해보니 이 프로그램의 현재 주소를 가져온다고한다.

그래서 사진을 보면 EAX에 0040000이 저장되어있고

이후에 CMP EAX, 0 0과 비교해서 nag창이 나오게 하는것이다.


nag창이 안나오게 하는 방법은 Nope처리하거나 그 부분을 건너뛰거나

하는 등의 여러가지 방법이 있을 수 있지만

이번에는 PE구조에 대해서 공부하고 이를 활용해 보았다.


PE구조에 관한 내용은 복잡하고 많아 기록할수 없었고 따로 기록해야겠다.



다음을 보면 시작하는 부분이 401000부터라는 것을 알 수 있다.



그래서 주소 4000C8에서 시작하는 부분이 401000인 것을 401024로 바꿔 주었다.

여기서 빅엔디안과 리틀엔디안을 배웠다.


간단히 말하자만 0x12345678을

빅엔디안은 0x12 0x34 0x 56 0x78 높은주소에서 낮은주소로

리틀엔디안은 0x78 0x56 0x34 0x12 낮은주소에서 높은주소로

저장하는것이다.

리틀엔디안이 주로 인텔프로세스 계열에서 사용하는 방식 메모리 저장 방식이다.



위와같이 수정하고나니 시작부분이 401024부터 시작한다.



그리고 다음에 실행될 messagebox 부분은 위의 방법으로 NOP으로 채울 수 있다.


고찰: PE구조에 관한 이해필요

'정보보안 > Lena's Reversing Tutorial' 카테고리의 다른 글

Lena's Reversing Tutorial 6  (0) 2022.09.12
Lena's Reversing Tutorial 5  (0) 2022.08.16
Lena's Reversing Tutorial 4  (0) 2022.08.15
Lena's Reversing Tutorial 2  (0) 2019.01.04
Lena's Reversing Tutorial 1  (0) 2019.01.03