wargame.kr 의 keypad Crackme 문제다.
start를 눌러 들어가보면 저번 easy_crack 처럼 패스워드를 찾아보라고한다.
다운로드 받아서 실행시키면 이런 네모박스에
키패드, AUTH, BYE를 누를 수 있게 되어있다.
이런식으로 숫자를 누르고 AUTH로 인증하는 식이다.
당연히 111을 넣었을 땐 틀리다고 한다.
그래서 올리디에 던져서 조금의 분석을 진행해보았다.
여기가 핵심 부분인데, 입력하는 값을 구할 수 있다.
이 부분에서 eax는 무조건 7로 세팅되고, 1이 더해서 8이 된다.
그리고 그 eax에 FFFCECC9라는 값을 곱한 뒤에
그 값을 입력한 값이 저장되어있던 edi에 더해주고
edi와 0BADBABE를 비교해서 맞으면 성공문 틀리면 실패문을 출력한다.
대략적인 분석과 조금의 계산을 통하면 답을 쉽게 구할 수 있다.
edi = 8 * FFFCECC9 + '입력한 값' == 0BADBABE
이런식으로 인증이 진행되는 건데, 하나 팁이라면
8 * FFFCECC9 의 값은 8비트를 넘어가버린다.
그래서 그냥 8비트 수준에서 잘라버리고 계산하면 된다.
그래서 나온 값을 입력하고 AUTH를 눌러준다.
맞았다. 키 값은..
끝.
반응형
'Wargame > Reversing-W' 카테고리의 다른 글
wargame.kr DLL_with_notepad (0) | 2017.08.04 |
---|---|
xcz.kr PROB30 (0) | 2017.08.04 |
wargame.kr easy_crackme (0) | 2017.08.01 |
CodeEngn advance 9 (0) | 2017.07.20 |
CodeEngn advance 8 (0) | 2017.07.20 |