漏洞普及知识
guiguzi1110
这个作者很懒,什么都没留下…
展开
-
栈溢出原理
栈溢出指的是程序向栈中某个变量中写入的字节数超过了这个变量本身所申请的字节数,因而导致栈中与其相邻的变量的值被改变。这种问题是一种特定的缓冲区溢出漏洞(比如说,还有向堆中写,向bss段写)。而对于黑客来说,栈溢出漏洞轻则可以使得程序崩溃,重则可以使得攻击者控制程序执行流程。转载 2017-08-29 09:17:35 · 13648 阅读 · 0 评论 -
基本ROP
随着NX保护的开启,以往直接向栈或者堆上直接注入代码的方式难以继续发挥效果。攻击者们也提出来相应的方法来绕过保护,目前主要的是ROP(Return Oriented Programming),其主要思想是在**栈缓冲区溢出的基础上(这一条之后不再重复提及),通过利用程序中已有的小片段(gadgets)来改变某些寄存器或者变量的值,从而改变程序的执行流程。**所谓gadgets就是以ret结尾的指令序列,通过这些指令序列,我们可以修改某些地址的内容,方便控制程序的执行流程。转载 2017-08-29 09:21:17 · 8662 阅读 · 0 评论 -
其它栈溢出技巧
其它栈溢出技巧转载 2017-08-29 09:27:06 · 5969 阅读 · 2 评论 -
高级ROP
高级ROP其实和一般的ROP基本一样,其主要的区别在于它利用了一些比较有意思的gadgets。转载 2017-08-29 09:24:25 · 4961 阅读 · 0 评论