随笔分类 -  windbg

摘要:一:背景 1. 讲故事 前段时间在用 腾讯会议 直播的时候,居然意外崩溃了,还好不是在训练营上课,不然又得重录了,崩完之后发现 腾讯会议 的 bugreport 组件会自动生成一个 minidump,截图如下: 作为一个.NET高级调试的技术博主,非 .NET 的程序也得要研究研究哈😄😄😄,有 阅读全文
posted @ 2023-04-20 14:10 一线码农 阅读(4611) 评论(3) 推荐(28) 编辑
摘要:一:背景 1. 讲故事 前段时间协助训练营里的一位朋友分析了一个程序卡死的问题,回过头来看这个案例比较经典,这篇稍微整理一下供后来者少踩坑吧。 二:WinDbg 分析 1. 为什么会卡死 因为是窗体程序,理所当然就是看主线程此时正在做什么? 可以用 ~0s ; k 看一下便知。 0:000> k # 阅读全文
posted @ 2023-04-18 08:16 一线码农 阅读(3646) 评论(13) 推荐(20) 编辑
摘要:一:背景 1. 讲故事 上周看了一位训练营朋友的dump,据朋友说他的程序卡死了,看完之后发现是一例经典的死锁问题,蛮有意思,这个案例算是学习 .NET高级调试 入门级的案例,这里和大家分享一下。 二:WinDbg 分析 1. 程序为什么会卡死 因为是窗体程序,所以看主线程的线程栈就好了,如果卡在 阅读全文
posted @ 2023-04-06 11:03 一线码农 阅读(1104) 评论(2) 推荐(6) 编辑
摘要:一:背景 1. 讲故事 昨天有位朋友找到我,说他的程序内存存在泄露导致系统特别卡,大地址也开了,让我帮忙看一下怎么回事?今天上午看了下dump,感觉挺有意思,在我的分析之旅中此类问题也蛮少见,算是完善一下体系吧。 二:WinDbg 分析 1. 到底是哪里的泄露 在.NET高级调试训练营中,我多次告诉 阅读全文
posted @ 2023-04-03 08:42 一线码农 阅读(2202) 评论(4) 推荐(9) 编辑
摘要:一:背景 1. 讲故事 前段时间有位朋友微信找到我,说他的程序使用 hsl 库之后,采集 plc 时内存溢出,让我帮忙看一下怎么回事,哈哈,貌似是分析之旅中的第二次和 hsl 打交道,既然找到我,那就上 windbg 说话吧。 二:WinDbg 分析 1. 为什么会内存溢出 简单观察程序的提交内存之 阅读全文
posted @ 2023-03-30 11:52 一线码农 阅读(2661) 评论(15) 推荐(15) 编辑
摘要:一:背景 1. 讲故事 前段时间收到了一个朋友的求助,说他的ERP网站系统会出现偶发性崩溃,找了好久也没找到是什么原因,让我帮忙看下,其实崩溃好说,用 procdump 自动抓一个就好,拿到 dump 之后,接下来就是一顿分析了。 二:WinDbg 分析 1. 是什么导致的崩溃 windbg 有一个 阅读全文
posted @ 2023-03-27 09:01 一线码农 阅读(2042) 评论(4) 推荐(17) 编辑
摘要:一:背景 1. 讲故事 最近收到了两起程序崩溃的dump,查了下都是经典的 double free 造成的,蛮有意思,这里就抽一篇出来分享一下经验供后面的学习者避坑吧。 二:WinDbg 分析 1. 崩溃点在哪里 windbg 带了一个自动化分析命令 !analyze -v 可以帮助我们找到崩溃时的 阅读全文
posted @ 2023-03-23 17:43 一线码农 阅读(1026) 评论(1) 推荐(5) 编辑
摘要:一:背景 1. 讲故事 前段时间有位朋友在微信上找到我,说他的程序会出现一些偶发卡死的情况,让我帮忙看下是怎么回事,刚好朋友也抓到了dump,就让朋友把 dump 丢给我,接下来用 windbg 探究下到底咋回事。 二:WinDbg 分析 1. 程序真的卡死吗 因为是一个 winform 程序,验证 阅读全文
posted @ 2023-03-14 10:49 一线码农 阅读(3175) 评论(3) 推荐(15) 编辑
摘要:一:背景 1. 讲故事 前段时间微信上有一位老朋友找到我,说他的程序跑着跑着内存会突然爆高,有时候会下去,有什么会下不去,怀疑是不是某些情况下存在内存泄露,让我帮忙分析一下,其实内存泄露方面的问题还是比较好解决的,看过这个dump之后觉得还是有一定的分享价值,拿出来和大家分享一下吧。 二:WinDb 阅读全文
posted @ 2023-02-27 13:38 一线码农 阅读(4558) 评论(8) 推荐(48) 编辑
摘要:一:背景 1. 讲故事 这段时间经常有朋友微信上问我这个真实案例分析连载怎么不往下续了,关注我的朋友应该知道,我近二个月在研究 SQLSERVER,也写了十多篇文章,为什么要研究这东西呢? 是因为在 dump 中发现有不少的问题是 SQLSERVER 端产生的,比如:遗留事务,索引缺失 ,这让我产生 阅读全文
posted @ 2023-02-13 12:27 一线码农 阅读(4062) 评论(4) 推荐(10) 编辑
摘要:一:背景 1. 讲故事 年前遇到了好几例托管堆被损坏的案例,有些运气好一些,从被破坏的托管堆内存现场能观测出大概是什么问题,但更多的情况下是无法做出准确判断的,原因就在于生成的dump是第二现场,借用之前文章的一张图,大家可以理解一下。 为了帮助更多受此问题困扰的朋友,这篇来整理一下如何 快狠准 的 阅读全文
posted @ 2023-01-29 10:51 一线码农 阅读(2081) 评论(6) 推荐(13) 编辑
摘要:一:背景 1. 讲故事 相信有很多朋友在学习 SQLSERVER 的时候都听说过这句话,但大多都是记忆为主,最近在研究 SQLSERVER,所以我们从 底层存储 的角度来深入理解下。 二:理解数据页 1. 数据页的组织 在前面的文章中我也说过,一个 数据页 是 8k 大小,那这 8k 是如何组织的呢 阅读全文
posted @ 2022-12-31 20:38 一线码农 阅读(379) 评论(1) 推荐(2) 编辑
摘要:一:背景 1.讲故事 今天是🐏的第四天,头终于不巨疼了,写文章已经没什么问题,赶紧爬起来写。 这个月初有位朋友找到我,说他的程序出现了CPU爆高,让我帮忙看下怎么回事,简单分析了下有两点比较有意思。 这是一个安全生产的信息管理平台,第一次听说,我的格局小了。 这是一个经典的 CPU 爆高问题,过往 阅读全文
posted @ 2022-12-19 18:22 一线码农 阅读(2630) 评论(4) 推荐(9) 编辑
摘要:一:背景 1.讲故事 前几天有位朋友找到我,说他的程序出现了偶发性崩溃,已经抓到了dump文件,Windows事件日志显示的崩溃点在 clr.dll 中,让我帮忙看下是怎么回事,那到底怎么回事呢? 上 WinDbg 说话。 二:WinDbg 分析 1. 崩溃点在哪里 如果是托管代码引发的崩溃,在线程 阅读全文
posted @ 2022-12-16 10:57 一线码农 阅读(2598) 评论(3) 推荐(19) 编辑
摘要:一:背景 1. 简介 .NET 高级调试要想玩的好,看懂汇编是基本功,但看懂汇编和能写点汇编又完全是两回事,所以有时候看的多,总手痒痒想写一点,在 Windows 平台上搭建汇编环境不是那么容易,大多还是用微软的 MASM + DosBox 搭一个 8086 的环境,这玩意距今快 50 年了。 在以 阅读全文
posted @ 2022-12-08 11:31 一线码农 阅读(3796) 评论(5) 推荐(21) 编辑
摘要:一:背景 1.讲故事 上个月 .NET调试训练营 里的一位老朋友给我发了一个 8G 的dump文件,说他的程序内存泄露了,一时也没找出来是哪里的问题,让我帮忙看下到底是怎么回事,毕竟有了一些调试功底也没分析出来,说明还是有一点复杂的,现实世界中的dump远比课上说的复杂的多。 还是那句话,找我分析是 阅读全文
posted @ 2022-12-06 09:31 一线码农 阅读(1454) 评论(7) 推荐(6) 编辑
摘要:一:背景 1.讲故事 这周有个朋友找到我,说他的程序出现了内存缓慢增长,没有回头的趋势,让我帮忙看下到底怎么回事,据朋友说这个问题已经困扰他快一周了,还是没能找到最终的问题,看样子这个问题比较刁钻,不管怎么说,先祭出 WinDbg。 二:WinDbg 分析 1. 托管还是非托管泄露 一直关注这个系列 阅读全文
posted @ 2022-12-02 17:19 一线码农 阅读(3066) 评论(8) 推荐(17) 编辑
摘要:一:背景 1.讲故事 前段时间分析了一个dump,一顿操作之后,我希望用外力来阻止程序内部对某一个com组件的调用,对,就是想借助外力实现,如果用 windbg 的话,可以说非常轻松,但现实情况比较复杂,客户机没有windbg,也不想加入任何的手工配置,希望全自动化来处理。 真的很无理哈。。。不过这 阅读全文
posted @ 2022-11-25 08:26 一线码农 阅读(2466) 评论(1) 推荐(13) 编辑
摘要:一:背景 1.讲故事 在B站,公众号上发了一篇 AOT 的文章后,没想到反响还是挺大的,都称赞这个东西能抗反编译,可以让破解难度极大提高,可能有很多朋友对逆向不了解,以为用 ILSpy,Reflector,DnSpy 这些工具打不开就觉得很安全,其实不然,在 OllyDbg,IDA,WinDBG 这 阅读全文
posted @ 2022-11-23 09:16 一线码农 阅读(6423) 评论(20) 推荐(15) 编辑
摘要:一:背景 1.讲故事 前几天群里很热闹,看了下在争论两个问题: 电脑里要不要装杀毒软件 ? 应该装什么杀毒软件 ? 不管杀毒软件流氓不流氓,在如今病毒肆虐的当下互联网,装一个还是能帮我们拦截很多意想不到的东西,为了眼见为实,这一篇我们就聊一个窃听 键盘事件 的恶意代码。 2. 思路 实现思路非常简单 阅读全文
posted @ 2022-11-22 08:30 一线码农 阅读(513) 评论(0) 推荐(6) 编辑