iOS应用重签名

作者: 涵元 | 来源:发表于2016-12-30 20:30 被阅读4163次

网上关于签名的脚本有很多,我找了个本人觉得比较好用的脚步iOS_resign_scripts,下载脚步里面有三个脚本文件,这里我只用了 ios_resign_from_app_to_ipa 这个脚步就可以达到我的目的了。

一、基础环境准备

1.准备需要重签名的IPA包

打开itunes 下载一个最新版本的微信ipa包,然后拷贝出来备用

看图1:


itunes.png

2. 准备 mobileprovision文件
mobileprovision 文件干嘛的,怎么创建这里就不详细说明了,搞iOS开发的都懂😏 这里将mobileprovision文件重命名 embedded.mobileprovision

看图2:


mobileprovision.png

3.准备 Developer_code_sign

找到步骤2中mobileprovision文件对应的证书,格式类似 iPhone Distribution: xxxx. (xxxxx) 搞iOS开发的都懂🤓,不懂是不是应该去找原因了🙄

看图3:

证书.png

4.已经脱壳的二进制decrypted文件

ipa脱壳也称砸壳,如何脱壳看这里不再解释了,微信砸壳会得到一个WeChat.decrypted文件, 重命名为WeChat,打开终端,输入 chmod 777 ,然后把 WeChat拖到终端上按回车 修改下权限。

看图4:

文件目录.png

二、开始操刀修改文件,重签名

搞iOS开发的都知道,在iOS系统上是通过 Bundle identifier 标识 APP 的唯一性的,那么要想在一个手机上装两个微信呢改下Bundle identifier 就可以实现了。

1.解压ipa
打开终端,cd 进入 图4所在目录,然后 运行命令:

 unzip WeChat_6.5.2.ipa -d WeChat_6.5.2_unzip

图5:


解压ipa.png

图6:


解压成功.png

图7:


解压的文件目录结构.png

2.替换砸壳了的WeChat二进制文件

图8:


Snip20161229_21.png

图9:

Snip20161229_22.png

3.修改 Bundle identifier

找到 包内容的info.plist 文件,修改 Bundle identifier
图10:


Snip20161229_26.png

Xcode 打开编辑修改 Bundle identifier 的内容
图11:

Snip20161229_25.png

4.删除微信包里面的扩展插件(PS 目前没找到好的办法签名他们,所以暴力删除它们)

图12:

Snip20161229_23.png

5.运行脚本,开始签名了,打开终端,cd 进入 图4所在目录,运行

sh ios_resign_from_app_to_ipa WeChat_6.5.2_unzip "iPhone Distribution: xxxx xx., xx. (xxx)" embedded.mobileprovision WeChat_6.5.2-resig.ipa

图13:

Snip20161229_28.png

签名成功:
图14:


Snip20161229_29.png

图15:

Snip20161229_30.png

6.双击itunes 打开安装,测试打开不闪退。
图16.

IMG_1818.PNG

相关文章

  • iOS开发逆向之应用重签名(上)

    本文主要介绍重签名的几种方式,以及如何对应用进行重签名, 应用重签名 从之前《iOS逆向应用签名》中可知,签名是指...

  • 通过Shell脚本对应用重签名

    通过上两篇文章(iOS 应用重签名|使用Xcode简化应用重签名)对操作应用的重签名有了一定的认识,但是好像每次都...

  • iOS应用重签名

    网上关于签名的脚本有很多,我找了个本人觉得比较好用的脚步iOS_resign_scripts,下载脚步里面有三个脚...

  • iOS应用重签名

    代码重签名 签名机制 iOS签名需要用到codesign这个命令,了解这个命令的用法可以增加我们对签名机制的了解 ...

  • iOS 应用重签名

    本文我们将重签名一个App,实现将他人的App安装到自己手机上,然后进行部分的调试工作。 需要准备的资料: 1、安...

  • iOS应用重签名

    一、越狱版应用重签名(正版的需要砸壳,这个以后介绍) 应用重签名需要以下几个步骤: 删除插件和带有插件的.app包...

  • iOS应用重签名

    说到iOS重签,那么就应该了解iOS正常签名流程是什么,然后才能知道,我们重签名从哪几个地方入手。 iOS签名 代...

  • iOS应用重签名

    codesign Xocde提供了签名工具,codesign,我们通过几个命令就可以完成重签名 •$securit...

  • iOS 应用 重签名

    前言 在逆向过程中,当我们对IPA包发生改动时,就需要对IPA包进行重新签名,才可以重新安装到我们的iOS设备中。...

  • iOS应用重签名

    知识点准备 MacOS用户组 文件权限Unix Linux 属于多用户、多任务 我们关注第一列(权限):eg:dr...

网友评论

  • 演讲与写作:这个叫:
    威武霸气,
    霸气侧漏,
    侧漏满地,
    满地才华。
  • c03b04f6abd9:楼主,请教个问题,将一个ipa重签名,Bundle identifier可以不变吗?如何让app运行的时候知道自己是否被重新签名过呢?
  • 退役程序猿:签名重新打包之后安装不上DevicenotsupportedByt
  • d551c712efbe:重签名之后无法安装
    使用的和博主一样的那个脚本
    修改了BundID
  • MoMo鲸:我这边不行 按照步骤来的 作者能不能发一个ipa的包给我?
    MoMo鲸:@涵元 先看了很多人的重签名 我越狱的机可以装的上 不越狱的机在安装应用的时候就会失败
    涵元:发给你没用的按步骤来是可以的
  • Gawain__:mac10.12.3解压之后重签名失败 Bundle identifier都没改就不能签名了
  • Caolongs:直接从PP助手里下载的越狱应用可以直接替代砸壳么 ?
    涵元:没试过,理论上是不用砸的
  • 浅夏旧时光:重签名之后改cfdisplayName,不生效,有没有解决方案啊
    涵元:@浅夏旧时光 按我说的去做,我试过得
    浅夏旧时光:@涵元 加密了啊
    涵元:@浅夏旧时光 使用PlistEdit Pro 改下WeChat.app --> zh_CN.lproj --> InfoPlist.strings 文件的相关字符属性

本文标题:iOS应用重签名

本文链接:https://www.haomeiwen.com/subject/mrmpvttx.html