ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • lena's reversing for newbies 01
    리버싱 엔지니어링/lena's reversing 2022. 2. 5. 01:06

    1. 실행 

    reverseMe.exe 파일을 실행해보면 아래와 같은 메시지 박스 등장.

    2. 디버깅

    Ollydbg를 통해 reverseMe.exe를 디버깅

     

     - 문자열 찾아보기 (Search for -> All referenced text strings)

    실행했을 때의 메시지박스 문자열 확인할 수 있었고

    "You really did it! Congratz !!!!" 문자열을 발견하여 클릭해서 가보니

    메시지 박스로 출력됨.

    따라서, 해당 메시지 박스를 출력하도록 수정해야함을 알 수 있음.   

     

    3. 코드 살펴보기

     

    2번에서 처음 확인했던 메시지박스에서 확인한 문자열을 클릭하여 해당 코드 살펴봄.

    JNZ(=JNE) : 값이 같지 않으면 점프 

    메시지박스 출력 전 조건 분기문, 따라서 조건에 상관없이 점프하도록 수정

    JNZ -> JMP

     

    코드 수정 후 다시 실행하면 아래와 같은 메시지박스가 출력됨 

     

    4. 코드 살펴보기(2)

     

    새로운 메시지 박스 코드 확인 

     

    새로운 메시지박스는(주소 : 4010F7) 어떤 방식으로 호출된 것인지 확인

    다양한 조건분기문이 존재 

    중간에 4010F7로 넘어가지 않고 마지막 JMP 00401205로 가기 위해서 조건 분기문을 모두 무시하도록 수정.

    -> JNZ, JMP,JL,JE 명령어들을 NOP으로 수정

    NOP : 아무것도 처리하지 않고 쉬어가도록 하는 명령어 

    위와 같이 수정 후 재실행하면 아래와 같은 목표 메시지박스 출력 성공. 

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

    lena's reversing for newbies 03  (0) 2022.03.17
    lena’s reversing for newbies 02  (0) 2022.03.13

    댓글

Designed by Tistory.