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
- 시스템
- webhacking
- 웹해킹
- 드림핵
- 모의해킹
- 워게임
- 소프트웨어보안
- 웹
- WarGame
- 리버싱
- 네트워크보안
- XSS
- 비박스
- 알고리즘
- bee-box
- Webhaking
- hacking
- 네트워크
- 시스템해킹
- 순서도
- System
- CodeEngn
- dreamhack
- 소프트웨어
- ftz
- reversing
- TCP
- 해킹
- network
- Web
Archives
- Today
- Total
Without a Break
[Dreamhack] rev-basic-4 본문
문제 파일을 디버거로 열었을 때 모습
corret를 출력하는 입력값을 찾아야하니 문자열을 찾아봤다.
corret의 위치로 이동해보자
corret의 위쪽을 보면 test eax,eax에서 입력값과 정답을 비교한다는 것을 알 수 있다.
test eax,eax의 위 코드를 보면 7FF62FFD1000에 정답이 있는 것 같다. 이 위치로 이동해보자
이동해보니 27개의 문자열과 입력값을 비교한다는 것을 알 수 있었다.
코드는 다음과 같다.
1. eax에 첫 번째 입력값을 넣고 4비트 shift
2. ecx에 첫 번째 입력값을 넣고 4비트 shift
3. ecx와 F0을 and 연산
4. eax와 ecx를 or 연산하여 eax에 저장
5. 그 후, 7FF62FFD3000 값을 가져옴
HEX DUMP를 살펴보니 27개의 문자가 있었다.
파이썬 코드를 작성해서 돌려봤더니
정답이 나왔다.
'Reversing > Wargame' 카테고리의 다른 글
[Dreamhack] rev-basic-8 (0) | 2023.08.16 |
---|---|
[Dreamhack] rev-basic-6 (0) | 2023.08.16 |
[Dreamhack] rev-basic-3 (0) | 2023.08.16 |
[Dreamhack] rev-basic-1 (0) | 2023.08.13 |
[Dreamhack] rev-basic-0 (0) | 2023.08.13 |