제공된 프로그램 리버싱 후 프로그램의 의도 파악


Untitled

패킹이 되지 않음을 확인하였다.

Untitled

프로그램을 리버싱 하다보면 401024 부분에 CMP EAX, ESI를 한 뒤 TRUE면 40103D로 점프하는것을 볼 수 있다. JE를 JNE로 바꿔주면 CMP가 FALSE여도 점프하게 만들 수 있을 것 같다.

디버거를 이용해 분기문을 어셈블하는 방법으로 프로그램 공략


Untitled

JE를 JNE로 바꿔주고 어셈블 한 뒤 실행 시켜보니 분기문을 우회할 수 있었다.

EXE 프로그램을 직접 수정(패치)하고, 디버거 없이 프로그램 공략


Untitled

Untitled

RAW = 1026 - 1000 + 600 = 626 이다. HxD로 확인 해 보니 626 주소에 데이터가 있는것을 확인 할 수있다. JE(74 15)를 JNE(75 15)로 바꾸게 되면 문제의 조건을 우회하게 되어 풀리게 될 것 이다.

Untitled