Reversing

[코드엔진] basic 16

BIGFROG 2020. 2. 19. 17:25

Name이 CodeEngn일 때 Serial값을 구하시오.

 

프로그램을 실행시키는 부분.

내부 분석을 위해서는 일단 이쪽에 BP를 걸고 시작해야 한다.

 

문제 난이도가 낮은 편임.

string 검색으로 Good Job 문자열을 찾았고 그 위쪽에 있는 분기점을 찾음.

 

EAX레지스터에는 내가 넣어준 22222의 hex값이 들어가 있었고, (name = CodeEngn, passwd = 22222)
이를 스택세그먼트의 특정 값과 비교를 하는데, 이게 패스워드일 것임
그 값은 EBP-3C의 포인터값 = E4C60D97

 

이를 DEC값으로 바꿔주면 패스워드가 된다.