HackChang

[CodeEngn] Basic RCE L17 문제 풀이 본문

W4RG4M3/R3V3RS1NG

[CodeEngn] Basic RCE L17 문제 풀이

HackChang 2019. 11. 28. 10:50

L17 문제

Basic RCE L17

Key 값이 BEDA-2F56-BC4F4368-8A71-870B 일때 Name은 무엇인가
힌트 : Name은 한자리인데.. 알파벳일수도 있고 숫자일수도 있고..
정답인증은 Name의 MD5 해쉬값(대문자)

 

실행을 하면 키젠프로그램이 나온다.

1을 입력하고 check it!을 누르면 위와같은 메세지가 키에 들어간다.

올리디버거를 통해 열어봤다.

 

스트링 검색을 통해 에러메세지와 성공메세지를 찾을 수 있었다.

위의 에러메세지로 들어가봤다.

 

글자수가 3글자미만일때 에러메세지가 출력되는 것을 볼 수 있다.

문제는 Name이 한글자라고 했으니 비교하는 부분을 한 글자로 바꿔준다.

 

1로 바꿔주고, 실패 문자열 아래에 BP를 걸고 실행시킨다.

 

1을 입력하고 Checkit!을 했을 때의 시리얼을 만들어 내는 것을 알 수 있었다.

 

CALL 0045b850이 시리얼을 만들어 내는 것을 알 수 있었고, f7을 눌러 들어가보았다.

 

이 부분을 통해 시리얼을 만들어 내는 것을 알 수 있었고, 간단하게 파이썬으로 짜서 코드를 돌려봤다.

 

돌려보면 아래와 같은 결과를 볼 수 있고,

 

70이 name인 것을 알았고, 이를 아스키코드로 바꾸면 F가 나온다.

F를 MD5해시로 바꾸면

인증하면 클리어가 된다.

 

Comments