专栏名称: 看雪学苑
致力于移动与安全研究的开发者社区,看雪学院(kanxue.com)官方微信公众帐号。
TodayRss-海外RSS稳定源
目录
相关文章推荐
FreeBuf  ·  SAP Commerce ... ·  17 小时前  
FreeBuf  ·  Hugging ... ·  昨天  
今天看啥  ›  专栏  ›  看雪学苑

PWN入门——金丝雀风波

看雪学苑  · 公众号  · 互联网安全  · 2024-07-10 17:59
    

主要观点总结

文章主要介绍了Linux中的金丝雀机制,即Stack Canaries,用于保护栈以防止缓冲区溢出攻击。金丝雀机制通过在栈底前放置一个随机数,并在函数返回时检查该随机数是否被篡改,以判断栈上是否存在缓冲区溢出。若随机数被篡改,则不应继续执行后续代码。同时,文章还分析了金丝雀机制的实现方式,包括编译器的支持、TLS与金丝雀的关系、金丝雀的产生以及内核对不同线程的支持。此外,文章还探讨了延迟绑定和PLT与GOT的解析,并给出了绕过金丝雀机制的思路,包括泄露随机值和篡改GOT。

关键观点总结

关键观点1: 金丝雀机制概述

金丝雀机制通过在栈底前放置随机数,并在函数返回时检查随机数是否被篡改,以保护栈免受缓冲区溢出攻击。

关键观点2: 金丝雀机制的实现方式

包括编译器的支持、TLS与金丝雀的关系、金丝雀的产生以及内核对不同线程的支持。

关键观点3: 延迟绑定和PLT与GOT的解析

介绍了动态链接库中函数的绑定策略,以及PLT与GOT的相互关系。

关键观点4: 绕过金丝雀机制的思路

提供了两种绕过金丝雀机制的方法:泄露随机值和篡改GOT。


免责声明:本文内容摘要由平台算法生成,仅为信息导航参考,不代表原文立场或观点。 原文内容版权归原作者所有,如您为原作者并希望删除该摘要或链接,请通过 【版权申诉通道】联系我们处理。

原文地址: 访问原文地址
总结与预览地址:访问文章预览/总结
文章地址: 访问文章快照