본문 바로가기
리버싱

리버싱 14

by 윤라경 2024. 8. 29.

[2024.08.28]

 

 

 

오늘도 지난 시간에 이어 crackme9부터 실습을 진행한다

먼저 실행을 했을 때는 해당 화면과 같은 name과 key를 입력하는 창이 나타난다

 

 

같은 강의 수강생분들께서 성공하신 답안을 공유해 주셔서

그 답안으로 입력 후에 성공 메시지가 나타나는 것을 확인해 봤다

 

 

먼저 찾을 수 없다면 Strings이나 함수를 통해 알아낼 수도 있기 때문에 반드시 확인해야 된다

현재 crackme9에서 함수나 Strings에서 공통적으로 Cmp 명령어가 있는 곳이 한 군데이기 때문에

해당 Cmp 명령어로 이동한다 

 

 

이동 후에 브레이크 포인트를 걸고 실행 후

 

 

임의로 korea와 1234를 넣고 실행한다

 

 

1234를 입력하고 실행했을 때 바로 스택 값에 1234에 대한 UMICODE가 나타난다

현재 1234의 키는 gusla이기 때문에 새로고침 후 다시 시도해 본다

 

 

해당되는 키를 입력해 주고 다시 실행

 

 

이런 구문을 거쳐서

 

 

결국 성공 메시지가 뜨게 되는 것을 확인할 수 있다

 

 

이번에는 다시 yrg로 1234를 입력하고 실행한다

 

 

현재 화면에서는 JGE 명령어가 나오기 때문에

크거나 같은 걸 비교할 때 사용하는 명령어가 나온다

 

 

그렇게 되면 yrg에 대한 1234의 값이 나타나게 된다

 

 

이어서 crackme10을 진행하기 전에 시스템 정보에서 컴퓨터 설명을 yrg로 넣어 준다

 

 

그런 다음 crackme10을 실행시키지만 해당 파일은 크랙 파일을 이용해야 되기 때문에

 

 

401005 라인을 CMP EAX,0에서 1로 변경시키고 해당 부분을 드래그 후 저장해야 된다

 

 

해당 부분을 Crackme_10_Code_Patch.exe로 크랙 패치 파일을 하나 생성한다 

 

 

그런 다음 다시 실행시키게 되면 실행되지 않았던 파일이 잘 진행된다

 

 

이번에는 Strings에서 성공 메시지를 확인할 수 있었기 때문에

이번에도 해당 메시지 부근으로 이동한다

 

 

이동 후 거슬러 올라가서 시작 부분이 될 만한 지점에 브레이크 포인트를 걸고

 

 

F8로 하나씩 실행하게 되면 123456으로 입력했던 게 메모리에 저장되어 있는 걸 볼 수 있다

 

 

JNE 부분에서 Zero Flag를 0에서 1로 변경시켜 주고

 

 

계속 진행하면 해당 pc의 정보가 나타나게 된다 

 

 

곧이어 반복문을 실행하는 구간이 나오는데 현재의 화면에서는

123456이 DF>V,FB7ME]3MI인 걸 알 수 있다

최소 14자리는 입력해야 되기 때문에 비교 후 값이 생긴다

 

 

메모리에도 DF>V,FB7ME]3MI의 값이 저장되어 있다

 

 

새로고침 후 다시 실행 시에 그 값을 입력하게 되면

 

 

반복문에서 비교를 하게 되고 점점 DF>V,FB7ME]3MI와 비슷해져 가는 걸 볼 수 있다

둘의 값이 일치하게 되면 성공 메시지가 뜨게 된다

 

 

또 이어서 crackme11을 연습해 보려고 한다

 

 

crackme11의 경우에도 함수에서 Cmp 함수를 찾아서 해당 부분으로 이동한다

 

 

해당 부분에 브레이크 포인트를 걸어 주고 실행 후 

 

 

1234의 값을 입력한다

 

 

하지만 다른 것과는 다르게 바로 스택 값에 표기가 된다

현재 1234의 경우 677345가 되는 것을 알 수 있다

 

성공할 수 있는 번호를 알게 되어 다시 새고고침 후 진행한다

1234의 값이었던 677345를 입력하고 실행

 

 

성공하게 되면 해당 화면과 같이 성공 메시지를 띄운다

 

 

 

강의 소감

아직도 값을 찾을 때 Strings와 함수를 보는 습관을 들여야 되는데 익숙하지 않다

그렇기 때문에 실행 후에는 무조건 들어가서 확인해 보고 진행해야 될 것 같다

또한, 답을 못 찾는 것이 아니라 스택 값과 메모리의 상황을 지켜보고

값을 찾을 수 있을 때까지 연습해 보는 것도 중요한 것 같다

'리버싱' 카테고리의 다른 글

리버싱 16  (0) 2024.08.30
리버싱 15  (0) 2024.08.30
리버싱 13  (0) 2024.08.27
리버싱 12  (0) 2024.08.26
리버싱 11  (0) 2024.08.26