일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 변수
- 뭉뭉
- hackingcamp
- 워 게임
- c언어
- 2021
- 해킹캠프
- 라이트업
- Basic
- 풀이
- 라업
- 라이트 업
- 강의
- probgame
- write up
- vsCode
- 드림핵
- 시탭
- ctf
- ShaktiCTF
- reversing
- 파이썬
- 리버스 엔지니어링
- web
- reversing.kr
- 히공
- 리버싱
- PYTHON
- write-up
- 코드엔진
목록워 게임 (3)
히공
보호되어 있는 글입니다.

ImagePrc 문제를 풀어보겠습니다. 실행화면 입니다. 그냥 아무거나 그리고 Check 버튼을 눌러보았습니다. WinMain 함수 입니다. WndProc 으로 보이는 함수 입니다. (인자도 WndProc 함수랑 같기 때문입니다) 27줄에서 CreateComatibleBitmap(v7,200,150)으로 비트맵을 만듭니다. msdn 주소 : 여기 비트맵의 크기는 200px, 150px 입니다. string 검색 Wrong을 찾았습니다. 여기서 x를 누르니 어디서 사용되는지 알려줍니다. 바로 여기 입니다. 24비트맵이란걸 알 수 있습니다. 여기서 비교를 해서 그린 그림이 맞는지 아닌지 검사합니다. x32dbg로 아까 그 부분을 열었습니다. 반복문 시작 전에 bp를 걸어주었습니다. 이런식으로 칠해주고 Che..

15번 문제를 풀어보겠습니다. 이러한 문제입니다. name, serial을 입력하고 Check it ! 을 누르면 정답인지 아닌지 확인합니다. 이런식으로 확인합니다. 패킹은 안되어있습니다. x32dbg에서 실패했을때 나왔던 Try Again으로 검색해보았습니다. 이런 코드를 발견했습니다. bp가 있는곳이 분기점 입니다. 한번 Name에 CodeEngn, 비번에는 1234를 넣고 f9를 눌러서 eax값과 45B844의 값을 확인해보겠습니다. eax값 입니다. 제가 입력했던 비밀번호 입니다. 덤프 따라가기로 45B844의 값을 확인해보겠습니다. (dword ptr 로 받아오니 4바이트만 비교합니다.) 0x6160 입니다. (리틀엔디안이기 때문에 반대로 봐야합니다.) 0x6160은 10진수로 24928입니다...