x64系统的强制数字签名以及PatchGuard一直阻碍着咱们研究64位驱动,因为加载不上,很是闹心,下面我就介绍给大家一些工具和手法,使得能够加载自己编写的驱动。
    针对于Windows 7 x64系统,网上放出了破解补丁,打补丁后就能够加载,非常简单,不需要签名,顺带废除了PatchGuard。仅仅是添加了一个新启动项。
    而对于Windows 8/8.1 x64,没人放工具,据说有人已经突破,但是不免费,所以就需要自己动动脑子了。
    首先需要开启测试模式,BAT文件内容如下:

1
2
3
@bcdedit -set loadoptions DDISABLE_INTEGRITY_CHECKS
@bcdedit -set TESTSIGNING ON
@pause

取消测试模式:

1
2
3
@bcdedit -set loadoptions ENABLE_INTEGRITY_CHECKS
@bcdedit -set TESTSIGNING OFF
@pause

重启之后,就可以加载未信任驱动了,什么叫未信任:就是证书链不受信任,只有极个别的根证书才被Windows认可,从而顺利的加载驱动。而开启测试模式就能加载,则只要含有数字签名就能加载,确切的说是代码签名。
    接下来需要做的就是给自己的驱动加上签名,当然是不花钱的。
    需要一些工具,可以从SDK里找,也可以用我提供的附件。
    第一步:生成一个证书。

1
@MakeCert -r -pe -a sha256 -cy end -n "CN=证书名字" -sv 文件名.PVK 文件名.CER

第二步:生成pfx(私有证书?)

1
@pvk2pfx -pvk 文件名.PVK -spc 文件名.CER -pfx 文件名.PFX

这一步可以加密码,具体可以通过/?查看说明。
    第三步:代码签名。

1
@signtool.exe sign /v /f 文件名.PFX 驱动文件.sys

至此就可以加载这个驱动了。

至于PatchGuard还没想到办法。

上传的附件:

  • no_pg_ds_v3_win7.rar (54.13kb,357次下载)
  • CertTools.7z (105.12kb,235次下载)

在Windows x64中加载驱动相关推荐

  1. mysql驱动为什么自动加载_为什么JDBC中加载驱动要使用反射?

    原文链接:https://www.cnblogs.com/homejim/p/8076481.html 在JDBC详解系列(一)之流程中,我将数据库的连接分解成了六个步骤. JDBC流程: 第一步:加 ...

  2. Windows编程 内存中加载图片并显示 Direct离屏表面的实现

    版本:VS2015 语言:C++ 前段时间去白空轨了,感觉快燃尽了.没有看Windows的书,所以博客也没更,不过请组织放心,从现在开始,即使是节假日,我也会仔细钻研DirectX的. 今天是第七章的 ...

  3. Windows Driver开发_TraceEvents调试以及加载驱动的方法

    在最新版的WDK框架里,我们新建了Windows Driver KMDF模型之后默认使用的TraceEvents来打印输出的,这套输出机制叫WPP,我们可以在DriverEntry函数里看到它的初始化 ...

  4. rd450linux系统,RD450 板载r110i raid 安装RHEL 6.5 x64 加载驱动的方法(UEFI引导模式)...

    CentOS 6.5 x64通用.所有联想服务器 R110i的raid卡通用. 因为联想没有CentOS系统的驱动,可以用RedHat的驱动,找到对应的版本,我用过可以. 本方法按照RD450 OS安 ...

  5. 开机启动加载驱动过程中调用PostMessage函数出错

    今天在WINCE5.0+S3C2440系统调试检测出租车是否载客的驱动的时候遇到这样的问题: 发现在开机启动加载驱动过程中调用PostMessage函数时会导致调用的线程崩溃,比如如果下面的线程在创建 ...

  6. 连接驱动_在jdbc中完成对于jdbc参数、jdbc变量,加载驱动,创建连接的封装

    JDBC简介 JDBC中文含义:Java数据库连接,英文全称:Java Database Connectivity. 它是Java语言中用来规范访问数据库的接口,提供了放多接口方法,例如查询 .更新. ...

  7. Windows驱动(加载驱动)

    之前我们是使用驱动工具加载驱动,本次实验内容是使用代码 实现驱动加载和卸载 加载过程 打开SCM服务管理器 -> 创建驱动服务 -> 启动服务 -> 关闭句柄 //加载驱动 输入 驱 ...

  8. 红帽linux7如何加载驱动,在RHEL7安装过程中加载驱动程序

    在系统在安装过程中,有时候会出现系统不支持或当硬件比系统版本更新时就需要在系统安装之前就需要先加载驱动(通常是RAID卡驱动,因为不加载RAID驱动无法识别硬盘,从而导致无法安装系统,其它大多驱动可在 ...

  9. IDEA中JDBC连接数据库无法加载驱动问题

    环境: <dependencies><!--mysql的驱动--><dependency><groupId>mysql</groupId>& ...

  10. Microsoft Corporation 去掉 windows 修改 启动加载 版权

    windows 修改 开机界面 boot启动界面 windows 修改 启动加载 版权 windows 系统如何修改开机画面的版权文字"Microsoft Corporation ... ◎ ...

最新文章

  1. ES6 let和const 命令
  2. Rep Loss笔记
  3. PMP-【第2章 项目运行环境与项目经理】2021-1-4(49页-60页)
  4. java中rpn_java – RPNCalculator代码混淆
  5. SpringBoot中用itext实现PDF导出时实现循环添加元素
  6. Java笔记-SSLSocket双向认证实例
  7. JavaScript Swiper插件
  8. mysql 两行的差异_MySQL两行之间的日期差异
  9. dYdX 2020年度回顾:累计交易量增长40倍
  10. Neo4j 的一些使用心得
  11. 采用open***对两台流量卡arm设备进行通讯(公有云)
  12. 微信小程序--点餐系统(本地服务器+源码分享)
  13. 计算机图形学の三种经典画直线算法
  14. 鱼跃CMS-轻量开源企业CMS v1.4.6
  15. Google Play In-app Billing API version is less than 3.
  16. 爬取qq音乐的评论并生成词云——以《听妈妈的话》为例
  17. 谭浩强《C程序设计》书后习题 第八章
  18. python处理csv文件里的空值_如何处理csv中的空值
  19. 查询速度至少为160MHz的PC的制造商
  20. pyepics PV -- 2

热门文章

  1. unity3d 嵌入 移动MM SDK 闪退的问题
  2. 用 VS2005 类设计器设计类
  3. HTML期末大学生网页设计作业--官网仿qq音乐(1页)
  4. Noteability和GoodNotes日常使用细节对比
  5. 计算机软件的卸载,电脑里那些软件是不需要的?应该怎么卸载?
  6. 用Python实现的数据化运营分析实例——销售预测
  7. 关于域名续费 域名过户转入等问题解说
  8. jasper ireport
  9. 新装的服务器wincc上一些图形不显示,wincc画面无法全部显示
  10. CentOS下MySQL安装失败,报socket '/tmp/mysql.sock错误解决方法