문제 : 이 프로그램의 등록키는 무엇인가
답 : GFX-754-IER-964
일단은 늘 해왔듯이 그냥 프로그램을 실행시켜본다.
그랬더니 이런 인증창이 뜨고 아이디와 일련번호를 입력하고 등록하는 기능이 있다.
아무 값이나 위 칸에 넣고 버튼을 눌렀다.
이렇게 일련번호가 틀렸다는 메시지 박스가 뜨며 별다른 건 없다.
또한 패킹 여부를 알기 위해 Detect It Easy로 열어보았더니 역시 패킹되어있었다.
익숙한 UPX로 언패킹되어있는데 운이 좋게도 OllyDbg는 UPX로 패킹된 파일을 자동으로 언팩해준다.
나 스스로 언패킹해도 좋지만 이번 문제는 언패킹이 중점이 아니니 일단 넘어간다.
자 이제 확인했으니 OllyDbg로 열어보자.
늘 보던 익숙한 창이 보인다. 그런데 현재 구하려고 하는 목표는 일련번호이다.
그런데 일련번호는 직접 입력값에 따라 유동적으로 변하거나 아니면 그냥 문자열 형태로 저장해두고
비교하는 경우가 있는데 일단은 후자인 경우를 고려하여 한번 "All referenced strings"로 찾아보았다.
문제는 문자열이 어마무시하게 많다는 것이였다. 계속 내리던 중 무언가 의심스러워 보이는 문자열이 또 보인다.
아까 프로그램을 그냥 실행만 해서 볼때와 비슷한 형태의 일련번호가 있다.
그리하여 코드엔진 Auth에서 정답이라는걸 확인할 수 있었다.
이로써 코드엔진 문제 자체는 풀었지만 추가적으로 성공했다는 메시지 박스를 띄워보려 한다.
우연히 얻어 걸렸는데 자세히 보면 일련번호 위에 "Registered User"라는 무언가 이질적인게 보인다
그래서 위에 "Registered User"를 일련번호를 입력하고 등록 버튼을 눌러봤다.
내가 구한 유저명이 맞았다! 아무튼 실행화면을 띄우는 것도 끝내보았다.
'리버싱 > 리버싱 문제 코드엔진' 카테고리의 다른 글
코드엔진 Basic RCE L07 (0) | 2021.07.21 |
---|---|
코드엔진 Basic RCE L06 (0) | 2021.07.13 |
코드엔진 Basic RCE L03 (0) | 2021.05.18 |
코드엔진 Basic RCE L02 (0) | 2021.05.18 |
코드엔진 Basic RCE L01 (0) | 2021.05.13 |