[准备知识]
提到越狱,很多人都知道 ios 的越狱,安卓的 root 也属于此类,这些越狱的步骤大致有以下两步:
1. 寻找漏洞,将对设备的控制权提升到 root 级别。
2. 破解所安装应用的数字签名认证,以安装非应用商店应用。
刚刚发布的 Windows 8, 第一次加入了应用商店的功能,由于用户安装完 win8 之后,直接就拥有了管理员权限,所以越狱的工作就只剩下了第二步。
[原理]
在 win8 下,要安装新的 Metro 界面的应用程序,正常途径只有两条:
1. 注册 windows 账号,从官方应用商店下载安装程序。
2. 安装一个 Virsual Studio 2012 自己开发程序,但仅限于本机调试运行。
除此之外,其实还有两条路可走,第一条路是注册微软的开发者账号,然后就可以安装非认证的应用程序了,前段时间出来的一些越狱工具,如 Win8 优化大师,走的就是这条路,将应用商店账号提升为开发者账号。
但这条路有致命的弊端,不可能所有用户都注册成开发者,开发者账号现在注册很容易,且免费,但指不定哪天就像 Apple 一样一年 100 美刀了,到时候微软大量封杀咋办?
如此以来,现阶段就剩下一个办法了:
微软在 Windows 8 企业版中提供了一个可以让用户自由安装应用的功能 "Sideloading", 要使用此功能,需要满足以下条件:
1. 在注册表或组策略中启用 "允许安装受信任的应用程序".(具体注册表位置在:HKEY_LOCAL_MACHINESOFTWAREPoliciesMicrosoftWindowsAppx 下的 AllowAllTrustedApps 键值,设为 1 即可)
2. 将计算机加入一个域,此域的主控计算机必须有 Sideloading 功能的激活密钥(也可在本机安装密钥)。
第一条很好办,那么所有的文章就要在第二条上做了,请继续往下看。
[破解过程]
kost 的办法是 hook windows store 服务,使其认为计算机已经加入合法的域,从而达到越狱的目的,他提供了一个 wsservice_crk.dll 文件,通过注册为 LocalServiceAndNoImpersonation 组的服务,在后台运行。
这样一来,应用可以装了,可是应用在哪里呢?当然要有人先下载,然后再破解,再发布,ios 的用户对这些再也熟悉不过了。
要自己发布 app, 需要准备四个工具,makeappx、signtool、makecert 和 pvk2pfx, 具体用法下面会提到。
首先从应用商店下载并安装应用(TMD 还得自己装啊),所有应用的安装位置都在 C:Program FilesWindowsApps 下,注意:此目录先必须显示隐藏文件,并对其赋予权限才可以打开。
将你要安装好的应用连带目录整个拷贝出来(目录名以字符串表示,要是不清楚是哪个的话,打开就可以看到应用名称),删除其中的 microsoft.system.package. data 子目录(隐藏文件夹)。
第一步,你需要一个根证书,需要使用 makecert 和 pvk2pfx 两个工具:
makecert -r -pe -n "CN=microsoft" -a sha256 -cy end -sky exchange -b -e -sv .pvk .cer
"CN=microsoft" 中的 microsoft 代表颁发者,可以自己设,两个文件名必须一致,这个也由你自己取。输入完回车后会弹出一个对话框要求你输入私钥,要输入三遍,选一个你能记得住的密码吧,后面要用到,全部完成后会生成一个 pvk 和一个 cer 文件。
pvk2pfx -pvk .pvk -spc .cer -pfx .pfx -pi
最后生成的 pfx 文件就是你要的根证书了。
第二步,程序文件包打包:
在打包前修改程序文件夹下的 AppxManifest. 文件,将 Identity 项的 Publisher 属性改为 "CN=" 并保存,然后打开 cmd, 进入 MakeAppx 工具所在目录输入:
MakeAppx.exe pack /d /p
生成的程序包文件名需以 appx 结尾。
由于 appx 应用必须进行数字签名才可以安装,所以用刚才制作的根证书为程序包签名:
signtool sign /v /a /fd SHA256 /p /f
第三步,签名完成后的 appx 文件可以安装了,以管理员权限运行 PowerShell, 输入:
Add-AppxPackage
进度条走完后打开你的开始屏幕,恭喜你!安装完成了!
[越狱后能干什么]
1. 安装付费应用,由于 Windows store 现在的软件数量极少,优秀的付费应用更少,破解付费并不是本文的范畴,以后有时间再写原理和过程,kost 提供了一个 TokensExtractor 工具来破解付费应用,破解后可以发布给别人安装,好像现阶段网上还无人发布。
2. 离线安装程序包,由于 Windows store 在国内访问慢如蜗牛,有些地方甚至要改 DNS 才能打开,所以离线安装绝对是中国人的首选。
3. 安装自己开发的、别人开发的无法通过微软审核上架的应用(万恶的审核制度见鬼去吧!)。
[终于轮到我写的工具了]
大众都喜欢傻瓜化工具,那么让我来做好人吧,上面的过程已被我集成到几个小按钮上,为了不让大家伙更懒,安装应用还是要通过上面那条命令(别扔臭鸡蛋):


注意:只支持 64 位的企业版 win8,32 位以后我会补上的,选项中可以设置后台破解服务的名称,和你自己的证书信息,证书文件自带,在 certificate 目录下。必须右键选择用管理员权限运行。
随着越狱的出炉,非官方的应用商店,类似 ios 上的 cydia, 还有盗版软件中心之类的预计会很快粉墨登场,而各大杀毒软件公司对越狱补丁的态度也将很值得玩味,我已经嗅到了战争的味道……