AIS3 EOF Quals 2026 write-up Welcome 在 announcement 找到 flag flag: EOF{2026-quals-in-2025} misc fun 這題是一個 eBPF 的 reverse 題 flag.enc: eabbc25677f3084458f0531f86863f226c95d555e6c28bd7 (32 bytes) 使用 llvm-objdump 查看 llvm-objdump -d xdp_prog.o: 1234567891011121314151617181920212223242526272829303
Heap exploitation ptmalloc2 ptmalloc - glibc tcmalloc - google jemalloc … malloc 要用多少分配多少,提升記憶體分配效率以及避免記憶體空間的浪費 void *ptr = malloc(size): 找到一塊>=size的free chunk,mark為in-use,如果找不到就從系統要memory(brk/mmap) workflow of malloc 預設的mmap大約為128KB size >= 128kb mmap跟kernel要memory size < 128k
Binary exploitation basic 2 寫得很爛,所以不知道有哪些會是錯的🫠 objdump -R 可以得知binary裡有用到的function, 左邊的offset就是他的GOT table 也可以用readelf -St 去查看GOT的位址 每個function的.plt第一行都是jmp QWORD PTR [rip+0x00000]是從一個memory裡拿值出來然後jump上去 左邊尚未call gets, 由於lazy binding的機制所以它都會放成那個function+6的地方, 右邊run過再看他的GOT table就發現已經被填回去了, 所以
Binary exploitation basic 1 ELF Executable and Linkable Format 執行檔ex. exe section 執行時會mapping到RAM上(virtual memory) .text .bss .data .rodata .got .plt .fini ELF - SECTION .bss : 存放未初始化值的全域變數 (global variable) .data : 存放具初始化值的全域變數 .rodata : 存放唯讀(read only)資料 .text : 存放編譯後的code x64 Assembly
AIS3 2025 pre-exam & myfirst ctf write up [mfctf(o)/pre-exam(x)] 代表的是在mfctf有解出來但是pre-exam沒解 pre-exam排名73 mfctf排名7 ㄏㄏ只比mfctf多300分, 可以再廢一點 misc [mfctf(o)/pre-exam(x)] Welcome 已經給了, 不過不能複製貼上我直接手打 flag : AIS3{Welcome_And_Enjoy_The_CTF_!} 用google翻譯用出來的結果w Ramen CTF 這題有給一個圖片, 可以發現他有一個發票 拿去掃之後