IDA之修复结构体

news/2025/11/22 20:06:58/文章来源:https://www.cnblogs.com/Lingwann/p/19258482

修复结构体有两种方法
一是C语言式修复(麻烦)
二是直接设置(更简单,更推荐)

首先学会设置IDB快照(其实本人很少使用)
IDB快照:.idb文件,可快速帮我们恢复某个时间点的快照,可以防止错误太多

View - Database snapshot manager


其中Take snapshot 即保存当前的结构体 等等
当要恢复此快照时,直接双击即可

C语言语法定义结构体(比较慢,不推荐)

适用于已知C语言完整结构体类型和变量

通过

view - open subviews - Structures
打开Local types窗口

再Insert快捷键 或者右键Insert

就可以输入想要设定的结构体了

举个例子

点击Ok

出现说明成功输入

但是此时IDA没有导入结构体,Ctrl + F5搜索,选择要导入的结构体,双击

点击Yes即可成功导入
但IDA并不会去自动匹配变量,后续只需自己修改变量类型即可
变量具体怎么匹配后文详细讲解,以及有什么用

如果我们不知道结构体名称之类的取什么,但发现是一个结构体(常见,通用情况)

可以打开结构体窗口

菜单点击View - structures


右键选择Add struct type或者直接快捷键Insert

可以命个名字,然后点击OK即可
具体的设置变量类型dq之类的后面再写

现在来补一下:
用的IDA9.0SP1 52破解上有版本
image
现在IDA9.0

View-> Open Subviews -> Local Types

233
将原先的Local Types和Structures合并在一起了,中间那个
可以移动(不同IDA版本不同,可能也没合在一起)

235

236

两个窗口都可以点Add Types

237

由于前后我使用的版本不一样,这里是将Struct和Enum和C syntax都在一起了,更方便
之前介绍的方法在C syntax里写即可
现在介绍的就是struct,里面的内容默认即可,点击OK
(我图中不知道为什么是name是A,一般是struct_xx)(其实没影响,反正后面都会改名hh)
image
image
比如我设置了如下的
image
在你想更改的变量,对着它的类型按Y
暂时没有很好的例子,
总之按了Y之后
原本是DWORD * a1;
改成tree *a1;
那么C伪代码中原本
*(DWORD *)a1
*((DOWRD *)a1+2)
就可以识别a1->lchid *a1->rchild

当然还有一种常见的情况,比如内存中一块数据发现它们是结构体
也可以,但是博主还不太会,待补充

参考博客
https://bbs.kanxue.com/thread-266419.htm

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

2025年专业集成房屋安装公司排名,集成活动房十大靠谱厂家推荐榜,石家庄集成房屋公司十大排行:义广达彩钢口碑推荐榜,河北集成活动房厂家十大推荐榜

2025年专业集成房屋安装公司排名,集成活动房十大靠谱厂家推荐榜,石家庄集成房屋公司十大排行:义广达彩钢口碑推荐榜,河北集成活动房厂家十大推荐榜2025年专业集成房屋安装公司排名,集成活动房十大靠谱厂家推荐榜,…

真的好怪题解:P14314 [Aboi Round 2] Oneshot

来一篇真的好怪的题解。 正文 首先有一个很低级的做法,就是每次询问直接拉出来 \(\frac np\) 个数,然后排好序,用另外 \(\frac nq\) 个数在那上面二分就结束了。 这样做的复杂度是 \(\mathcal{O}(nm\log n)\)。 然后…

ElasticSearch索引库操作 - 努力-

ElasticSearch索引库操作一、ElasticSearch基础概念 1.1 文档和字段:ElasticSearch是面向文档(Document)存储的,可以是数据库中的一条商品数据,一个订单信息。文档数据会被序列化为json格式后存储在ElasticSearch…

2025年集成房屋设计公司十大排名,岗亭加工厂家十大排行榜,专业岗亭定制工厂怎么选?彩钢移动厕所厂家推荐。

2025年集成房屋设计公司十大排名,岗亭加工厂家十大排行榜,专业岗亭定制工厂怎么选?彩钢移动厕所厂家推荐。2025年集成房屋设计公司十大排名,岗亭加工厂家十大排行榜,专业岗亭定制工厂怎么选?彩钢移动厕所厂家推荐…

洛谷 P5658 [CSP-S 2019] 括号树 题解

题目大意 给定一棵树,每个节点有一个括号。对于每个节点 \(i\),定义 \(s_i\) 为从根节点到 \(i\) 的路径上所有括号按顺序组成的字符串。求每个 \(s_i\) 中互不相同的合法括号子串的个数 \(k_i\)。 思路 首先,\(k_i…

礼盒拖车公司推荐,礼盒拖车定制公司排行榜,礼盒拖车厂家口碑推荐,礼盒拖车生产厂家-航利通达

礼盒拖车公司推荐,礼盒拖车定制公司排行榜,礼盒拖车厂家口碑推荐,礼盒拖车生产厂家-航利通达礼盒拖车公司推荐,礼盒拖车定制公司排行榜,礼盒拖车厂家口碑推荐,礼盒拖车生产厂家-航利通达在当下这个视觉至上的时代…

360笔试

看到 PC 客户端对 ACMer 有加分项,就投了下这个。 \(2\) 个小时,前面有 \(40\) 道选择题,涉及内容包含数学、数据结构、操作系统、网络安全,还有一些关于 C++ 的类什么的和一些简单算法的原理什么的,不过前面那些…

图像的颜色模式

图像的颜色模式0.1 灰度模式 也就是灰度图(黑白照片),每个像素只有明暗变化,用0~255共256个亮度级来表示,用8个bit来表示,所以每个像素信息用8bit储存. 0.2 位图模式(二值图像) 即只有纯黑和纯白两种亮度,没有渐变…

.NET+AI | MEAI | Function Caling 实操(4)

.NET+AI | MEAI | Function Caling 实操 TL;DR✅ 注册你的方法为工具(Tool) ✅ 启用中间件 UseFunctionInvocation() ✅ 设置 ChatOptions.ToolMode = Auto ✅ 发起对话,MEAI 自动完成:请求 → 调用 → 回填 → 作…

高频变压器公司口碑榜单,电感公司技术排名,电感厂家交付效率排名,磁性元器件公司客户推荐,电感器公司产能排名,线圈公司行业排名-汉翔电子

高频变压器公司口碑榜单,电感公司技术排名,电感厂家交付效率排名,磁性元器件公司客户推荐,电感器公司产能排名,线圈公司行业排名-汉翔电子高频变压器公司口碑榜单,电感公司技术排名,电感厂家交付效率排名,磁性…

noip13

11.2211.22 颓死了,不想改。 t1 场切。 观察大样例大胆猜测答案很小(实际上答案不超过6,伏笔)。 然后手模inf组数据即可发现结论。 将每个数在这几步中每次选几个看成 \(x\) 进制数 (\(x=a_{i+1}/a_i\)) ,而 \(x^…

高频变压器厂家,电感生产厂家,磁性元器件源头厂家推荐,滤波器生产厂家有哪些,高频变压器公司排行榜,高频变压器公司交付效率排名,高频变压器公司小型化解决方案

高频变压器厂家,电感生产厂家,磁性元器件源头厂家推荐,滤波器生产厂家有哪些,高频变压器公司排行榜,高频变压器公司交付效率排名,高频变压器公司小型化解决方案高频变压器厂家,电感生产厂家,磁性元器件源头厂家…

Java中HashMap的核心原理与使用注意事项

大家好,我是一名正在实习的Java开发。最近在参与项目迭代时,遇到了一个很棘手的问题:线上环境有个接口偶尔会出现响应超时,排查了半天才发现,原来是并发场景下误用了HashMap导致的哈希冲突恶化,查询性能直接从O(…

MinIo介绍 - 努力-

MinIo介绍MinIo介绍,文件存储一、 MinIO介绍MinIO作为文件存储的软件,这是一个基于Go编写的开源对象存储套件,虽然轻量,却拥有着不错的性能。  MinIO非常适合于存储大容量非结构化的数据,例如图片、视频、日志文…

BLOG1

一、前言 知识点覆盖:三次作业逐步引入了类的封装与继承、集合框架(ArrayList、HashSet、Deque等)的应用、单一职责原则(SRP)的实践、请求队列的管理、调度算法的优化,以及输入输出的高效处理。此外,还涉及边界…

host with linux

在 Linux 系统中,"host" 通常指的是 主机(主机名),即一个计算机的名称。在 Linux 系统中,主机名可以通过 hostname 命令查看或修改。一、查看当前主机名hostname或者echo $HOSTNAME这两个命令的功能是一…

深入解析:算法基础篇(8)贪心算法

深入解析:算法基础篇(8)贪心算法2025-11-22 19:33 tlnshuju 阅读(0) 评论(0) 收藏 举报pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !imp…

详细介绍:【STM32】工程文件管理

pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …

南昌航空大学-ptajava

前言 本次对PTA作业进行总结,共三道Java大题,为电梯调度程序的迭代开发。涉及到基础Java语言的运用,look电梯调度算法的实现,队列结构的使用,枚举类型运用,类设计,迭代开发能力等知识点。 第一次作业:单部电梯…

sguardsvc64.exe(Anti-Cheat Expert)驱动不兼容导致无法开启“内核模式硬件强制堆栈保护”或“内存完整性”

windows安全感中心,有时候会提示无法开启“内核模式硬件强制堆栈保护”或“内存完整性”。打开详情会显示sguardsvc64.exe的原因,这个其实是腾讯反作弊系统相关的文件。大概率你是一个腾讯游戏玩家。刚开始网上搜索如…