# 문제링크 : https://dreamhack.io/wargame/challenges/16
rev-basic-2
Reversing Basic Challenge #2 이 문제는 사용자에게 문자열 입력을 받아 정해진 방법으로 입력값을 검증하여 correct 또는 wrong을 출력하는 프로그램이 주어집니다. 해당 바이너리를 분석하여 correct를 출
dreamhack.io
문제의 압축 파일을 다운받고 압축을 풀어보자.
correct을 출력할 키를 찾아야한다.
x64dbg로 열어보자.
문자열만 뽑아오기. correct라는 문자열이 보인다.
call을 통해 함수를 불러서 correct를 출력하는 듯 하다.
'cmp dword ptr ds:[rcx+rax*4], edx'를 통해 문자열을 비교한다는 걸 알 수 있다. 사용자가 입력한 값과 rcx+rax*4 값을 비교한다.
rcx 값을 확인해주어야 하는데 해당 부분을 통해 rcx 값이 들어있는 주소를 확인할 수 있다. 따라가 보자.
해당 위치에 Comp4re_the_arr4y 문자열이 확인된다.
문제 해결!
'문제풀이' 카테고리의 다른 글
[Dreamhack] file-download-1 문제풀이 (0) | 2023.10.09 |
---|---|
[Dreamhack] devtools-sources 문제풀이 (0) | 2023.10.02 |
[Dreamhack] rev-basic-1 문제풀이 (0) | 2023.07.25 |
[SuNiNaTaS] 11번 문제풀이 (0) | 2023.07.11 |
[SuNiNaTaS] 9번 문제풀이 (0) | 2023.05.30 |