好好说话之hijack retaddr
格式化字符串做到这里,博主有一些感悟。相比于栈溢出来讲,格式化字符串漏洞对于泄露或者覆盖闲的更容易点,主要注意的就是第几个参数,使用%p、%s、%n这几种格式化字符串。也可能是我做题比较少的原因,只遇到了这几个。最近一直做格式化字符串,所以做得比较顺手,希望看这篇文章的你也能有所收获
感谢在学习中帮助到我的yichen,附上学习链接:
https://www.yuque.com/hxfqg9/bin/aedgn4#NLiJd
编写不易,如果能够帮助到你,希望能够点赞收藏加关注哦Thanks♪(・ω・)ノ
hijack retaddr
看名字就能知道这一次我们劫持的是ret返回地址,我们通过覆盖返回地址,printf函数结束后让原有的执行流程发生改变。做了这么多题,看到这你的脑海中第一反应就应该是如果利用格式化字符串漏洞进行覆盖,那么就会用到%k$n
那么什么时候使用这种方法呢?首先我们回顾一下上一篇博客好好说话之hijack GOT的内容,使用hikack GOT我们可以泄露出函数的真实地址并将原有函数替换成system函数。那么hijack retaddr其中之一的限制就是RELRO保护开启,RELRO保护开启之后我们就没有办法修改程序的 got 表了。第二个条件呢,就是原程序中存在可以利用的后门,也就是system(/bin/sh)。这样一来我们将原有的ret位覆盖成system(/bin/sh)的地址,那么返回后就会直接拿shell了!!!理论部分很简单,操作的过程也和前面的内容比较相似,接下来看例题吧
例题
例题选自三个白帽 - pwnme_k0
首先查看一下保护
可以看到64位程序开启了NX保护和RELRO保护,这意味着无法利用shellcode,也无法对got表进行修改
看一下程序运行
先运行一下程序看一下执行流程:
进入程序之后会有一个登录,我这里输入的是自己的名字”hollk“,然后需要输入密码”hollk_pass“。接下来会有三个选项,选择”1“会打印账户名和密码,输入”2“会修改原有的账户名和密码,输入”3“就直接退出了(换做是web的话,没有原密码可能会出现CSRF漏洞
好好说话之hijack retaddr相关推荐
- 如何看当前windows是utf8还是gbk_职场中的OKR如何“好好说话”
在工作中,经常会遇到各种各样的问题需要沟通,不管是团队内部的,还是跨部分,或者是对上级汇报还是管理下属.我们发现,有些能力很优秀的人,他们讲的内容,别人很快能理解.但是有的人,说了半天,大家也不知道他 ...
- ⊱人永远需要两种能力:好好说话和情绪稳定
昨晚已经躺下,收到朋友的一条微信. 是一张截图,题目是:武昌火车站附近爆发社会恶劣事件--面馆老板因与食客发生口角冲突被砍头断臂,事后扔进垃圾桶. 现场十分血腥,被围观群众拍下迅速在微博等网络媒体上传 ...
- 读书笔记之《好好说话》
作者 主创成员:马东.马薇薇.黄执中.周玄毅.邱晨.胡渐彪.刘京京. 感想 这本书的主创者是<奇葩说>的大牛们,这也是将它纳入书单的原因. 不管在生活中还是在工作中"好好说话& ...
- 好好说话之Tcache Attack(1):tcache基础与tcache poisoning
进入到了Tcache的部分,我还是觉得有必要多写一写基础的东西.以往的各种攻击手法都是假定没有tcache的,从练习二进制漏洞挖掘的角度来看其实我们一直模拟的都是很老的环境,那么这样一来其实和真正的生 ...
- 好好说话之Fastbin Attack(1):Fastbin Double Free
好像拖更了好久...实在是抱歉....主要是fastbin attack包含了四个部分,后面的例题不知道都对应着哪个方法,所以做完了例题才回来写博客.fastbin attack应该也会分四篇文章分开 ...
- 沟通技巧-《好好说话》书中的精髓:掌握沟通、说服、谈判、演讲、辩论的五维话术,让你在任何场景下,都能做到处变不惊,学会说话这个技术活。
<好好说话>书中的精髓:掌握沟通.说服.谈判.演讲.辩论的五维话术,让你在任何场景下,都能做到处变不惊,学会说话这个技术活. 相信在生活中,每个人都可能因为不会说话遇到一些困难: 工作辛苦 ...
- 好好说话之Use After Free
到了Use After Free啦,总体来说这种手法并不复杂,特征也很明显,就是在静态分析阶段观察释放chunk之后指针是否置空.本以为参加hw会往后拖更,没想到这么快就写完了.如果前面一直跟着学的话 ...
- 好好说话之unlink
堆溢出的第三部分unlink,这可能是有史以来我做的讲解图最多的一篇文章了累死 .可能做pwn的人都应该听过unlink,见面都要说声久仰久仰.学unlink的时候走了一些弯路,也是遇到了很多困扰的问 ...
- 好好说话之IO_FILE利用(1):利用_IO_2_1_stdout泄露libc
前言 本来是在做tcache attack的例题的,但是wiki上的challenge2考察的重点不仅仅是在tcache.题目程序中没有输出的功能,所以无法像往常一样去泄露libc,这个时候就需要进行 ...
- 也谈说话这件事--《好好说话》读后感
沟通技能已经成为一种重要的生存技能,随着人工智能的兴起,很多专业领域的工作将会慢慢被计算机取代,而与人的沟通和交流相对于专业知识,则相对很难被取代,因为交流和沟通中需要体现人的情绪和感情,计算机在这块 ...
最新文章
- Java 9 揭秘(16. 虚拟机栈遍历)
- 生产企业开具加工费发票的问题
- 暴力求解法 之 简单枚举
- ubuntu samba服务器的安装文件,在Ubuntu16.04中搭建samba服务器并用win10连接实现共享文件...
- OpenCV自带dnn的Example研究(3)— object_detection
- Java 7:满足Fork / Join框架
- python turtle画五边形_python画一朵玫瑰给你
- it : Tmaster (hook declined) error: failed to push some refs to https://xxx/biluo/xxx.git
- 华为机试HJ6:质数因子
- layui列表筛选列_layui框架的table字段筛选功能介绍
- Node.js视频教程
- 学会这几个简单的bat代码,轻松在朋友面前装一波13
- 小学计算机无生试讲教案,小学英语无生试讲
- 中文转自定义英文存储
- Android面试常见问题汇总
- Promise学习:基础入门
- 聚类kmeans和DBSCAN算法的简单实现
- 加州大学欧文分校 计算机专业,加州大学欧文分校计算机工程专业怎么样?
- android devik进程,suckit后门程序的分析 (二)
- 强化存储和网络 VMware SDDC不止是计算
热门文章
- 河北农业大学能不能学计算机,河北农业大学(专业学位)计算机技术考研难吗
- 让cocos2d-x 3.0读取cocostudio中的csb文件
- 创建博客园 博客阅读器(使用 JavaScript 和 HTML 的 Metro 风格应用)源码
- 【C++】「一本通 1.1 练习 4」家庭作业
- 史上最拉跨的导线平差程序( by C#)
- python中.item()的讲解
- 王者荣耀苹果微信哪个服务器最强,王者荣耀:国服最高战力!这三个英雄最高战力比拼ios微信区完胜...
- c++勾股定理解直三角形边长
- ubuntu禁用guest账户
- 控制面板Plesk, cPanel, DirectAdmin, whmcs,WDCP, AMH比较