ASIS-CTF-Finals-2017 pwn Mary_Morton Writeup

该博客详细介绍了ASIS-CTF-Finals-2017中的一道Pwn题Mary_Morton的解题思路。作者首先分析了文件的安全特性,发现存在两个可利用的漏洞,但由于开启的canary保护增加了破解的难度。通过IDA查看汇编代码,作者发现可以通过溢出函数获取canary值,并用此值绕过另一漏洞的canary检查。经过计算确定了canary到buf缓冲区的偏移量,最终编写exploit成功获取flag。
摘要由CSDN通过智能技术生成

题目描述:

ASIS-CTF-Finals-2017  非常简单的热身pwn

分析思路:

1、首先查看文件的安全信息:

tucker@ubuntu:~/xman/pwn$ file Mary_Morton
Mary_Morton: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/l, for GNU/Linux 2.6.32, BuildID[sha1]=b7971b84c2309bdb896e6e39073303fc13668a38, stripped
tucker@ubuntu:~/xman/pwn$ checksec Mary_Morton
[*] '/home/tucker/xman/pwn/Mary_Morton'
    Arch:     amd64-64-little
    RELRO:    Partial RELRO
    Stack:    Canary found
    NX:       NX enabled
    PIE:      No PIE (0x400000)

我们看到ELF文件开启了canary保护。

2.使用IDA查看:

void __fastcall __noreturn main(__int64 a1, char **a2, char **a3)
{
  int v3; // [rsp+24h] [rbp-Ch]
  unsigned __int64 v4; // [rsp+28h] [rbp-8h]

  v4 = __readfsqword(0x28u);
  sub_4009FF();
  p
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值