B0F1-[HackINI-2022]

A1234467 2025-01-20 09:54:09 20 0


下载附件,一个无后缀文件,推测一般是linux可执行文件,在kali尝试运行,发现运行逻辑为输入昵称回显昵称

启动场景,给了一个nc连接,连接发现运行逻辑与附件相同

把程序放进IDA分析,发现主要运行逻辑在say_my_name函数,注意到该函数用了gets函数,同时注意到程序有方法名为open_shell


考虑构造缓冲区溢出访问open_shell函数,注意到以下片段

s= byte ptr -1Ch
lea eax, [ebp+s]
push eax ; s
call _gets
leave
retn

不难发现只需要在28个字节后填写open_shell函数的入口0x080491B6即可


再次分析发现open_shell函数需要传入一个参数并校验其是否为0x539,根据函数传参的内部原理,接下来是返回的地址,再接下来是传入函数的参数,不难想到再填充一个0x539


接下来在通常放有flag的目录找到flag即可,这里直接是同一目录


分类:PWN
image
作者:A1234467

2

提交

0

收入

相关WriteUP

  • Format.INI

    1.用file查看文件类型:64位ELFnostripped2.checksec查看文件开启保护:GOT可劫持非PIE3.IDA分析文件:prinf格式化漏洞4.分析代码,程序调用了system,printf之后调用了free。查看freegot表的内容为0x401036与systemplt的地址0x401060就差最后一个字节。那么想法修改freegot的内容为system的plt。而free的...

    • PWN
    • 1年前
  • 勇闯迷宫-过三关 (陕西省大学生)

    这题如题面所说分为三个部分,难度不高,第一部分考栈溢出,第二部分有点简单的逆向,第三部分考了一点fastbinattack,作为复习基础知识刚刚好拿到程序,首先做些基本检查:PartialRELRO,有Canary和NX,没有PIE。提供了libc(2.23)。got表里函数挺多,特别是看到了malloc和free,可能要用到堆。全局变量和main基本都保留了符号表,其他函数大多没有。第一部分直接...

    • PWN
    • 1年前
  • [NUAACTF-2017]hello_pwn

    ***收费WriteUP请购买后查看,VIP用户可免费查看***

    • PWN
    • 1年前
  • No Way Out的writeup

    ***收费WriteUP请购买后查看,VIP用户可免费查看***

    • PWN
    • 1年前
  • Message Board的writeup

    ***收费WriteUP请购买后查看,VIP用户可免费查看***

    • PWN
    • 1年前
问题反馈