Pwn-SROP Author: 堇姬Naup signal機制 kernel向process發起signal機制,Process暫時中斷,進入kernel 保存環境(簡單來說就是保存了各個暫存器的值,將所有東西壓入stack,並壓入signal相關訊息),這段記憶體被稱為Signal Frame 到signal handler處理 恢復環境 繼續執行process signal frame 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152str
Pwnable.tw-start Author: 堇姬Naup 題目123456789101112131415161718192021220x08048060 <+0>: push esp0x08048061 <+1>: push 0x804809d0x08048066 <+6>: xor eax,eax0x08048068 <+8>: xor ebx,ebx0x0804806a <+10>: xor ecx,ecx0x0804806c <+12>: xor edx,edx0x080480
AIS3 2024 - 專題研究成果 Author: 堇姬Naup 專題我是網頁、IoT及軟體安全的A2。這次是做IoT的漏洞專題,這次是研究Tenda router,研究的型號是AC10、AC15兩個型號,並且嘗試從CVE付現到挖出漏洞,雖然沒有拿最佳專題,但我也學到很多。以下是研究內容 AC10 CVE付現解firmware1binwalk -E US_AC10V1.0RTL_V15.03.06.23_multi_TD01.bin 看起來沒有加密 直接 1binwalk -e US_AC10V1.0RTL_V15.03.06.23_multi_TD01.bin 模擬 qemu-mip
HITCON CTF 2024 Author: 堇姬Naup rank: 24th & Taiwan 1st 這次跟bamboofox & starburst kiwawa & b33f一起打,主要看we Echo as a Servicesource codeDockerfile 12345678910111213141516171819202122FROM oven/bun:1.1.8-slimRUN apt-get update && apt-get install -y gccRUN useradd -ms /bin/bash ctfW
Pwn-Tcache bin dup Glibc 2.27基本上跟Fastbin dup很像,但換成了Tcache Glibc 2.27沒有檢查鍊表上第一個是不是現在要free掉的chunk,所以可以直接連續free兩次chunk不會有問題 另外注意,chunk fd指的是data 如果是glibc 2.28後加入了key會被寫成Tcache相關東西 流程1Chunk 1(malloc) free掉chunk 1 1Tcache -> Chunk 1 再free一次 1Tcache -> Chunk 1 -> Chunk 1 -> Chunk 1 -> ...
Pwn-Fastbin Dup 1(Glibc 2.23) Author: 堇姬Naup source code123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117
pwnable.tw-orwchecksec啥都沒開(Canary實際上沒開),stack也可以執行 分析 給一個shellcode,然後會幫你執行,不過有seccomp,要ORW。 syscall tablehttps://chromium.googlesource.com/chromiumos/docs/+/master/constants/syscalls.md#x86-32_bit syscallsys_open 暫存器 值 eax 0x5 ebx filename位置的address ecx 0 edx 0 sys_read 暫存器 值
AIS3 pre exam 2024 - writeup Author:堇姬Naup Rank 4th MiscWelcomectrl+c ctrl+v AIS3{Welc0me_to_AIS3_PreExam_2o24!} Three Dimensional Secret看封包然後這個看起來很像3D GCode,直接用線上工具化出來 AIS3{b4d1y_tun3d_PriN73r} Quantum Nim Heist 這題我其實不知道怎麼做的,就亂按,choose那邊在第一次後,如果你不輸入任何東西,或是0 1 2也可以過(回去看了source code發現那邊少寫了
Fixed Size Migration Author: 堇姬Naup Why 不能控制輸入長度時,就只能使用原本main function read 來多次輸入 ROP chain假設現在空間只夠輸入一個gadget1payload (2*8 bytes) + rbp + return address(8bytes) 觀察一下會發現 main_read 其實會將輸入存到 rbp-0x10,可以利用這個特性來寫入 ROP chain123readleaveret leave 12mov rsp rbppop rbp 原理1234空間(8bytes)空間(8bytes)old rbpre