今天看啥  ›  专栏  ›  看雪学苑

Fuzz 在 CTF 中的基础利用

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

主要观点总结

本文讨论了使用Fuzzing技术解决逆向分析和gdb调试中遇到的困难,以及通过Python脚本模拟输入来诱发程序中的bug。文中还介绍了R树的数据结构,并详细分析了操作函数。通过fuzzing,可以捕捉漏洞触发并记录输入数据,最终找到漏洞利用的具体手段。此外,还展示了如何利用Fuzzer在CTF中发现和利用漏洞,包括如何劫持teache_struct,泄露libc地址,劫持__free_hook,并执行system('/bin/sh')。文章还提到了另一个题目rusty-pointers,展示了如何使用shell脚本传递序列化数据,检测异常,并成功利用漏洞执行system('/bin/sh')。

关键观点总结

关键观点1: Fuzzing技术解决逆向分析和gdb调试中的困难

Fuzzing是一种自动化测试技术,通过向程序输入奇怪、乱七八糟的输入来诱发bug,用于发现程序中的漏洞和异常行为。

关键观点2: R树的数据结构和操作函数分析

R树是一种用来存储多维空间数据的数据结构,主要用于高效地执行范围查询、邻近查询、插入、删除、更新空间对象。操作函数包括add、delet、edit、show和query。

关键观点3: 使用Python脚本模拟输入

通过Python脚本模拟输入,包括随机化输入,记录有效操作,以及处理R树的大小限制,捕捉异常。

关键观点4: 利用Fuzzer在CTF中发现和利用漏洞

Fuzzer在CTF中一般由python脚本或文本文件+shell脚本组成,核心业务为捕捉漏洞触发与记录输入数据。通过fuzzing,可以找到漏洞并利用,最后getshell。

关键观点5: 利用Fuzzer劫持teache_struct,泄露libc地址,劫持__free_hook

通过修改teache_struct,泄露libc地址,并劫持__free_hook,最后执行system('/bin/sh')。


免责声明

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

原文地址:访问原文地址
总结与预览地址:访问总结与预览
推荐产品:   推荐产品
文章地址: 访问文章快照