Easy_CrackMe
파일의 password를 찾아야한다.
GetDlgItemTextA라는 입력 받는 API가 존재한다.
그 부분에 BP를 걸고 실행하여 password를 입력한다.
첫번째 CMP이다. [ESP+5]이 61인지 확인한다. 61은 ASCII 코드로 a를 의미한다. Little Endian으로 저장되므로 [ESP+5]는 password의 두번째 글자를 의미한다. 따라서 비밀번호의 두번째 자리는 a가 된다.
비밀번호 두번째 자리에 a를 넣어 다시 진행한다.
그 다음 분기문이다. [ESP+A]와 5y를 비교한다. [ESP+A]는 cd 부분에 해당되며, 비밀번호의 세번째, 네번째 자리를 의미한다.
비밀번호에 a5y를 넣어서 다시 진행한다.
그 다음은 [ESP+10]과 R3versing을 비교한다. 따라서 비밀번호는 _a5yR3versing이 된다.
비밀번호에 1a5yR3versing을 넣어서 다시 진행한다.
마지막 분기이다. [ESP+4]와 45를 비교한다. [ESP+4]는 비밀번호 첫번째 자리를 의미하고 45는 E를 의미한다. 따라서 최종적으로 password는 Ea5yR3versing이 된다.
728x90
'CTF > 리버싱' 카테고리의 다른 글
CTFLearn PIN (0) | 2020.06.25 |
---|---|
reversing.kr Easy_Keygen (0) | 2020.06.25 |
CodeEngn(코드엔진) advance 04 (0) | 2020.06.25 |
CodeEngn(코드엔진) advance 03 (0) | 2020.06.25 |
CodeEngn(코드엔진) advance 01 (0) | 2020.06.25 |