iOS逆向 ipa包重签名

如果你想把一个ipa文件安装到自己的手机上(别人发你的或者从第三方商店下载的…)你的手机如果没有越狱是无法正常安装的(排除企业证书分发), 我们可以通过为ipa重签名实现,原理是将我们自己的证书打进ipa。

朋友发给了我一个用于上架的ipa包,现在我来做个测试,把这个上架appstote的包进行重签名,用我自己的证书进行签名,然后安装到我手机中。为了证明这是一个准备上架appstore的ipa包,我先上传到蒲公英上,如下图所示:

iOS逆向 ipa包重签名_第1张图片

现在我们开始来进行重签名。

第一步:先将ipa包进行解压。

选中ipa包,右键 -> 打开方式 -> 解压,如下图所示:

iOS逆向 ipa包重签名_第2张图片

第二步:替换 embedded.mobileprovision文件。

我们需要将自己打包中的embedded.mobileprovision文件替换掉目标ipa中的embedded.mobileprovision。

进入到目标ipa的文件目录下面,我们可以看到有一个embedded.mobileprovision文件,如下图所示:

iOS逆向 ipa包重签名_第3张图片

找一个我们自己打包的ipa包,然后进行解压,进入到ipa的文件目录下,我们同样可以发现一个embedded.mobileprovision文件,如下图所示:

iOS逆向 ipa包重签名_第4张图片

然后将我们自己的embedded.mobileprovision文件替换掉目标ipa文件中的embedded.mobileprovision。

第三步:进行重签名。

重新签名,“iPhone Distribution: XXXXXX”这个指的是自己的embedded.mobileprovision文件用到的签名证书名称,在xcode或钥匙串中可以找到。

输入命令行:

首先进入包的文件目录下

codesign -f -s 证书名字 目标文件

YuanCandeMacBook-Pro:ZhiKe yuancan$ codesign -f -s "iPhone Distribution: Hunan Youpaipai Network Technology Co., Ltd. (68AQ9PBKQK)" /Users/yuancan/Desktop/ZhiKe/ZhiKe/Payload/ZhiKe.app 
  • 1

成功之后会提升你替换了签名,如下所示:

/Users/yuancan/Desktop/ZhiKe/ZhiKe/Payload/ZhiKe.app: replacing existing signature
  • 1

第四部:重新打包。

命令行:zip -r qq.ipa Payload

YuanCandeMacBook-Pro:ZhiKe yuancan$ zip -r test.ipa Payload
  • 1

如下图所示:

iOS逆向 ipa包重签名_第5张图片

这个就是重签名之后的ipa包。我们上传到蒲公英检验一下是否重签名成功了。

iOS逆向 ipa包重签名_第6张图片

你可能感兴趣的:(iOS,博客)