吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 3824|回复: 22
收起左侧

[CTF] pwn2(入门级)

[复制链接]
风是故乡轻 发表于 2021-7-31 19:54
环境啥的就是在linux下进行操作,具体环境配置我觉得发了有点灌水(本篇也有点小水)

拿到文件后
1.checksec一下
image.png
附说明(我也不是特别深刻理解,自行体悟吧):
· RELRO:RELRO会有Partial RELRO和FULL RELRO,如果开启FULL RELRO,意味着我们无法修改got表
· Stack:如果栈中开启Canary found,那么就不能用直接用溢出的方法覆盖栈中返回地址,而且要通过改写指针与局部变量、leak canary、overwrite canary的方法来绕过
· NX:NX enabled如果这个保护开启就是意味着栈中数据没有执行权限,以前的经常用的call esp或者jmp esp的方法就不能使用,但是可以利用rop这种方法绕过
· PIE:PIE enabled如果程序开启这个地址随机化选项就意味着程序每次运行的时候地址都会变化,而如果没有开PIE的话那么No PIE (0x400000),括号内的数据就是程序的基地址
· FORTIFY:FORTIFY_SOURCE机制对格式化字符串有两个限制:(1)包含%n的格式化字符串不能位于程序内存中的可写地址。(2)当使用位置参数时,必须使用范围内的所有参数。所以如果要使用%7$x,你必须同时使用1,2,3,4,5和6。


2.列出函数们
image.png

3.查看system函数地址
image.png

4.查看汇编
4.1这个是system
image.png

4.2这个是get_shell_
image.png

5.pattern(python的包哈)生成乱序字符串
image.png

6. 进行溢出调试让他报错
image.png

7. 查看覆盖RBP的字符串
image.png

8.查看偏移:48
image.png

9.写脚本:
image.png
使用脚本定位溢出字符串为48,在栈帧中,RBP下方为返回地址所以覆盖返回地址的字符串是从48+8开始的。这里的8是因为该程序为64bit程序RBP为64位寄存器。
10结果:
image.png

这是一个附件: pwn2.zip (2.84 KB, 下载次数: 5)

文件链接
提取码:vn4i

免费评分

参与人数 2吾爱币 +8 热心值 +2 收起 理由
Hmily + 7 + 1 欢迎分析讨论交流,吾爱破解论坛有你更精彩!
zfq0421 + 1 + 1 我很赞同!

查看全部评分

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

 楼主| 风是故乡轻 发表于 2021-9-1 17:02
小木曾雪菜 发表于 2021-8-1 15:38
objdump是怎么生成intel格式汇编的?

其实我也不太会啦,大家一起学习~~
objdump可以用来查看目标文件或者可执行的目标文件
常用参数:
-f 显示文件头信息
-D 反汇编所有section (-d反汇编特定section)
-h 显示目标文件各个section的头部摘要信息
-x 显示所有可用的头信息,包括符号表、重定位入口。-x 等价于 -a -f -h -r -t 同时指定。
-i 显示对于 -b 或者 -m 选项可用的架构和目标格式列表。
-r 显示文件的重定位入口。如果和-d或者-D一起使用,重定位部分以反汇编后的格式显示出来。
-R 显示文件的动态重定位入口,仅仅对于动态目标文件有意义,比如某些共享库。
-s 将所有段的内容以十六进制的方式打印出来
-S 尽可能反汇编出源代码,尤其当编译的时候指定了-g这种调试参数时,效果比较明显。隐含了-d参数。
-t 显示文件的符号表入口。类似于nm -s提供的信息

原文链接:https://blog.csdn.net/u014608280/article/details/81948141
wangyitu 发表于 2021-9-2 08:39
风是故乡轻 发表于 2021-9-1 17:04
多敲敲,很快就能熟悉常用命令,然后会接触更多有用的知识,加油! ^-^

谢谢~就是平时接触的机会少点了~
Nxlrs 发表于 2021-8-1 11:15
萌牛工厂 发表于 2021-8-1 12:21
楼主辛苦了
evill 发表于 2021-8-1 13:01
学习ing,谢谢分享
52Check 发表于 2021-8-1 13:55
谢谢楼主分享经验,学学总是好的
头像被屏蔽
Wits 发表于 2021-8-1 13:56
提示: 作者被禁止或删除 内容自动屏蔽
小木曾雪菜 发表于 2021-8-1 15:38
objdump是怎么生成intel格式汇编的?
zedjay 发表于 2021-8-1 17:55
学习了,谢谢
bohuixu 发表于 2021-8-1 21:04
学习ing,楼主辛苦
zhengyu4767 发表于 2021-8-2 07:06
谢谢分享,正好最近在学习
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-12-25 13:30

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表