09 2019 档案

摘要:[TOC] 程序基本信息 32位动态链接程序,开启了数据段不可执行以及栈溢出保护 程序漏洞 在函数中sub_80487fa中有一个格式化字符串漏洞和read函数栈溢出漏洞 整体思路 首先不用说,肯定得先想办法栈溢出,溢出函数我们已经找到,接下来的问题就是得泄露出canary的值,从而绕过栈溢出保护。 阅读全文
posted @ 2019-09-29 22:59 不想取名字a 阅读(340) 评论(0) 推荐(0) 编辑
摘要:[TOC] 程序基本信息 64位动态链接程序,开启了栈溢出和数据段不可执行保护 程序漏洞 read函数很明显的栈溢出漏洞 整体思路 由于题目给了libc,我们可以使用one_gadget获得gadget在libc中的偏移,通过泄露其他函数库的偏移计算gadget在内存中的位置。由于程序中有栈溢出保护 阅读全文
posted @ 2019-09-28 17:37 不想取名字a 阅读(391) 评论(0) 推荐(0) 编辑
摘要:[TOC] 程序基本信息 程序防护全开,shellcode修改got表等方法都不太可行,同时pie开启也使程序代码随机化了。 程序漏洞 这是一个发推特的程序,具体功能不在这里细说,这个程序有两个漏洞: 一个是存在在功能1中的格式化字符串漏洞,在函数sub_55D83D2C4F00中 通过分析可以发现 阅读全文
posted @ 2019-09-27 15:12 不想取名字a 阅读(438) 评论(0) 推荐(0) 编辑
摘要:#寄存器 1、查看寄存器 2、查看所有寄存器 3、查看某个寄存器 4、修改寄存器的值 #内存 1、修改内存值 2、搜索内存 #peda插件命令 1、显示在调用指令处停止时传递给函数的参数 2、显示/设置gdb的aslr设置 3、显示特定内存范围内的所有ROP gadgets 4、从调试的elf文件获 阅读全文
posted @ 2019-09-25 21:50 不想取名字a 阅读(2665) 评论(0) 推荐(0) 编辑
摘要:GCC基本命令 gcc[选项][文件名] + E:仅执行编译预处理(.c .i) + S:将c代码转换成汇编代码(.i .s) + c:仅执行编译操作,不进行连接操作(.s .o) + o:指定生成的输出文件 + I(大写i):指定头文件目录 + l:指定程序要来链接的库 + L:指定库文件所在的目 阅读全文
posted @ 2019-09-25 00:25 不想取名字a 阅读(462) 评论(1) 推荐(0) 编辑
摘要:[TOC] 程序基本信息 可以看到开启了栈不可执行和got表不可写保护。 程序溢出点 在函数sub_400AF7中,v8可以读入0x12C个字节,同时if判断中对v8进行字节截断,所以我们可以输入如0x101个字符,在保证能够溢出到返回地址的同时,v8字节截断后的0x01又能够通过if判断,然后通过 阅读全文
posted @ 2019-09-22 22:43 不想取名字a 阅读(884) 评论(0) 推荐(0) 编辑
摘要:[TOC] 程序基本信息 我们可以看到这是一个64程序,没有保护开启。 程序溢出点 gets函数可以读取无限字符,存在栈溢出。 接下来我们测测需要多少字符长度可以溢出。 我们可以直接从ida上看到 变量s在栈上[bp Fh]位置,也就是说我们只能输入(Fh + 8)(覆盖rbp需要8个字节)的字节就 阅读全文
posted @ 2019-09-19 20:25 不想取名字a 阅读(2528) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示
🚀
回顶
收起
  1. 1 404 not found REOL
404 not found - REOL
00:00 / 00:00
An audio error has occurred.