Basic 12번 문제입니다.

파일을 열어보니 Key값을 입력하는 창이 하나 뜨는군요

디버거로 열어보겠습니다. 

텍스트를 살펴보면 Congratulation,으로 시작하는 문구가 하나 있습니다. 여기로 가보겠습니다.

그러면 성공했다는 코드 윗부분에 CMP(비교)하는 부분이 있습니다.


EBX값과 7A2896BF값을 비교하는 것입니다. 그렇다면 7A2896BF값은 16진수이니 10진수로 바꿔보겠습니다.

2049480383입니다.

헥스에디터로 열어서 Congratulation이 들어간 곳을 찾았습니다.

여기에 그대로 2049480383을 입력해보면 됩니다.

'Reversing > CodeEngn Basic' 카테고리의 다른 글

CodeEngn Basic 14  (0) 2015.07.27
CodeEngn Basic 13  (0) 2015.07.26
CodeEngn Basic 11  (0) 2015.07.20
CodeEngn Basic 10  (0) 2015.07.16
CodeEngn Basic 09  (1) 2015.07.16


Basic 11번 문제입니다 StolenByte를 찾고 OEP도 찾으라는 문제입니다.

디버거를 사용하여 열어보니 PUSHAD로 시작하는 코드가 나옵니다.

POPAD를 찾아가보면 JMP문이 보일것입니다. StolenByte는 바로 PUSH3개가 연달아 있는 부분이겠죠

JMP문에 BP를 걸고 F9해보면 옆에 글자가 달립니다. 위 3줄을 Ctrl+C하시고 넘어옵니다.

그럼 위에 NOP이라 써있는 부분이 나오게 됩니다. 여기에 Ctrl+E하시고 

위와 같이 적어두시면 됩니다.


'Reversing > CodeEngn Basic' 카테고리의 다른 글

CodeEngn Basic 13  (0) 2015.07.26
CodeEngn Basic 12  (0) 2015.07.26
CodeEngn Basic 10  (0) 2015.07.16
CodeEngn Basic 09  (1) 2015.07.16
CodeEngn Basic 08  (1) 2015.07.16


Basic 10번 문제입니다 

파일을 열었을때의 모습입니다.

파일 형식을보니 ASPack형식입니다. ASPack역시 잘 모르는 부분이라 구글링을 통해 알아보았습니다.


디버거로 파일을 열어보았습니다.

PUSHAD로 시작합니다.

POPAD를 찾아가보면 ASPack의 형식으로 RETN0C가 있고 PUSH0 후에 RETN이 있습니다.

우선 POPAD에 BP를 걸어놓고 F9를 합니다.

그다음 RETN에 BP를 걸고 F9를 합니다.

여기서 텍스트를 찾아 레지스터가 성공했다는 문자를 찾으면 됩니다.


찾았습니다. 답을 모두 찾은것같습니다.

'Reversing > CodeEngn Basic' 카테고리의 다른 글

CodeEngn Basic 12  (0) 2015.07.26
CodeEngn Basic 11  (0) 2015.07.20
CodeEngn Basic 09  (1) 2015.07.16
CodeEngn Basic 08  (1) 2015.07.16
CodeEngn Basic 07  (1) 2015.07.16


Stolen Byte를 구하는문제입니다 StolenByte에 대해 잘 모르는 터라 구글링을 통해 StolenByte에 대한 지식을 조금 쌓고 문제를 풀어보았습니다.

먼저 파일을 열었을때의 모습입니다. 

확인을 누르니 다음과같은 메세지가 뜹니다.

형식은 패킹이 되어있는 형식입니다.

먼저 언팩을 해보도록 하겠습니다 역시나 PUSHAD로 시작합니다.

POPAD를 찾아 내려가다보니 PUSH명령어로 시작하는 3줄이 눈에띕니다. 저부분이 바로 StolenByte가 되겠습니다. 3줄을 복사하고 점프문을 통해 넘어오면

위와같이 나오는데 위로 올려보면

NOP로 되어있는 부분이 나옵니다 여기에 아까 복사했었던 것을 입력해줍니다.

그러면 StolenByte를 찾게 되는것입니다.

'Reversing > CodeEngn Basic' 카테고리의 다른 글

CodeEngn Basic 11  (0) 2015.07.20
CodeEngn Basic 10  (0) 2015.07.16
CodeEngn Basic 08  (1) 2015.07.16
CodeEngn Basic 07  (1) 2015.07.16
CodeEngn Basic 06  (0) 2015.07.16


Basic 08번 문제 OEP를 구하는 문제이다.

패킹 되어있는 파일같습니다. 

디버거로 열어보니 역시 PUSHAD로 시작하는 파일이므로 POPAD를 찾아 점프문을 찾으면 되겠죠?

점프문 옆의 주소가 바로 OEP입니다.

'Reversing > CodeEngn Basic' 카테고리의 다른 글

CodeEngn Basic 10  (0) 2015.07.16
CodeEngn Basic 09  (1) 2015.07.16
CodeEngn Basic 07  (1) 2015.07.16
CodeEngn Basic 06  (0) 2015.07.16
CodeEngn Basic 05  (0) 2015.07.16


Basic 07번 문제입니다.

C드라이브의 이름을 일단 CodeEngn으로 바꿔보았습니다.

그리고 나서 디버거를 통해 들어가보았습니다.

아마도 이부분이 시리얼이 맞는지 안맞는지 판단하는 부분인것같습니다 바로위에 BP를 걸고 F9 해보겠습니다.

그랬더니 바로 시리얼 코드가 등장하였습니다.


'Reversing > CodeEngn Basic' 카테고리의 다른 글

CodeEngn Basic 09  (1) 2015.07.16
CodeEngn Basic 08  (1) 2015.07.16
CodeEngn Basic 06  (0) 2015.07.16
CodeEngn Basic 05  (0) 2015.07.16
CodeEngn Basic 04  (0) 2015.07.16


언팩 한 후 시리얼을 찾느 문제입니다.

열어보니 역시 PUSHAD로 시작합니다 언팩을 해보겠습니다

POPAD를 찾아 점프문을 실행시켜보면 위와 같이 나오게 됩니다. JMP 옆의 주소가 OEP가 됩니다.

여기서 텍스트를 찾아 보면 AD4----가 보입니다 이것이 아마도 시리얼이 될 것 같습니다.




'Reversing > CodeEngn Basic' 카테고리의 다른 글

CodeEngn Basic 08  (1) 2015.07.16
CodeEngn Basic 07  (1) 2015.07.16
CodeEngn Basic 05  (0) 2015.07.16
CodeEngn Basic 04  (0) 2015.07.16
CodeEngn Basic 03  (0) 2015.07.16


Basic 05번 문제입니다

exe파일을 실행시켜 Register now 를 누르면 오른쪽과 같은 창이 나옵니다.

디버거를 통해 들어가보면 패킹이 되어있다는 사실을 알 수 있습니다.

POPAD를 찾아 점프문을 실행시키면 

위와같은 작업을 하고자하는 공간이 나오게됩니다.

여기서 텍스트를 찾아보면 

위와같이 시리얼 넘버를 찾을 수 있습니다. 주의할 점은 위에 Registered User가 위에 아이디로 들어가야한다는 사실입니다.


'Reversing > CodeEngn Basic' 카테고리의 다른 글

CodeEngn Basic 07  (1) 2015.07.16
CodeEngn Basic 06  (0) 2015.07.16
CodeEngn Basic 04  (0) 2015.07.16
CodeEngn Basic 03  (0) 2015.07.16
CodeEngn Basic 02  (1) 2015.07.16

+ Recent posts