압축파일을 풀면 exe실행파일과 텍스트파일이 존재한다
Serial이 5B134977135E7D13일때 이름을 찾으라는 문제인데, 일단 실행해보자
Name을 입력받고, 다음으로 Serial을 입력받는다
아까의 텍스트 파일을 토대로 입력한 Name에 따라 Serial이 달라지는 것으로 생각된다
이전 문제와 마찬가지로 올리를 켜고 문자열을 탐색
아까의 도스창에서 보았던 문자열과 성공과 실패, 두 문자열을 볼 수 있다
Name을 입력받는 부분이다.
ESP의 어떤 부분에 10,20,30을 넣는 특이점이 있다
바로 밑에 큰 루프가 있는데, 여기가 바로 Name에 대해 Key를 만들어주는 부분이다
이해하기 쉽게 1234를 넣고 Key가 만들어지는 과정을 살펴보자
XOR ECX,EDX 해주는 부분에서 확인한 결과인데, EDX에는 입력한 문자열의 문자가 하나씩 들어가고, ECX에는 10, 20, 30이 순차적으로 돌면서 들어가는 것으로 확인 됐다
입력해준 1234에 대한 Serial값은 21120324가 된다
따라서, 문제에서 요구하는 5B134977135E7D13가 Serial이 되기 위해서는 거꾸로 XOR연산을 해주면 본래의 Name을 알 수 있다
끝