摘要: 保护机制及其编译选项 NX -z execstack / -z noexecstack (关闭 / 开启) 不让执行栈上的数据,于是JMP ESP就不能用了 即可写处不可执行,可执行处不可写 Canary -fno-stack-protector /-fstack-protector / -fsta 阅读全文
posted @ 2022-04-29 17:49 L1ngYi 阅读(67) 评论(0) 推荐(0) 编辑
摘要: Tools食用方法 IDA 空格可以调整视图 F5进行一键反汇编 双击变量可以看到变量地址或进入函数 Ctrl+S 可以看到区段地址(如bss段、plt、got) 对变量或函数按x可以查看上级调用 可以在函数框Ctrl+F搜索函数名 在变量右键可以Rename变量名,方便代码审计 gdb gdb 程 阅读全文
posted @ 2022-04-29 17:48 L1ngYi 阅读(126) 评论(0) 推荐(0) 编辑
摘要: Pwn知识性名词 Linux相关 延迟绑定技术 ELF采用了当函数第一次使用时,才进行绑定。 ELF实现延迟绑定是通过Plt,原先GOT中存放着全局变量和函数调用,现在把它拆分为各个部分。 .got 和.got.plt,用.got存放着全局变量的引用,用.got.plt存放函数的引用。 基本可以解释 阅读全文
posted @ 2022-04-29 17:48 L1ngYi 阅读(49) 评论(0) 推荐(0) 编辑
摘要: 题解/Write Up 攻防世界 level0 #exp: from pwn import * r = remote("111.198.29.45", 34012) payload = 'A' * 0x88 + p64(0x00400596).decode("iso-8859-1") r.recvu 阅读全文
posted @ 2022-04-29 17:46 L1ngYi 阅读(117) 评论(0) 推荐(0) 编辑
摘要: 常见漏洞利用 个人感觉来说,上来就啃CTFwiki是有点难度的。 Dark不必整太严苛,可以先跟着exp自己试着理解,能理解套路之后再去CTFwiki上矫正一下知识概念。 简单栈溢出(re2text) 首先要知道: 对x86,函数参数在函数返回地址上方 对x64,函数参数依次保存在rdi,rsi,r 阅读全文
posted @ 2022-04-29 17:45 L1ngYi 阅读(466) 评论(0) 推荐(0) 编辑