64位Windows操作系统手工为驱动程序添加数字签名(精华学习)
来源:互联网 发布:社交网络图谱数据 编辑:程序博客网 时间:2024/06/09 14:51
交作业的文章,其实装系统当天就搞定这个问题了,一直懒得写,现在也懒,流水账记录之。
故障现象:Dscaler在系统升级为64位Windows 2008后不工作。
原因:Dscaler的程序所调用的64位驱动不带数字签名,而MS自从Vista开始在64位系统加载内核驱动要强制签名了。
解决方案:自己伪造签名。
过程:
1,打开系统的testsigning模式,使得非权威CA发放的签名可以使用
bcdedit /set testsigning on
2,做一个签名证书出来。
MakeCert –r –pe –ss PrivateCertStore –n CN=dawnh.net(test) dawnh.cer
3,把证书加进本机信任根CA中去。
CertMgr -add dawnh.cer -s -r localMachine root
4,给驱动签名。
Signtool sign /v /s PrivateCertStore /n dawnh.net(test) /t http://timestamp.verisign.com/scripts/timestamp.dll dsdrv4.sys
说明:
1,dsdrv4.sys就是所要签名的驱动文件名称了,Dscaler默认安装的是32位的,64位的要单独下载。
2,MakeCert.exe,CertMgr.exe和Singtool.exe在基本系统中不附带,不过Plateform SDK,.netFramework SDK,Visual Studio里面都有,拣自己方便弄得安一个就是。
3,命令中dawnh.net,dawnh都可以替换成你自己喜欢的,不过反正是fake的,你自己爱写什么写什么,如果要签其他驱动把dsdrv4.sys换成你要的文件名就是了。
4,要reboot。
5,testsigning打开后据说会影响到DRM,会使有DRM的玩意儿失效,不过我等贫民还没看见什么东西用DRM。
6,喜欢学习的好同学想知道原理自己去啃文档:
http://msdn2.microsoft.com/en-us/library/aa906247.aspx
感想:
1,打上testsigning开关后重起系统屏幕四个角会出来Test mode,上面中间会出来版本号和build。看起来很酷,不过还好不是Safe Mode XD
2,如果我自己能这么做绕过MS的签名机制,病毒不是也能嘛。那强制签名和安驱动时跳个可以被屏蔽掉的警告框也没什么区别了嘛!噢,对了,所以才给你打个Test mode的标,别怪我没提醒
3,有没有给病毒或木马发证书的CA?
- 64位Windows操作系统手工为驱动程序添加数字签名(精华学习)
- 了解Windows系统驱动程序--数字签名
- MySQL学习3:Windows 64位操作系统下验证MySQL
- MySQL学习4:Windows 64位操作系统下使用MySQL
- 如何取得Windows驱动程序的数字签名
- 如何取得Windows驱动程序的数字签名
- 为PE文件添加数字签名
- 为PE文件添加数字签名
- 为PE文件添加数字签名 .
- 查看cpu 以及linux和windows系统是32为还是64位?+查看操作系统版本
- 为windows 驱动程序签名
- 32位Windows操作系统下WDM型USB设备驱动程序设计
- 32位操作系统升级为64位步奏
- 32位和64为操作系统
- 关于64位Windows操作系统中的注册表
- Windows 64位操作系统的重定向
- 关于64位Windows操作系统中的注册表
- 64位windows操作系统安装scikit-learn
- 五大常用算法之四:回溯法
- 怎样在虚拟机linux操作系统中安装vmtools
- 一些WIN32API在C#中的运用
- 五大常用算法之五:分支限界法
- Hibernate中map的研究之:一对多及节点中的inverse的研究(一)
- 64位Windows操作系统手工为驱动程序添加数字签名(精华学习)
- 算法策略的总结
- Drawble高效创建缩略图方法
- Abstract Factory 抽象工厂模式
- cocos2d-x mac,模板安装
- 什么是北斗导航系统
- 监控设备问题
- warning C4251 needs to have dll-interface解决办法
- mysql学习的笔记A