리버싱 입문

[리버싱 입문](10)[abex crackme 7]

황올뱀 2025. 2. 20. 18:51

 

abex crackme 7

 

이번에는 name과 serial을 입력하고 맞으면 correct를 띄운다. 그러나 만약 틀리면 아무 메세지도 출력하지 않고 초기화만 시킨다.

 

일단 check할 때 아무것도 출력하지 않으므로 문자열로 check찾는 것은 단념하고 차근차근 따져보겠다.

시작 지점 근처 ThunRMain함수에서 실행이 멈춰버리니 이곳을 집중적으로 살펴보겠다.

함수 내부는 다음과 같다.

 

하나씩 실행해보니 MSVBVM60.7524AD4C에서 창을 띄우고 MSVBVM60.75287BE7에서 입력과 비교를 하는 것 같다.

 

MSVBVM60.75287BE7에서 점프해서 수상해보이는 vbaVarCmpEq, vbaVarCmpNe가 보인다.

이름으로 추측하길 vbaVarCmpEq는 두 변수의 값을 인자로 받아 같은지 판단하는 함수인 것 같고, vbaVarCmpNe 얘는 다른지 판단하는 함수인 것 같다.

하나씩 실행하면 먼저 같은지 판단 후, 다르다면 이후 vbaVarCmpNe를 지나 다시 창이 지워지는 것을 알 수 있다.

 

그럼 vbaVarCmpEq에 들어가는 인자만 파악하면 된다.

name을 abcd로 입력했을 때 스택에서 54575651을 발견할 수 있다.

 

이걸 입력하면 correct가 뜬다.

 

 

728x90
반응형