Phantom

Easy KeygenMe 본문

Pwnable/Reversing.kr

Easy KeygenMe

Ph4nt0m_ 2016. 3. 1. 20:59
반응형

하…..이걸 이상하게 하는 바람에 2일을 삽질 했다.

이젠 아예 힌트 같은걸 보지 않고 해야겠다 그거를 잘못 봐서 2일을 버렸…다.

 

우선 프로그램을 실행하기 전에 ReadMe.txt를 읽어보자

시리얼이 저것일 때 이름을 찾아라. 이다.

 

프로그램을 열어보자.

이름을 입력 하고.

시리얼을 입력한다.

 

디버거를 열어서 aaaaaa가 어떤 시리얼로 바뀌는지 봐야겠다.

입력하고,

비교 루프에 들어온 것 같다 ESI와 3을 비교하는 것을 보니 3번에 걸쳐 어떤 것이 루프를 도는 것 같다.

이것을 보니 부호 확장 MOV라는데 잘은 모르겠다 ECX는 10, 20, 30이렇게 루프를 돌면서 바뀌고 EDX는 아까 내 문자열이 하나씩 비교가 된다.

그리고 이곳에서 복호화가 일어난다. 61과 10을 XOR연산하여 ECX에 저장하는 방식이다.

이 루프를 다 돌고 나면

시리얼 입력을 받는다. 여기서 REP STOS부분에서 EDI를 읽어오는데 다음과 같다.

이것인데 잘 보면 61(a)를 10, 20, 30으로 xor연산한 결과 이다.

그리고 저것을 읽을 때 71, 41, 51이렇게 2개이고 다 합하면 6개인데 아까 a를 6개 입력해서 그렇다.

그럼 이것을 맞춰 시리얼을 이용해서 name을 얻으면 될 것 같다.

5B134977135E7D13이니까

5B 13 49 77 13 5E 7D 13이다.

이것을 복호화하면 다음과 같다.

Clear!!!

반응형

'Pwnable > Reversing.kr' 카테고리의 다른 글

Music Player  (1) 2017.11.20
Easy_UnpackMe  (0) 2017.11.17
Easy Keygen  (0) 2017.11.17
Easy_CrackMe  (0) 2017.11.17
[Reversing.kr] – Easy CrackMe  (0) 2016.02.28
Comments