当前位置: 首页 > news >正文

dump 定位分析

在缺少pdb的时候如何分析dump?

windbg+ida

Windbg定位崩溃位置

  1. 通过windbg打开dump,并且分析dump !analyze -v
    在这里插入图片描述

分析:

  • 分析dump: !analyze -v
  • 错误原因:读取空指针
  • 错误线程:00001e04,可通过命令~查看线程列表,~N切换线程,N表示线程序号
  • 查看崩溃堆栈:.ecxr;kbn,截图上的崩溃调用堆栈
  • 查看当前帧信息:.frame N,N为第几帧的序号,默认为0

结论:

  • 由于缺少pdb无法定位具体代码,但是可以知道崩溃位置位于:ScreenLock_mf+0x902e,崩溃第一帧。

IDA定位大概原因(新手)

  1. 通过IDA打开ScreenLock_mf.exe(不管是exe还是dll,都选择打开模式pe.dll)
    在这里插入图片描述
  2. 打开之后,切换到IDA View,并且切换至最顶部,查看镜像基址Imagebase : 400000
    在这里插入图片描述
  3. 通过windbg得到崩溃地址ScreenLock_mf+0x902e,即:Imagebase + 0x902e=40902E
  4. G键跳转到崩溃地址(输入的地址不含空格
    在这里插入图片描述
  5. 在定位地址按tab键,即可切换到伪代码view,确定崩溃函数。
    在这里插入图片描述
  6. 查看该函数的相关引用,按tab键切换到IDA View。往上翻直至分割线。
    在这里插入图片描述
  7. 双击引用的函数:OnUdpRspMsg,即可切换到调用崩溃函数isPackidValid的地方,并且查看伪代码,确定上下文的伪代码。
    在这里插入图片描述
  8. 打开源码,通过伪代码定位源码,检查崩溃原因。
http://www.lryc.cn/news/58763.html

相关文章:

  • (十二)排序算法-插入排序
  • elasticsearch 认知
  • 《人体地图》笔记
  • java基础集合面试题
  • Vue学习-Vue入门
  • 【项目】bxg基于SaaS的餐掌柜项目实战(2023)
  • 灌区流量监测设备-中小灌区节水改造
  • SpringBoot2核心功能 --- 指标监控
  • python实战应用讲解-【numpy数组篇】常用函数(三)(附python示例代码)
  • DIN论文翻译
  • python列表,元组和字典
  • 300元左右的蓝牙耳机哪个好?300左右音质最好的蓝牙耳机
  • 【消息队列】聊一下生产者消息发送流程
  • 特斯拉和OpenAI的加持,马斯克简直人生赢家
  • 优维低代码:第三方接口接入
  • SQL 177. 第N高的薪水
  • 14天手撸交互式问答数字人直播教程-课程计划
  • spring boot3.0新特性Http客户端远程调用
  • 查询联系:多表查询 - 1
  • 「Bug」OpenCV读取图像为 None 分析
  • EVO——视觉里程计/SLAM轨迹评估工具
  • TCP为什么要三次握手,而不是两次或四次?
  • git 命令:工作日常使用
  • Http和Https
  • 【计算机网络复习】第三章 传输层 2
  • 你真的会自动化测试?自动化测试技术选型抉择
  • 【id:31】【20分】A. Point(类与构造)
  • ASM字节码处理工具原理及实践(二)
  • Golang每日一练(leetDay0030)
  • QT5.15.2 在线安装下载速度慢的解决办法