본문 바로가기

리버싱

[CodeEngn]코드엔진 basic RCE L16

반응형

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

 

ollydbg로 16번을 열어보니 잘 열린다.

패킹은 안 되어있는 듯 하다.

일단 문자열을 확인해본다.

'Good Job!'이 있는 곳으로 간다.

Good Job이 있는 부분 위를 보니, CMP가 있는 곳이 딱 하나가 있다.

이 부분을 breakpoint건다.

 

EAX와 PTR SS:[EBP-0x3C]를 비교해야 하기 때문에,

이 부분까지 다시 실행해, EAX와 EBP를 알아내도록 한다.

확인해보니 EAX는 내가 입력한 PW의 16진수,

EBP는 0070FF28임을 확인했다.

PTR SS:[EBP-0x3C] 값을 알아내야 하기 때문에 위에서 -3C를 해줘야 한다.

나는 그냥 계산기로 연산을 해주었다.

그럼 70FEEC가 나온다.

이제 이 주소의 메모리를 확인해보도록 한다.

메모리를 확인할 땐 그냥 밑에를 클릭하고 Ctrl+G를 눌러

가고 싶은 곳을 눌러 OK해주면 된다.

밑은 리틀엔디안 표기법으로 되어있기 때문에

E4 C6 0D 97 이다.

10진수로 변환하면 3838184855 이라고 한다.

알아낸 값을 넣어 계속 진행하면 Good Job이 나온다.

반응형

'리버싱' 카테고리의 다른 글