Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Is it possible to resign applications downloaded with iTunes from appstore?

Tags:

ios

ipa

codesign

Recently I saw a website that include lots of AppStore applications and they resigned that applications via their Enterprise account and let people to download them directly to their iPhone/iPads.

I am wondering how they do this? I had resigned .ipa files that was created for Ad-Hoc via Enterprise; but how they resign AppStore applications with enterprise account too?

I am wondering for the answer because it is important and we should consider more security challenges for the case of resigning our appstore applications with enterprise accounts.

like image 280
Husein Behboudi Rad Avatar asked Aug 30 '16 15:08

Husein Behboudi Rad


People also ask

Can you still use an app if its removed from the App Store?

You can continue to use the app, however you will not be able to update your app. If you remove the app from your device, you will not be able to redownload the app unless the developer is able to republish it to Google Play.

What happens when Apple removes an app from the App Store?

Apps that are removed continue to function for users who have already downloaded the app on their device.

What is resign in iOS?

Resigning the iOS app results in the removal of certain entitlements. This includes App Group, Associated Domains, Game Center, HealthKit, HomeKit, Wireless Accessory Configuration, In-App Purchase, Inter-App Audio, Apple Pay, Push Notifications, and VPN Configuration & Control.


1 Answers

When an IPA is downloaded from the app store (including by Xcode), the binaries in that IPA are encrypted by Apple. Simply resigning these binaries will not work. One way to remove the DRM, and this may be illegal in your country, is to extract the unencrypted binary during runtime on a jailbroken device.

Note that when resigning apps, such services need to use a different provisioning profile than you originally used, and that provisioning profile will have a different bundle identifier than the one in your Info.plist. You can use tools such as TCMobileProvision to inspect and compare the two identifiers. This is a mouse and cat game, as they could actively look for that code and remove it statically, but you will most likely reduce the possibility of your app being resigned significantly.

like image 113
Léo Natan Avatar answered Nov 15 '22 22:11

Léo Natan