- 博客(4)
- 资源 (3)
- 收藏
- 关注
原创 BSOD Dump Analysis FAQ(OR WinDbg Usage Memo)
自从搞驱动开发以来,特别是参加工作以后,算算自己分析过的dump文件也不少了,平时的分析成果没有积累下来,以至于后来再分析时,不是这个命令记不住,就是那个方法忘记了。好记性不如烂笔头,从今天开始,把自己的分析心得,多半是WinDbg的一些用法,记录下来,供以后查阅。 1. 当一个蓝屏是由用户态的操作引发时,怎么从内存转储中查看用户态堆栈? 首先,要查看到用户态的堆栈,必须所生成的dump类型是“完全内存转储”,不然生成的dump文件中是没有用户态内存信息的。 其次,通过“!thread”命令或者其他方
2011-05-12 14:59:00
473
原创 关于内核数据和代码分页问题的小小研究
关于内核的代码和数据分页问题,感觉自己一直是半知半解,前段时间请教了下同事和某个群里的网友,然后再顺手查了一些资料,总算对这个问题有了一些较为清晰的认识,记录如下: 关于分页和非分页内存,我们感受最深的应该还是,在高的IRQL级别上(>= DISPATCH_LEVEL)不能访问非分页内存,因为在这个级别上页错误无法被处理。 早期内存资源非常宝贵,我想这也可能是为什么Windows允许ntoskrnl的某些数据和代码驻留在分页内存中的原因。理论上,只要代码和数据不会在DISPATCH_LEVEL的级别上执
2010-06-24 14:24:00
442
原创 根据PE文件头判断是否合法的PE文件
今天修改同事的PE文件扫描程序,结果发现扫描出来的有些文件只是一些PE文件的尸体,缺胳膊断腿的,不忍再拿来解剖了,到网上搜了一个根据PE文件头判断是否是合法PE文件的代码片段,该代码片段还有判断一个程序的子系统类型功能(Console还是GUI)。大致代码如下: BOOL IsValidPEFile(LPTSTR tszFullFileName){ HANDLE hFile = I
2010-03-09 14:17:00
380
原创 在一般Windows内核驱动中获取网卡物理地址
自己想在一般的Windows内核驱动中,获取网卡的物理地址,在网上查了一些资料,都说得不是很详细,有些还说的是错的,自己琢磨了一下,然后调试通过,具体见下文: #define FILE_DEVICE_PHYSICAL_NETCARD 0x00000017#define _NDIS_CONTROL_CODE(request,method) / CTL_CODE(FILE_DEVICE
2010-03-08 12:46:00
959
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅