pwnlearning

2025年7月25日 #

ctfshow | pwn36

摘要: 1.checksec 2.IDA ctfshow函数,gets漏洞函数,栈溢出,覆盖0x28+4字节 后门函数 地址 exp: 点击查看代码 from pwn import * context(arch='i386', os='linux', log_level='debug') p= remote 阅读全文

posted @ 2025-07-25 12:06 邪恶的帽子 阅读(16) 评论(0) 推荐(0)

ctfshow | pwn35

摘要: 这道题操作简单,但有些地方需要理解 1.checksec 2.IDA main函数 ctfshow函数 这里有个strcpy函数,该函数将src字符串拷贝到dest,结束后返回到指向dest的指针,由于没有长度限制,这里存在一个栈溢出漏洞。 然后我就在找system函数,没找到,还开了NX保护,难道 阅读全文

posted @ 2025-07-25 10:53 邪恶的帽子 阅读(16) 评论(0) 推荐(0)

BUUCTF | ciscn_2019_s_3

摘要: 用ret2csu思路做,利用csu初始化函数布置栈空间,控制寄存器的值来执行execve('/bin/sh') 获取 shell 1.checksec 2.IDA 栈溢出,没找到后门函数,开了NX保护,以为是ret2libc,但是没有write和read函数的plt,got表,也就找不到libc基址 阅读全文

posted @ 2025-07-25 09:15 邪恶的帽子 阅读(39) 评论(0) 推荐(0)

2025年7月24日 #

BUUCTF | jarvisoj_level3

摘要: 本题与pwn2_sctf_2016类似,便简单描述 1.checksec 2.ida 栈溢出,无sys,nx保护,泄露libc 3.libc 版本 下载即可 完整exp: 点击查看代码 from pwn import * from LibcSearcher import * context.log_ 阅读全文

posted @ 2025-07-24 17:25 邪恶的帽子 阅读(37) 评论(0) 推荐(0)

BUUCTF | pwn2_sctf_2016

摘要: 1.checksec 有NX保护 2.IDA 观察一下,发现v2的长度不能大于32,否则进入if语句,结束 点进get_n观察一下 get_n会接收a2个长度的字符放到vuln函数的缓冲区内部,而a2是unsigned int,前面v2是int型,unsigned int是无符号整型,遇到-1就会变 阅读全文

posted @ 2025-07-24 17:06 邪恶的帽子 阅读(53) 评论(0) 推荐(0)

BUUCTF | [HarekazeCTF2019]baby_rop2

摘要: 1.checksec 开启了NX保护 2.IDA buf大小0x20,可读0x100,存在栈溢出 没有现成的system(‘/bin/sh’),有NX保护,所以要泄露libc基址 进而得到system和binsh地址 3.64位程序寄存器传参,有两个参数要设置,找rdi和rsi寄存器的位置 4.构造 阅读全文

posted @ 2025-07-24 15:02 邪恶的帽子 阅读(64) 评论(0) 推荐(0)

BUUCTF | ciscn_2019_es_2

摘要: 1.checksec看一下,开启了NX保护 2.IDA 打开vul函数,变量s距ebp0x28,而读长度有0x30,存在栈溢出。 0x30-0x28=0x8,可操作的空间较少,只够覆盖到rbp和ret,而且开了NX保护,因此本题采用栈迁移来解决栈空间不足的问题,把执行提权的代码放到其他段上。 栈迁移 阅读全文

posted @ 2025-07-24 11:29 邪恶的帽子 阅读(83) 评论(0) 推荐(0)

导航