일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
- web
- 라이트 업
- 리버싱
- 풀이
- reversing
- 드림핵
- 해킹캠프
- 리버스 엔지니어링
- hackingcamp
- probgame
- 시탭
- write-up
- 라이트업
- reversing.kr
- ctf
- PYTHON
- 변수
- 뭉뭉
- Basic
- 라업
- 워 게임
- 2021
- 히공
- 강의
- c언어
- 파이썬
- vsCode
- 코드엔진
- ShaktiCTF
- write up
히공
코드엔진 - basic 07 본문
basic 7번 문제를 풀어보겠습니다.
이러한 문제이다.
실행시켰을때
문자열을 가지고 찾아보자
GetDlgItemTextA를 호출하는 부분에 브포를 걸고 입력값을 받아와보자.
이런식으로 12345를 입력해보았다.
GetVolumeInformationA를 실행하고 보니까
push했던 주소중 0x40225C에 로컬 디스크가 들어가는 것을 볼 수 있다.
docs.microsoft.com/en-us/windows/win32/api/fileapi/nf-fileapi-getvolumeinformationa
GetVolumeInformationA function (fileapi.h) - Win32 apps
Retrieves information about the file system and volume associated with the specified root directory.
docs.microsoft.com
lpRootPathName이 0x40225C라고 볼 수 있다.
그래서 현재 C드라이브의 이름이 들어간것이다.
그리고 lstrcat을 실행해서 드라이브이름과, 4562-ABEX를 합친다.
일단 문제에 C 드라이브 이름을 CodeEngn로 하라고 했으니 CodeEngn으로 바꾸어 보겠다.
바꾸었다.
여기서 보면
Code에서 각 요소를 3씩 더한다.
저 3번 반복이 끝나고 나면 CodeEngn이 EqfgEngn으로 바뀐다.
문제는 CodeEngn이 무엇으로 바뀌냐고 물어보았으니 EqfgEngn이 정답이다.
정답 : EqfgEngn
'reverse engineering > CodeEngn' 카테고리의 다른 글
코드엔진 - basic 09 (0) | 2020.09.16 |
---|---|
코드엔진 - basic 08 (0) | 2020.09.16 |
코드엔진 - basic 06 (6) | 2020.09.16 |
코드엔진 - basic 05 (0) | 2020.09.10 |
코드엔진 - basic 04 (0) | 2020.09.10 |