Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- PYTHON
- 변수
- 시탭
- reversing.kr
- write up
- 라이트업
- 코드엔진
- ShaktiCTF
- 파이썬
- 드림핵
- web
- 라업
- ctf
- 워 게임
- 라이트 업
- 2021
- probgame
- write-up
- vsCode
- reversing
- Basic
- 강의
- hackingcamp
- c언어
- 뭉뭉
- 풀이
- 히공
- 리버스 엔지니어링
- 리버싱
- 해킹캠프
Archives
히공
코드엔진 - advance 3 본문
728x90
이러한 문제입니다.
이런식으로 출력이 됩니다.
x32dbg에서 No, that is not the.....를 찾았습니다.
GetDlgItemTextA밑에 bp를 걸어줍니다.
Name값을 가져옵니다.
그리고 GetDlgItemTextA의 반환값이 3이하면 틀렸다는 메세지를 출력합니다.
그 다음 GetDlgItemTextA에서는 비번값을 가져옵니다.
lstrcmpA로 입력한 비번과 3265754874를 비교합니다.
입력했습니다.
반환값이 0 입니다.
근데 이상합니다. 현재 eax값은 0인데 0을 0으로 나누면 오류가 납니다.
이러한 오류가 뜹니다.
한번 더 F8을 누르니 정답이라고 뜹니다.
문자열 찾기로 성공 메세지로 왔습니다. 여기에 bp를 걸고 다시 실행해봤습니다.
다시 입력해 줍니다.
이 곳으로 와서
f8을 눌러줍니다.
아까 bp 건 곳으로 옵니다.
그래서 이런 코드를 만들었습니다.
컴파일 후
(vs를 못 쓰시는 분들을 위해 파일 첨부합니다.)
메인 함수로 오고
두 곳에 bp를 걸어줍니다.
오류가 뜹니다.
한번 더 F8을 눌러줍니다.
error을 출력하는 것을 볼 수 있습니다.
이러한 exception을 이용한 문제같습니다.
정답 : 3265754874
'reverse engineering > CodeEngn' 카테고리의 다른 글
코드엔진 - advance 5 (0) | 2021.02.09 |
---|---|
코드엔진 - advance 4 (2) | 2021.02.08 |
코드엔진 - advance 2 (0) | 2021.02.04 |
코드엔진 - advance 1 (0) | 2021.01.04 |
코드엔진 - basic 20 (0) | 2020.10.19 |
Comments