码迷,mamicode.com
首页 > 其他好文 > 详细

8月14日pwn学习

时间:2020-08-17 17:16:27      阅读:61      评论:0      收藏:0      [点我收藏+]

标签:int   题目   com   必须   是什么   src   loading   漏洞   输出   

题目:CGfbs

题目描述:菜鸡面对着printf发愁,他不知道printf除了输出还有什么作用。

题目分析:照着题目描述来看,应该是格式化字符串的漏洞。老规矩,照着步骤走:

1.checksec和file

技术图片

 

 2.ida

由上面的我们用32位的idapro打开。

技术图片

 

 可以看到结构也十分简单,pwnme等于8的时候,就可以得到flag

那么如何得到宁pwnme为8呢,这里我们可以看到printf(&s)这是一个很明显的漏洞了。在上面那道题,以及上一篇博客中很清楚地提到过。

3.写exp

这里也一样要搞清楚在数据栈中偏移了多少。技术图片

 

 我们看一下输入的AAAA在数据栈中是什么位置

技术图片

 

 发现在第十位

那么下面我们就可以构建我们的exp了

技术图片

 

 但是这里我一直有个疑问,这个任意写到底是怎样在操作的,对我来说,我还没搞清楚。

4.得到结果

技术图片

 题目:实时数据监测

题目描述:

小A在对某家医药工厂进行扫描的时候,发现了一个大型实时数据库系统。小A意识到实时数据库系统会采集并存储与工业流程相关的上千节点的数据,只要登录进去,就能拿到有价值的数据。小A在尝试登陆实时数据库系统的过程中,一直找不到修改登录系统key的方法,虽然她现在收集到了能够登陆进系统的key的值,但是只能想别的办法来登陆。

解题思路:

本来在上面的题目正愁着还没理解格式化输出漏洞,这里就来了一个题帮助我好好理解。

1.checksec和file查看文件

技术图片

 32位程序,但是这次出现了一种新的保护方式,RWX。

2.ida查看程序

技术图片

 

 程序的内容和结构一目了然,改变key的值,即可得到flag,改变值用格式化字符串任意写的漏洞。

3.写exp

在写exp之前必须先知道在栈中哪个参数。这里我们用技术图片

 

 技术图片

 

 然后我们发现在第12个参数的位置

技术图片

 

 这个题帮我多次试验,终于知道了在格式化字符串中填入什么才能得到规定的写入值了,那就是%(对应值-4)c%N$n。

exp如下

技术图片

 

 4.得到结果

技术图片

 

8月14日pwn学习

标签:int   题目   com   必须   是什么   src   loading   漏洞   输出   

原文地址:https://www.cnblogs.com/Samforrest/p/13501576.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!