BOF

come from https://www.jarvisoj.com/challenges


nc pwn2.jarvisoj.com 9881(远程连接)


在ubuntu16.04上进行连接,看下图

连接之后屏幕出现一行字符在pwn的网址上看到:

使用file指令

hacker@ubuntu:~$ file level0
level0: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/l, for GNU/Linux 2.6.32, BuildID[sha1]=8dc0b3ec5a7b489e61a71bc1afa7974135b0d3d4, not strippe

可知为64位程序,丢到ida64中,main函数伪代码如下:

分析可知:write使之显示Hello World,进入易受攻击的函数vulnerable_function();buf大小0x80,但可读入0x200,所以可以实现数据的覆盖

看到函数列表:callsystem,进入发现有紧接着想办法查到callsystem的函数地址,两种方法均可

	gdb-peda$ p callsystem
$1 = {<text variable, no debug info>} 0x400596 <callsystem>

均可知其地址为0x400596



利用vim写exp.py

注意第一行是必须带上的,在前面加上

#!/usr/bin/python

申明l这是个python脚本,要用python解释器来运行:由于程序先显示一行,在进入vulnerable_function(),所以才有了recvuntil相当于跳过了交互的第一步。

上图为逻辑图

最新文章

  1. PHP环境下Memcache的使用方法
  2. DOM创建和删除节点、HTML DOM常用对象[转]
  3. Atitit .html5刮刮卡的gui实现总结
  4. Zookeeper的功能以及工作原理
  5. 3-1 rpm包命名规则
  6. PHP加密解密函数
  7. ASP.NET 不同页面之间传值
  8. K - Digital Roots(第二季水)
  9. 图文:TF卡和SD卡的区别及什么是TF卡?什么是SD卡
  10. 【转】android windowSoftInputMode
  11. 【Android Developers Training】 48. 轻松拍摄照片
  12. FFmpeg源代码简单分析:内存的分配和释放(av_malloc()、av_free()等)
  13. 异常:Error resolving template &quot;xxx&quot;, template might not exist or might not be accessible...解决办法
  14. Python 列表&amp;元组&amp;字典&amp;集合
  15. 【NLP】大白话讲解word2vec到底在做些什么
  16. hdu1272 小希的迷宫(并查集)
  17. [Big Data - ELK] ELK(ElasticSearch, Logstash, Kibana)搭建实时日志分析平台
  18. 求1~n整数中1出现的次数(《剑指offer》面试题43)
  19. 【Python编程:从入门到实践】chapter3 列表简介
  20. http://www.cnblogs.com/xalion/p/5111279.html

热门文章

  1. KFC 小猪短租
  2. PHP基础学习笔记2
  3. JS中constructor属性
  4. Unity UGUI事件接口概述
  5. 如何用 Python 实现超级玛丽的人物行走和碰撞检测?
  6. Linux - 常用Shell软件
  7. 事件和方法的区别,以input框的blur事件为例
  8. opencv:opencv概述
  9. windows 10安装linux(ubuntu)子系统
  10. 介绍Mobility Group