jarvisoj_tell_me_something】的更多相关文章

下载文件,首先checksec检查一下保护,发现只开启了NX 堆栈不可执行. 接下来我们拖进IDA看一下程序的主要流程. 很简洁的程序,可以看到read函数存在栈溢出. 再来看看有什么后门函数可以利用吗? 可以看到这个函数的意思就是读取本地的flag,然后进行输出. 只要我们进行栈溢出,将返回地址覆盖成这个函数的地址就可以拿到flag了. 1 from pwn import * 2 import time 3 p = process('./jarvisoj_tell_me_something')…
jarvisoj_tell_me_something 附件 步骤: 例行检查,64位程序,开启了NX保护 运行一下程序,看看程序的大概流程 64位ida载入,shift+f12检索程序里的字符串 看到了flag.txt关键子,双击跟进,找到了程序里的后门,flag_addr=0x400620 从main函数开始看程序 输入点的v4明显的溢出漏洞,利用它覆盖返回地址为flag_addr的地址读出flag 这边有一个注意点 看汇编发现这个程序的结尾处跟平常函数的结尾不一样没有leave 这道题起步刚…
温故而知新,可以为师矣.所以花了几天时间重新做了下 buuctf 的 pwn 题,先发下第一页共 32 题的题解.还有如果题解都很详细那么本文就太长了,写起来也浪费时间,所以比较简单的题就直接丢 exp 了,不懂可以去看其他人的题解,难的题我觉得我写的题解应该是挺详细的.截至到发文日期,只要是涉及 libc 的题目的 exp 都是能打通远程的.如有错误评论欢迎指正. test_your_nc 直接 nc 连接即可得到 shell rip 简单的 ret2text ,不过靶机是 ubuntu18…