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

문제 int __cdecl main(int argc, const char **argv, const char **envp) { __int64 v3; // rbp const char *v4; // rsi const char *v5; // rdi __int64 v6; // rdx int result; // eax unsigned __int64 v8; // rcx unsigned __int64 v9; // rt1 const char **v10; // [rsp-48h] [rbp-48h] __int64 v11; // [rsp-38h] [rbp-38h] __int64 v12; // [rsp-30h] [rbp-30h] __int64 v13; // [rsp-28h] [rbp-28h] __int64 v14; // [rsp..

문제 메인 함수 transform 함수 원격 디버깅을 사용했는데 segment fault가 뜬다. (v4가 0이란 값을 가지고 있기 때문이다. write 할 수 없는 영역) bec = [int(i,16) for i in '77 41 50 63 55 4C 5A 68 7F 06 78 04 4C 44 64 06 7E 5A 22 59 74 4A'.split()] flag = '' for i in range(len(bec)): if (i&1): flag += chr(bec[i] ^ 0x37) else: flag += chr(bec[i] ^ 0x13) print(flag) 간단하게 풀 수 있다. 플래그 : dvCTF{I_l1k3_sw1mm1ng}