#7.Position 풀이.
일단 파일을 다운로드 받아서 exe를 실행해본다.
그러기전에 ReadMe.txt도 있으니 읽어본다.
간단히 보면 Serial이 76876 - 77776일 때 PW를 찾고,
PW는 4글자이고, P로 끝난다고 한다.
Position.exe 파일을 실행해본다.
임의로 입력을 했지만, 애초에 클릭을 할 수 있는 것도 없고, 단지 틀리고 맞고를 알려주는 문구만 존재.
일단 ExeinfoPE을 실행.
C++로 되어 있고, 패킹은 따로 되어있지 않다.
Ollydbg를 실행.
오른쪽 마우스 클릭 => Search for => All referenced text strings 실행.
문자열을 보면 Correct!가 보인다.
00181740을 CALL 해서 리턴 값이 참이면, Correct 출력.
ECX에 첫 번째 필드 값이 들어가고, ECX-18의 값을 4와 비교하는데, ECX-18에 있는 값이
문자열의 길이를 가지고 있는 거 같다. 일단 그 부분을 4로 바꾼 후 넘어가 보고 확인해보니
문자열의 각자리가 0x61에서 0x7A인지 각 자리가 모두 다른 문자인지 확인해본다.
2번째 값의 길이가 11 , 6번째 문자가 '-'인지 비교.
아래로 살펴보니까 계속 반복되는 것이 있는데 잘 모르겠고.........IDA로 살펴보겠다.
IDA로 같은 부분을 HEX-RAY로 디컴파일해본다.
일단 디컴파일된 내용과 같은 방식으로 Brute Force을 아래의 소스를 적음.
일단 맨 처음 ReadMe.txt에서 나왔듯이 key는 p로 끝나고, 한 가지라고 한 적은 없으니 여러 개를 몇 번 시도해보면
답이 나올 거 같다.
bump, cqmp, ftmp, gpmp 4개가 나온다.......
하나씩 해본다.
cqmp,ftmp,gpmp..............안 되고..드디어..
Cf)............rerversing.kr 문제의 난이도가 확 올라가는 거 같다.
다시 내용을 차후에 추가할 예정...
'# Related site issues > Reversing.kr' 카테고리의 다른 글
#9.CSHOP. (0) | 2018.05.21 |
---|---|
#8.RamsomWare. (0) | 2018.05.21 |
#6.ImagePrc. (0) | 2018.05.20 |
#5.Replace. (0) | 2018.05.20 |
#4.Music Player. (0) | 2018.05.19 |