문제
Name이 CodeEngn일때 Serial을 구하시오

성공 구문을 찾아보자!

형광펜이 성공 구문으로 보인다.
해당 위치로 이동해보자.

CMP나 JMP가 GetStdHandle 함수를 호출하는 곳을 제외하고는 보이지 않아서
일단 바로 위에 있는 CALL에 BP를 걸어두고 실행해보았다.

웬열 . . 안 걸린다.
위의 GetStdHandle 어셈블리를 봤더니 004015A2 주소에 있는 분기문에서 ZF가 1이면 00401063C로 넘어가면서 Wrong password!가 출력되는 것 같다.
그럼 004015A2의 결과를 계산하는 CMP문인 0040159F에 BP를 걸어두고 실행해보자.

EAX에는 내가 입력한 11111의 hex값이 들어간다.
그리고 비교 대상의 값은 E4C60D97이다.
E4C60D97을 10진수로 나타내면

3838184855이 된다.
이 값을 Serial 입력값에 넣어보자.

Good Job!이 출력된다!
정답 : 3838184855

'Wargame > CodeEngn' 카테고리의 다른 글
CodeEngn Basic RCE L18 (0) | 2021.05.20 |
---|---|
CodeEngn Basic RCE L17 (0) | 2021.05.19 |
CodeEngn Basic RCE L15 (0) | 2021.05.17 |
CodeEngn Basic RCE L14 (0) | 2021.05.17 |
CodeEngn Basic RCE L13 (0) | 2021.05.17 |