ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • lena's reversing for newbies 03
    리버싱 엔지니어링/lena's reversing 2022. 3. 17. 00:20

    1. 프로그램 실행(RegisterMe.exe)

    RegisterMe.exe 프로그램을 실행해보면,

     

    1
    2
    3

    3가지 창이 뜬다. 여기서 2번째 창을 제외한 메시지박스를 없애야한다.

     

    2. 코드 살펴보기

    올리디버거를 통해 실행해보니 처음부터 실행메시지박스를 확인할 수 있었음 

    JMP를 통해 메시지박스를 넘어가는 방법도 있지만, Entry pointer 변경을 통해 시작을 메시지박스 호출 이후부터 하는 방법도 존재함

     

    3. PE 헤더를 이용한 시작 주소 바꾸기

    3.1 현재 시작 주소 찾기

    ① 상단의 M을 눌러 메모리맵으로 들어간다

    ② PE 헤더를 찾아 클릭하여 들어간다

    ③ AddressofEntryPoint를 찾는다. 

    처음 메시지박스 이후 주소를 시작주소로 변경해야하기 때문에  AddressofEntryPoint를 1024로 변경해준다.

    Imagebase 값 고려하기 때문에 401024가 아닌 1024로 변경

     

    3.2 시작 주소 변경

     

    • follow in Dump(Ctrl+G)를 통해 4000E8로 이동

    • 1024로 값 변경[Ctrl+E]

    : 순서가 반대인 이유는 리틀 엔디언 표기법을 사용하기 때문

     

    저장 후 실행 시,

    다음과 같이 시작주소가 변경됨.

     

    4. 두번째 메시지박스 삭제 

    두번째 박스는 특별한 조건문이 없기 때문에, NOP로 변경하여 메시지박스 출력을 막음

     

    5. 최종 실행

    위와 같이 수정 후 실행하면, 아래의 화면만 실행됨을 확인할 수 있음

     

    '리버싱 엔지니어링 > lena's reversing' 카테고리의 다른 글

    lena’s reversing for newbies 02  (0) 2022.03.13
    lena's reversing for newbies 01  (0) 2022.02.05

    댓글

Designed by Tistory.