摘要: 1.例行运行并检查程序,32位程序,开启了 NX 保护,这时我们之前写入 shellcode 执行就会失效 2.依然是通过 gets() 来覆盖返回值,当然尽管找到了 /bin/sh 字符串,我们并没有 system("/bin/sh") 来开启shell,这时我们需要调用系统中的函数,(ps:一个 阅读全文
posted @ 2019-11-17 19:00 祟役丶 阅读(419) 评论(0) 推荐(0) 编辑
摘要: 1.运行程序,没有提供 system ,32位程序,基本未开保护 2.IDA中发现 strncpy() 函数将我们输入的 v4 复制到 bss 段的 buf2 处 3.经过 gdb 查看 buf2 处的代码是具有 rwx 属性的,因此我们可以构造一段 shellcode 然后执行此处的代码。 4.查 阅读全文
posted @ 2019-11-17 18:13 祟役丶 阅读(309) 评论(0) 推荐(0) 编辑
摘要: 1.首先运行一下程序 2.简单地检查一下程序,32位程序,开启了部分Relro保护,有NX保护(其实并没有什么影响) 3.观察 main 函数不难发现是通过 gets() 函数输入来覆盖返回值。 4.在 ida 里发现有 system("/bin/sh") 的代码,这样其实我们以及可以构造 exp 阅读全文
posted @ 2019-11-17 01:01 祟役丶 阅读(585) 评论(0) 推荐(0) 编辑