상세 컨텐츠

본문 제목

[CodeEngn] Basic RCE L03 Write-Up

해킹공부/CodeEngn

by 밍구21 2022. 3. 20. 18:09

본문

실습 프로그램

-Immunity Debugger

 

문제 출처- https://ch.codeengn.com/

문제를 다운 받아서 디버거에 드래그앤드롭 해줬다.

 

 

 

롸?

롸?????????????????? 

음 일단 저게 없다니 구글링 해서 MSVBVM50 파일을 찾아서 다운로드 해준다. 나는 스터디원 분이 파일을 공유해주셨다.

 

 

 

다운 받고 디버거 올리기 전 프로그램을 실행해봤다. 넵?? 뭐라고요??

대충 패스워드 뭐라는 거 같은데 난 이런 거... 궁금해서 ㅎ

대충 비밀번호를 알아내라는 뜻. 확인을 눌러준다.

 

 

등록코드를 치라한다. 그런 걸 내가 알리가.

 

 

아무거나 눌러줬다.

 

 

대충 비밀번호가 틀렸다는 뜻 같다. 프로그램 실행 순서는 대충 봤으니 이제 디버거에 올려주자.

 

 


 

디버거에 올려서 전체적으로 코드를 보다가 F7, F8로 한 줄씩 코드를 봤다.

 

F7 - 코드 한 줄 실행. 함수 내부까지 진입

F8 - 코드 한 줄 실행. 함수 내부 진입 X

 

하지만 한 줄 실행으로는 우리가 찾는 스트링 비교 함수 이름을 알 수 있는 힌트를 찾기 힘들 거란 생각이 들었다.

 

 

 

이럴 때 사용할 수 있는 게 All intermodular calls이다. 해당 프로그램에서 호출되는 모든 API 함수를 확인할 수 있다.

실행 경로는 디버거에서 우클릭 > Search for > All intermodullar calls 이다.

 

켜자마자... 감이 오지 않는가? 이름부터 스트링 비교 함수라고 존재감을 뽐내는 저 아이가... vbaStrCmp 누가봐도 스트링컴페어라고....

 

함수를 더블클릭 하면 해당 코드로 이동한다.

 

 

 

자잔! 도착! vbaStrCmp함수를 호출하는 코드 부분이다.

저 아래에 정답을 입력했을 때 띄어질 문구창도 보이니 제대로 온 것 같다.

 

 

 


그럼 프로그램을 실행 시켜 스트링 비교 함수 이름인 vbaStrCmp를 입력해보자.

도롱

삐빅 오답입니다. 띠용!

 

 

vbaStrCmp함수를 호출하는 코드 부분을 다시 보자.

문제의 정답이 vbaStrCmp인 건 확실한데 프로그램 인증코드는 뭘까? 바로 위 코드에 비밀번호 같은 게 아른거린다..>^^

 

넣어봤다.

당커당커! 정답인 것 같다. 그래도 궁금하니 한 번....

 

예! regcode도 맞췄다.

 

 


그럼 코드엔진 웹에 가서 정답 입력을 해보겠다.

 

질문은 비주얼베이직에서 스트링 비교함수 이름은? 이었고

내가 찾은 정답은 vbaStrCmp이다.

 

코드엔진 네비게이션바에서 Auth탭에 가서 입력

 

예!

'해킹공부 > CodeEngn' 카테고리의 다른 글

[CodeEngn] Basic RCE L07 Write-Up  (0) 2022.03.24
[CodeEngn] Basic RCE L06 Write-Up  (0) 2022.03.24
[CodeEngn] Basic RCE L05 Write-Up  (0) 2022.03.22
[CodeEngn] Basic RCE L04 Write-Up  (0) 2022.03.22
[CodeEngn] Basic RCE L02 Write-Up  (0) 2022.03.20

관련글 더보기