4.4k 4 分钟

# 中级 ROP_CSU ret2csu 泄露 libc 地址之后利用 libc 中的 gadget getshell. ret2csu 配合 pop rax; syscall; 等 gadget 直接 GetShell. 开启 PIE 的情况下,利用 offset2lib 进行 ret2csu, 或者直接利用 libc 中的 gadget getshell. 只要动态连接都会有 _libc_csu_init 函数 # 原理 ¶ 在 64 位程序中,函数的前 6 个参数是通过寄存器传递的,但是大多数时候,我们很难找到每一个寄存器对应的 gadgets。 这时候,我们可以利用 x64 下的...
4.6k 4 分钟

# 国赛题复现 不同地区的国赛题,进行复现。— 简单 pwn 题 # 华北赛区: # RELRO 保护机制 1.RELRO 的保护机制可用于防护 GOT hijacking ,其全名为 Relocation Read-Only 。 2. 本题中 checksec 中为 Partial RELRO ,这种情况下, GOT 可写,即存在 GOT hijacking 的漏洞 3. 而保护的方式是设置为 Full RELRO ,这种情况下不会出现 lazy binding ,因为在 Load time 时会将所有 funciton resolve 完毕,并设置 GOT...
1.4k 1 分钟

# 题目复现 ——[深育杯 2021] find_flag pie 与 canary 同时开启,并且有格式化字符串。 # 检查程序: 保护很全面。 可以看的出,在第一处有格式化字符串漏洞。 # IDA 分析: 看了一下 mian 函数,将函数重命名,pwn 是我们有漏洞的地方。 可以看到 gets 函数可以进行栈溢出,但是有 canary 保护,所以我们需要泄露 canary,可以利用格式化字符串去泄露 canary 并覆写在栈上。 发现 backdoor。但是开了 pie,我们应该无法利用后们,但是好在只读变量(const 修饰的)和字符串变量放入 rodata...