반응형

문제는 정답이 무엇인지를 물어보고 있다.

 

일단 Die로 열어본다.

특이사항은 보이지 않는다. 

 

프로그램을 실행시켜본다.

윈도우 10에서는 작동하지 않는다. 

 

윈도우 7가상머신을 구축해서 실행시켜본다.

이제야 잘 실행 된다.

 

문제가 원하는 정답은 이 비밀번호를 원하는 것 같다. 

비밀번호를 입력하고 엔터를 누르면 프로그램이 종료 된다.

 

디버거로 열어보자.

문자열 찾기를 통해, 입력하는 부분을 찾았고 여기부터 실행시켜 보았다.

password를 입력 했을 때 프로그램이 종료되거나 성공하거나 둘 중 하나의 이벤트를 가지니,

종료되는 이벤트를 실행시키는 구문을 포커스해서 찾아보도록 하자.

402010 함수가 실행되게 되면, 입력받는구문이 실행되게 된다.

 

함수 아래 구문에 브레이크포인트를 걸어주고,

password를 입력한 뒤 한줄씩 실행시켜본다.

 

 아래로 내려가다보면 for문이 있는데 특별한 구문은 아닌 듯 해 무시하고 더 내려가보면, 

 

edx안에 있는 주소의 함수를 실행시키고 종료된다. 이 함수 안을 보면

이미지가 커서 잘 안보이지만, 입력한 값의 한자리씩 특정 값과 비교하여 맞다면 다음 인자로 틀리다면 다른 분기로 가게 된다.

특정 문자를 조합해주면 "CRAAACKED!" 라는 문자열이 나오고 이것을 입력해주면 통과 된다.

성공!

반응형

'Reversing 문제 풀이 > CodeEngn.com_Advance' 카테고리의 다른 글

codeengn-advance-L06 풀이  (2) 2022.05.09
codeengn-advance-L05 풀이  (0) 2022.05.06
codeengn-advance-L04 풀이  (0) 2022.05.04
codeengn-advance-L03 풀이  (0) 2022.05.04
codeengn-advance-L01 풀이  (0) 2022.05.02