一步一步学pwn之防御机制

ASLR(内存地址随机化)---系统层
操作系统可以将函数调用栈和libc的起始地址设为随机地址,这样程序每次运行地址会随机变化 。
1)用return2libc和ROP绕过
2)shellcode不可执行
3)难以找到shellcode和system
4)-fno-stack-protector 关闭

Canary(Stack protect)
1)-z execstack可关闭
2)用SSP来泄露

PIE(内存空间随机化)
可以防范基于return2libc方式的针对DEP的攻击

RELRO
重定位只读,保护库函数的调用不受攻击者重定位的影响
1)ROP绕过

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 最近在学蒸米的《一步一步学ROP之linux_x86篇》,内容写的很详细,个人学到了很多,但同时学的过程中也有很多...
    2mpossible阅读 1,536评论 0 5
  • 绕过 ASLR -- 第三部分 译者:飞龙 原文:Bypassing ASLR – Part III 预备条件: ...
    布客飞龙阅读 756评论 0 1
  • 0. 引言 如果你学的第一门程序语言是C语言,那么下面这段程序很可能是你写出来的第一个有完整的 “输入---处理-...
    pandolia阅读 14,216评论 13 27
  • 想必此时的你早早睡却了,吃完躺床上一会睡着了,十点多醒来,却再也睡不着了,开始外面还有飞机飞过的轰鸣声,此时只有窗...
    goldfish2017阅读 155评论 0 0
  • 不知从哪看到的一段年俗儿歌:“小孩儿小孩儿你别馋,过了腊八就是年。腊八粥,喝几天,哩哩啦啦二十三。二十三,糖瓜粘...
    八字一撇阅读 801评论 0 4