抱歉,您的浏览器无法访问本站
本页面需要浏览器支持(启用)JavaScript
了解详情 >

呀,锁上了!

前几天写了篇《传统 INF 模板》,今天来补充一下 KMDF 和 NDIS6 的 INF 模板. 这两个模板的编写方式和之前 Legacy 的模板不一样,是微软当前推荐使用的编写方法。

基本上,大家写完驱动都是通过一个加载器来加载驱动,我自己觉得太麻烦了...不如直接右键安装更方便.

下面是我自己使用的驱动 INF 文件模板,直接替换里面部分文件信息就可以直接使用。

ProcessHollowing (进程镂空) 也是出来很久了, 网上已经一大堆相关介绍的文章.
我就不再详细介绍, 详细介绍请看"傀儡进程的实现与检测", 这里就额外补充个小技巧.

分析环境为 x64 版本

InstrumentationCallback 回调的技术刚出来的时候就收藏了, 一直没有去研究学习它. 现在有时间来看一下这个东西.

这个回调存储在 KPROCESS-> InstrumentationCallback.

1
2
0: kd> dtx nt!_KPROCESS
[+0x100] InstrumentationCallback : 0x7FF6FA0E11AE

Windbg 版本要与被调试的 Windows 版本一致! 否则可能出现网络包不支持。 配置 配置虚拟机 123456bcdedit /copy {current} /d TestModebcdedit /set {new} debug on # 开启调试模式bcdedit /set {new} testsign...

配置虚拟机打开虚拟机目录下的 vmx 文件, 添加设置项 32 位客户机系统1234567debugStub.port.guest32 = "54232" ; x86 默认调试端口 8832debugStub.listen.guest32 = "TRUE"debugStub.listen.guest32.remote...

文章可能有错误的地方,希望各位童鞋能够提出~

事故缘由…
为了使用很爽的C++11 特性,我司最新项目是用的VS2015进行开发的。
但是同时又要对XP做兼容(讲真,我个人是不支持对Win7之前的系统做兼容的,我觉得影响发展)。

我们写了个COM组件作为插件,和驱动进行通讯。
在我们进行单元测试的时候,一切正常。但是出了测试安装包之后,发现加载插件会崩溃。
然后我们挂载了Windbg神器来定位崩溃点。
崩溃点是一个读取TLS,这个值为空 (外部静态对象才会有TLS)