User Tools

Site Tools


howto:iosmod

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
howto:iosmod [2019/01/15 23:04]
czokie [IOSMOD]
howto:iosmod [2019/01/15 23:15] (current)
czokie
Line 1: Line 1:
 ====== IOSMOD ====== ====== IOSMOD ======
  
-**Stay away from iTunes 12.7 ** This version removes the Apps section. This option has been removed by Apple forcing you to redownload IPA directly from your iDevice. If you still want to download previous versions of any program stay with iTunes 12.6. If you want to upload IPA files using method described below use iTunes 12.6 or external tool like iMazing +**Stay away from iTunes 12.7:** This version removes the Apps section. This option has been removed by Apple forcing you to redownload IPA directly from your iDevice. If you still want to download previous versions of any program stay with iTunes 12.6. If you want to upload IPA files using method described below use iTunes 12.6 or external tool like iMazing
-**+
  
-**Also note, from version 4.1.15 onward, the .dji_configs trick to force FCC mode no longer works, the file isnt parsed by the app. Alternative techniques are available [[howto:iosfrida|here]]**+ 
 +**.dji_configs** Also note, from version 4.1.15 onward, the .dji_configs trick to force FCC mode no longer works, the file isnt parsed by the app. Alternative techniques are available [[howto:iosfrida|here]]
  
 This page will explain how to go about modding iOS apps. It's work in progress, so please excuse the mess. This page will explain how to go about modding iOS apps. It's work in progress, so please excuse the mess.
 +
 ===== 1. Get an IPA file ===== ===== 1. Get an IPA file =====
 If you want to mod, you will need to get an IPA file to modify. This is available in iTunes. If you want an earlier package, this can be obtained using Charles Proxy (Mac users) or Fiddler (Windows users)or similar methods. Both methods use man-in-the-middle attack to sniff SSL traffic. If you want to mod, you will need to get an IPA file to modify. This is available in iTunes. If you want an earlier package, this can be obtained using Charles Proxy (Mac users) or Fiddler (Windows users)or similar methods. Both methods use man-in-the-middle attack to sniff SSL traffic.
 +
 ===== 2. Decrypt the file ===== ===== 2. Decrypt the file =====
-Currently you can't decrypt iOS apps without a device. The encryption keys are ultimately protected by an unknown key which is burned into the processor and cannot be extracted using software, That's why no "offline" decryption app has been made. You can decrypt iOS app if you have jailbroken device. If you don't have one please use links below with already decrypted DJI Go 4 app (thanks to @kilrah for the files and @cs2000 for the torrents).+Currently you can't decrypt iOS apps without a device. The encryption keys are ultimately protected by an unknown key which is burned into the processor and cannot be extracted using software, That's why no "offline" decryption app has been made. You can decrypt iOS app if you have jailbroken device. If you don't have one please use links below with already decrypted DJI Go 4 app (thanks to @kilrah for the files and @cs2000 for the torrents). NOTE: If you are NOT doing a Frida modification and just changing parameters, you don't have to decrypt the application. The text components can be modified without requiring binary decryption.
  
   * [[howto:firmware#dji_go_4|Look here for up to date firmware]]   * [[howto:firmware#dji_go_4|Look here for up to date firmware]]
 +
 ===== 3. Unpack the file ===== ===== 3. Unpack the file =====
 IPA files are ZIP files. If you're going to tweak, just unzip it to a directory. IPA files are ZIP files. If you're going to tweak, just unzip it to a directory.
Line 37: Line 40:
  
 ===== 4. Mod the file ===== ===== 4. Mod the file =====
-Some interesting stuff can be found inside the IPA (you can locate it after unzipping). Another nice place to look is your iDevice (after you install DJI Go app and run it at least once). We suggest using the iMazing tool to view these files (remember to tick 'Show hidden files and folders' in Preferences->Storage).+Some interesting stuff can be found inside the IPA (you can locate it after unzipping). Another nice place to look is your iDevice (after you install DJI Go app and run it at least once). We suggest using the [[https://imazing.com|iMazing tool]] to view these files (remember to tick 'Show hidden files and folders' in Preferences->Storage).
  
 Inside the IPA there are several interesting files: Inside the IPA there are several interesting files:
 +
 +==== .DJI.configs ====
  
   Payload/DJI\ GO\ 4.app/DJIPilotResources.bundle/plist/.DJI.configs   Payload/DJI\ GO\ 4.app/DJIPilotResources.bundle/plist/.DJI.configs
Line 45: Line 50:
 This is the default .DJI.configs file.  This is the default .DJI.configs file. 
  
-<todo>Replace default configuration with modified one (like force_boost), repack, resign IPA and make some tests.</todo>+Replace default configuration with modified one (like force_boost), repack, resign IPA and make some tests. Note: These settings don't work on DJI go from 4.1.15 onwards. 
 + 
 +==== ParamList.plist ====
  
   Payload/DJI\ GO\ 4.app/DJIPilotResources.bundle/plist/ParamList.plist   Payload/DJI\ GO\ 4.app/DJIPilotResources.bundle/plist/ParamList.plist
Line 74: Line 81:
                 </dict>                 </dict>
 </file> </file>
-<todo #aciid:2018-07-24>Replace max value, repack, resign IPA and check Max Height parameter within application.</todo>+ 
 +==== nib files ====
  
   Payload/DJI\ GO\ 4.app/*.nib   Payload/DJI\ GO\ 4.app/*.nib
Line 119: Line 127:
   adding: Payload/DJI GO 4.app/_CodeSignature/ (stored 0%)   adding: Payload/DJI GO 4.app/_CodeSignature/ (stored 0%)
   adding: Payload/DJI GO 4.app/_CodeSignature/CodeResources (deflated 74%)   adding: Payload/DJI GO 4.app/_CodeSignature/CodeResources (deflated 74%)
-===== 6a. Resign and install your file (with Cydia) ===== 
-Install your file with Cydia Impactor. Follow step below: 
  
-1Make it sure you have already installed the latest version of iTunes on your Computer.+===== 6Resign and install your file ===== 
 +NOTE: If you have NOT changed any of the executable files and you downloaded your own file using iTunes, you should not need to re-sign the file. The signatures are applied on the binary and framework components only.
  
-2Download the latest version of Cydia Impactor. You can find it here:+If you DOWNLOADED a decrypted binary, this will NOT be signed and you will need to sign as shown below.
  
-[[http://www.cydiaimpactor.com|Cydia Impactor Home]] 
  
-3After installation check for updates (current version is 0.9.42 works well with IOS10 and IOS11)+===== 6aResign and install your file (with Cydia===== 
 +Install your file with Cydia Impactor. Follow step below:
  
-4. Connect your device with the PC using the USB cable.+  - Make it sure you have already installed the latest version of iTunes on your Computer. 
 +  - Download the latest version of Cydia Impactor. You can find it here: [[http://www.cydiaimpactor.com|Cydia Impactor Home]] 
 +  - After installation check for updates (current version is 0.9.42 works well with IOS10 and IOS11) 
 +  - Connect your device with the PC using the USB cable
 +  - Now launch the Impactor. 
 +  - Go to “Device” and select “Install Package…” option on Cydia Impactor. 
 +  - The application will ask for Apple ID username and Apple ID password. **Warning! If you enabled 2FA (2 factor authentication) you have to visit http://appleid.apple.com and generate one-time password. This generated password has to be entered instead your Apple ID password!** 
 +  - Please be patient and let Cydia Impactor perform different tasks to sign and install the IPA file. 
 +  - Once you see the “Complete” message on it, wake up your iPhone and go to “Settings > General > Device Management”. 
 +  - Open the just installed profile, and trust the developer.
  
-5. Now launch the Impactor. +**NOTE!** If you are using the Apple ID registered with Apple’s Developer Program, you get the developer certificate which will remain valid for one year. In case you are using a non-developer ID, you get the certificate with 7 days validity only.
- +
-6. Go to “Device” and select “Install Package…” option on Cydia Impactor. +
- +
-7. The application will ask for Apple ID username and Apple ID password. **Warning! If you enabled 2FA (2 factor authentication) you have to visit http://appleid.apple.com and generate one-time password. This generated password has to be entered instead your Apple ID password!** +
- +
-8. Please be patient and let Cydia Impactor perform different tasks to sign and install the IPA file. +
- +
-9. Once you see the “Complete” message on it, wake up your iPhone and go to “Settings > General > Device Management”. +
- +
-10. Open the just installed profile, and trust the developer. +
- +
-**Warning! If you are using the Apple ID registered with Apple’s Developer Program, you get the developer certificate which will remain valid for one year. In case you are using a non-developer ID, you get the certificate with 7 days validity only.** +
- +
-or you can watch it here:+
  
   * [[https://www.youtube.com/watch?v=SXgQ-e-41Hw|Youtube guide]]   * [[https://www.youtube.com/watch?v=SXgQ-e-41Hw|Youtube guide]]
Line 154: Line 156:
 If you don't trust external programs like Cydia Impactor and you have your own developer keys from Apple (I mean you pay $99 per year) you can use Xcode to sign IPA file and then upload it with iTunes. If you don't trust external programs like Cydia Impactor and you have your own developer keys from Apple (I mean you pay $99 per year) you can use Xcode to sign IPA file and then upload it with iTunes.
  
-To achieve it please clone the following repository: +To achieve it please clone [[https://github.com/vtky/resign|this following repository]] and follow the steps in the README.
- +
-[[https://github.com/vtky/resign|Resign Xcode project]] +
- +
-and follow the steps in the README. +
howto/iosmod.txt · Last modified: 2019/01/15 23:15 by czokie