iOS APP重签名

这篇文章以目标为:
实现安装两个app,也就是修改info.plist中的Bundle identifier

对app重签名推荐使用iOS_resign_scripts,下载下来之后会有三个命令,对应不同的场景,接下里以第一个为例。

1.准备材料

开始之前需要准备:

  1. 有效的证书(可以在钥匙串中查找)

  2. mobileprovision 文件,可以在xcode中找一个有效的,
    右键 show in finder,将文件复制出来,重命名为embedded.mobileprovision,备用

    Paste_Image.png

  3. ipa包
    ipa包可以通过itunes下载,下载之后在这个路径下


    ipa
  4. 脱壳的二进制文件,decrypted文件,ipa脱壳看这里,脱壳得到的是一个.decrypted的文件,需要去掉后缀。

现在我们已经得到了所有想要的东西。

材料

如果你的二进制文件看起来跟我的不一样?没关系,只是权限问题,想改的话可以试试用修改下权限

chmod 777  WeChat

2.开始修改内容并重签名

既然想要安装两个同样的app,那就修改Bundle identifier,接下来的步骤就没什么好说的了

解压ipa -> 找到APP文件,右键显示包内容 -> 找到info.plist文件 -> 修改Bundle identifier

再将脱壳的二进制文件复制进来,替换原来的二进制文件。修改工作就做好了,可以签名了!

接下来用iOS_resign_scripts 进行重新签名。

$ ios_resign_from_app_to_ipa app-extracted $Developer_code_sign $mobileprovision $target_ipa_related_path

app-extracted 是个文件夹,可以直接把解压的到的文件夹重命名成app-extracted

$ ls app-extracted
META-INF             Payload              iTunesArtwork        iTunesMetadata.plist

签名完成之后会得到一个ipa文件,这个就是破解重签名的ipa了,可以用itools等工具进行安装测试。

这里会有一个问题,如果app中包含了扩展之类的东西就需要注意了,每个插件包里都会有一个info.plist文件,里面的Bundle identifier也需要做相应的修改,不然后导致安装失败。

另外即使改了所有相关的Bundle identifier,还需要对扩展插件进行砸壳才行。所以为了方便,我就把所有插件相关的东西都删了!

分享扩展
watch

再次打包重签名,安装测试。终于可以了!

成果
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 最近比较闲于是研究了一下app逆向,就拿大家都玩坏了的微信来开刀,上网随便找了个抢红包的动态库,去pp助手下了个越...
    saiGo阅读 3,912评论 0 0
  • 对App重签名需要准备很多原理类的知识,知道iOS 的代码签名机制,熟悉证书与配置文件、 Mach-O 二进制文件...
    sxtra阅读 3,757评论 0 6
  • ipa 包重签名最新最简单教程 重签名的意义:ipa 重签名最大的用处是,不必重新打包,和配置其它第三方获取 ap...
    红发_KVO阅读 73,038评论 24 64
  • 网上关于签名的脚本有很多,我找了个本人觉得比较好用的脚步iOS_resign_scripts,下载脚步里面有三个脚...
    涵元阅读 7,034评论 16 19
  • 为什么要重签名? 1、在没有源代码的情况下,你已经对某个应用进行了资源修改(比如修改了启动图或图标等)。修改完成以...
    Yochi阅读 8,652评论 9 11