![]()
#Advance RCE L09
Advance RCE L09
Password는 무엇인가
Password를 찾는 문제이다.
PEID부터 올려보도록 하겠다
![]()
아직 잘 모르겠어서 올리디버거에 올려봤다.
![]()
F8을 눌러 한줄씩 실행하면서 찾아보도록 하겠다.
![]()
프로그램에 name과 password는 1234도 통일하고 진행했다.
![]()
CALL되는 부분을 F7로 들어가서 확인 결과 Username이 DonaldDuck이라는 것을 알게되었다.
![]()
다시 name을 DonaldDuck으로 바꾸고 Password에 1234를 넣고 진행해봤다.
![]()
해당 CALL문에서 걸리기때문에 F7로 들어가보도록 하겠다.
![]()
뭔가 입력값을 비교하는 부분이라고 생각되어 한줄씩 진행해봤다.
![]()
EAX에 값을 넣는것을 볼 수 있었고, 아래 EAX와 ECX를 비교하는 것을 볼 수 있었다.
![]()
4D2는 10진수로 Password에 입력한 1234라는 것을 알 수 있었고, ECX의 데이터값이 Password일 것이라고 생각되어 들어가봤다.
![]()
CMP EAX, DWORD PTR DS:[ECX}는 ECX의 데이터값과 비교를 한다. 데이터 값은 리틀엔디언 방식으로 뒤집어서
0088228F가 나오므로, 이를 10진수로 바꿔 인증해봤다.
![]()
하지만 원하는 결과를 출력할 수 없었고, 코드를 수정하는 문제라고 생각되어
코드를 아래와 같이 수정했다.
![]()
![]()
클리어가 된 것을 볼 수 있었고, 사이트에 인증을 했다.
![]()