분류 전체보기

    [Dreamhack] pwn_patch_2 write-up

    보호되어 있는 글입니다.

    [Dreamhack] pwn_patch_1 write-up

    보호되어 있는 글입니다.

    BYUCTF 2024 (Pwn)

    BYUCTF 2024 (Pwn)

    [solved] [pwn/All]더보기int vuln(){ int result; // eax char buf[32]; // [rsp+0h] [rbp-20h] BYREF while ( 1 ) { result = strcmp(buf, "quit"); if ( !result ) break; read(0, buf, 0x100uLL); printf(buf); } return result;} bof, fsb가 발생한다.from pwn import *context.arch = 'amd64'# p = process('all')p = remote('all.chal.cyberjousting.com', 1348)p.send(b'%p.')stack = int(p.recvuntil(b'..

    TBTL CTF 2024 (Pwn)

    TBTL CTF 2024 (Pwn)

    [solved] [pwn/Enough with the averages]더보기// gcc -o chall chall.c -Wextra#include #include void read_flag() {  FILE* in;  char flag[64];  in = fopen("flag.txt", "rt");  fscanf(in, "%s", flag);  fclose(in);}void vuln() {  int score[20];  int total = 0;    for (int i=0; i read_flag 함수와 vuln 함수가 스택 프레임을 공유한다. vuln에선 값을 더해서 평균 값을 내고 출력해준다. scanf의 인자가 "%d"인데 문자를 넣게되면 값이 바뀌지 않고 보존된다.이를 이용해서 플래그 값을 추출해..