[CodeEngn] Basic RCE L01

Tsi0511·2023년 9월 14일
0

Basic RCE 01

폴더 아이콘을 눌러 다운 받고 codeengn을 입력해 압축을 푼 다음 실행파일을 실행시켜보면

프로그램을 CD-Rom으로 인식하도록 해달라고 한다.

우클릭 > 모든 유저 모듈 > 문자열 참조

주소를 더블클릭하면

해당메세지가 있는 곳으로 이동한다.

밑에 부분 보면 CMP eax, esi가 있다.

cmp eax, esi
je 01.40103D

이는 eax와 esi를 비교했을 때, 다르면(jne) 40103D 주소로 이동하고,
ESI와 EAX 값이 같다면 ok 멘트 출력한다는 것을 알 수 있다.

연산하는 구간을 살펴보면 ESI에 3을 더해주고, EAX에서는 2를 빼주는 것을 확인 가능하다.
(이 때 ESI는 0으로 세팅되어 있다.)

따라서 EAX - 2 = 3 -> EAX(GetDriveTypeA의 값) = 5가 되어야 한다.


https://learn.microsoft.com/en-us/windows/win32/api/fileapi/nf-fileapi-getdrivetypea

사실 여기 들어가서 GetDriveTypeA값을 확인하면 쉽게 알 수 있다.

HDD를 CD-ROM으로 인식시키려면 GetDriveTypeA의 리턴값은 "5"가 되어야한다.


코드엔진에 로그인 후 알아낸 키값을 넣고 Register버튼을 누르면 알림창이 뜨면서

이런 문구를 확인 할 수 있다.

profile
프론트 공부하는 중..

0개의 댓글

관련 채용 정보