您的位置:首页 > 其它

windows mobile 6.5.3 绕过签名机制 添加根证书到系统 获得特权API

2015-08-31 15:55 316 查看
1、现在还仍在做windows mobile开发的人几乎很少了,都转到安卓平台,所以相关资料少之又少。

2、关于特权API和普通API的说明,网上很多资料,比如http://www.360doc.com/content/06/0118/23/73_60330.shtml 就针对windows mobile特权API的说明。

3、作为OS开发者,拥有很多特权,但微软还是做了限制,比如我们自己生成的根证书,又要什么证书颁发机构购买证书,完全没有必要,下面介绍如何通过某些手段将我们自己的根证书加入到系统中去,这样后面我们自己再用自己的根证书以及其签名的证书对别的.exe,.dll进行签名,系统就认为我们是认证过的,就会给予特权。

4、其实系统根证书的存放目录是在%WINCEROOT%\PUBLIC\COMMON\OAK\FILES目录下的,名字叫做sysroots.p7b,其实我们双击可以打开,会看到里面很多证书,这些证书都是和系统里面的一一对应的,我们无法直接将自己的.cer根证书加入到.p7b文件中去的。

5、那怎么办呢,原理是这样,我们先把sysroots.p7b中包含的所有证书都导入到我们的电脑,然后再在电脑中添加新的证书,然后再导出成.p7b文件,这样就把新的证书加入到.p7b文件中了。我们鼠标指向sysroots.p7b之后,点右键,安装证书,按如下步骤:



6、通过以上步骤,我们已经将.p7b里面的证书全部导入到计算机中,然后在计算机中,我们自己再添加自己新的证书:

在运行中输入mmc,回车,点文件->“添加或删除管理单元”->证书,然后找到“受信任的发布者\证书”,所有的刚才导出的证书都在这里面了,然后右键点空白区域, 所有任务->导入,浏览需要加入到系统中的新的.cer证书,添加完毕,然后全选,右键导出。



7、由于最原始的sysroots.p7b被微软打包在MSXIPKernel.cab.pkg文件中(你可以用winrar尝试打开查看一下,里面全部都是预编译好的文件),所以我们不仅要替换系统的sysroots.p7b文件,而且我们要先在release目录下找到MSXIPKernel.cab.pkg并全部删掉,再在命令行下执行makeimg,这时会重新生成MSXIPKernel.cab.pkg,我们打开新的.pkg文件,就会发现我们修改过的sysroots.p7b已经在里面了,然后为了安全起见,我们在public目录下搜索MSXIPKernel.cab.pkg,找到之后删除掉,然后用新生成的pkg替换微软原始的pkg,至此,根证书添加完毕。

8、后面我们可以使用根证书或者根证书签名的新证书对应用程序或者dll进行签名,就可以获得系统的特权API了,可以随意对系统进行修改,没有任何限制。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: