파일 실행 후 아무값이나 넣어보면 Wrong이라는 문자열과 함께 작동이 중지됬다고 나온다.

Ollydbg로 실행해보니 다음 MOV BYTE PTR DS:[EAX],90 이 부분에서 violation이 발생해 더이상 진행이 안되고 있었다. 90(NOP) 값을 넣는 EAX부분이 60160646 이라는 값인걸 보니 존재하지 않는 주소에다 NOP를 박으려고 에러가 났다.
임의의 주소값 아무거나 넣고 트레이싱해보니 요런 루틴으로 넘어왔다.

SetDIgItemTexTA 함수를 통해 어떤 문자열을 세팅하는데 그 위의 JMP구문이 있어서 무조건 이 부분을 지나치게 된다. 요상한 ascii 문자열 값이 담기는데 뭔지 궁금해서 jmp구문 수정해서 일단 해당 부분으로 넘어가게 해봤더니 Correct!란 값이 떳다. 이루틴으로 들어갈 수 있게 해야 될 것 같다.

그렇다면 JMP 구문을 어떻게든 패치를 해야되는데 이전에 에러 발생을 시켰던 특정 주소값에 NOP 코드를 박는 부분을 활용하면 될 것 같다. 일단 테스트 해보자.

 

EAX값에 JMP 코드가 있던 주소값을 박아서 넘기니 실제로 NOP처리가 되서 성공루틴으로 가는걸 볼 수 있었다. 그럼 내가 입력한 값을 통해 이를 가능하게 해야되는데 내가 입력한 값이 EAX값에 어떠한 영향을 주고있는지 테스트해봤다.

 

1넣었을때 601605CC , 2넣었을떄 601605CD가 나온걸로봐선 601605CB라는 base값에 내가 입력한 값을 16진수로 변환해서 더하고있는걸 알 수 있었다.
그렇다면 601605CB + 입력값 = 00401071 요렇게 나와야하기 때문에
100401071 - 601605CB 한 16진수값을 10진수로 바꿔 넘기면 끝이당.


'Wargame > reversing.kr' 카테고리의 다른 글

Reversing.kr Direct3D FPS  (0) 2018.01.21
Reversing.kr ImagePrc  (0) 2018.01.21
Reversing.kr Easy Crack me  (0) 2018.01.21
Reversing.kr Easy Unpack  (0) 2018.01.21
Revering.kr Easy_keygen  (0) 2018.01.21
블로그 이미지

JeonYoungSin

메모 기록용 공간

,

파일을 실행해보면 다음과 같이 뜬다.

ollyDbg로 까서 보면 첫번째 비교 루틴을 통해 두번째 값 a(61)인 것을 확인.

두 번째 비교 루틴에서 00401150 함수를 콜해 5y와 입력한 값의 3,4번째 값을 비교한다. 이를 통해 3,4번째 값 5y확인.

세 번째 비교 루틴에서 R3versing과 5번째부터 마지막글자까지 비교한다.

마지막으로 첫 번째 글자가 E(45)인지 비교한 후 성공 문자열 띄운다.

 


'Wargame > reversing.kr' 카테고리의 다른 글

Reversing.kr Direct3D FPS  (0) 2018.01.21
Reversing.kr ImagePrc  (0) 2018.01.21
Revering.kr Replace  (0) 2018.01.21
Reversing.kr Easy Unpack  (0) 2018.01.21
Revering.kr Easy_keygen  (0) 2018.01.21
블로그 이미지

JeonYoungSin

메모 기록용 공간

,

해당 문제의 exe파일 다운로드 후 실행하면 다음과 같이 빈화면이 하나 뜨고 아무런 반응이 없다.

peid 열어보니 뭘로 패킹이 되어있는지 알 수가 없다.

Ollydbg로 연 다음 쭉 트레이싱 하다보면 packing 된 프로그램 특성상 unpacking 과정을 거치기 위해 암호화 된 코드들을 풀어주는 복호화 루틴을 거치게 되고 실제로 여러 구간에서 이러한 복호화 작업들이 이루어지고 있다. 최종적으로 복호화가 모두 끝나면 언패킹 된 코드의 OEP로 점프한당.

실제로 가보면 OEP가 나온당.

 

 


'Wargame > reversing.kr' 카테고리의 다른 글

Reversing.kr Direct3D FPS  (0) 2018.01.21
Reversing.kr ImagePrc  (0) 2018.01.21
Revering.kr Replace  (0) 2018.01.21
Reversing.kr Easy Crack me  (0) 2018.01.21
Revering.kr Easy_keygen  (0) 2018.01.21
블로그 이미지

JeonYoungSin

메모 기록용 공간

,

 


'Wargame > reversing.kr' 카테고리의 다른 글

Reversing.kr Direct3D FPS  (0) 2018.01.21
Reversing.kr ImagePrc  (0) 2018.01.21
Revering.kr Replace  (0) 2018.01.21
Reversing.kr Easy Crack me  (0) 2018.01.21
Reversing.kr Easy Unpack  (0) 2018.01.21
블로그 이미지

JeonYoungSin

메모 기록용 공간

,

All Clear

Wargame/Simples.kr 2018. 1. 21. 22:07

 

키 인증하는 사이트가 없어진것 같다.

'Wargame > Simples.kr' 카테고리의 다른 글

Simples.kr 14번  (0) 2018.01.21
Simples.kr 10번  (0) 2018.01.21
블로그 이미지

JeonYoungSin

메모 기록용 공간

,

 

'Wargame > Simples.kr' 카테고리의 다른 글

All Clear  (0) 2018.01.21
Simples.kr 10번  (0) 2018.01.21
블로그 이미지

JeonYoungSin

메모 기록용 공간

,

 

'Wargame > Simples.kr' 카테고리의 다른 글

All Clear  (0) 2018.01.21
Simples.kr 14번  (0) 2018.01.21
블로그 이미지

JeonYoungSin

메모 기록용 공간

,

보호되어 있는 글입니다.
내용을 보시려면 비밀번호를 입력하세요.

보호되어 있는 글입니다.
내용을 보시려면 비밀번호를 입력하세요.

Windows Exploit 같은 경우 리눅스에 비해 공부한 개념들을 실습할 Wargame이라든가 예제들이 많이 없는 것 같아서 윈도우 시스템 해킹 가이드 버그헌팅과 익스플로잇이라는 책에 있는 예제들로 정리를 해봐야겠당.

블로그 이미지

JeonYoungSin

메모 기록용 공간

,