返回信息流我现在在文件系统过滤驱动中得到一个PVOID类型的指针DataBuffer,想把里面的Data解析出来(十六进制格式也行)。请各位大牛指点下应该怎么解析,用哪个函数?万分感激!
这是一条镜像帖。来源:北邮人论坛 / security / #29374同步于 2010/8/12
该镜像源已超过 30 天没有更新,可能在源站已被删除。
Security机器人发帖
问下内核中如何解析PVOID类型的指针指向的数据
shuitian
2010/8/12镜像同步6 回复
订阅后,新回复会通过你的通知中心匿名送达。
6 条回复
【 在 imccoder 的大作中提到: 】
: 解析?按照什么格式解析?
: 你是想把Data的数据转换成十六进制吗?
: 没有函数有这个功能,自己写吧
: ...................
就是把这些数据打印到文本中去,或者在DebugView中显示出来。
这问题很奇特。。。无论这个指针是PVOID也好,还是PBYTE也好,它指向的数据都是内存数据,进制是一个你自己想选择的查看方式,和指针有何关系?
你直接DbgPrint或者ZwWriteFile就可以,用C或者C++写程序类型转换很常用吧
最后我觉得这种情况直接插个__asm int 3,挂上windbg最清楚
【 在 rebirthatsix 的大作中提到: 】
: 这问题很奇特。。。无论这个指针是PVOID也好,还是PBYTE也好,它指向的数据都是内存数据,进制是一个你自己想选择的查看方式,和指针有何关系?
: 你直接DbgPrint或者ZwWriteFile就可以,用C或者C++写程序类型转换很常用吧
: 最后我觉得这种情况直接插个__asm int 3,挂上windbg最清楚
: ...................
把它当PUCHAR逐字节用DbgPrint打印出来都是空。用ZwWriteFile写到文件里也是空,但是DataBuffer!=NULL。而且ntstatus=ZwWriteFile(....)也是STATUS_SUCCESS。困惑中~~~
DataBuffer != NULL不代表里面的内容不是00
如果ZwWriteFile之后经过flush还是没内容的话,那基本就没什么悬念了
如果想确保其内容,还是用windbg挂上看吧,写驱动不可能不用调试器的
【 在 rebirthatsix 的大作中提到: 】
: DataBuffer != NULL不代表里面的内容不是00
: 如果ZwWriteFile之后经过flush还是没内容的话,那基本就没什么悬念了
: 如果想确保其内容,还是用windbg挂上看吧,写驱动不可能不用调试器的
: ...................
好的,谢谢大牛!