From e1633e0d0c76400a833686891a991a7a7a619d8a Mon Sep 17 00:00:00 2001 From: eni9889 Date: Wed, 20 Apr 2016 02:51:49 -0400 Subject: [PATCH] Testing New dylib directory --- ppsideloader.xcodeproj/project.pbxproj | 5 ++- script/make_ipa | 2 +- script/modify_app | 42 +++++++++++++++++++------- 3 files changed, 36 insertions(+), 13 deletions(-) diff --git a/ppsideloader.xcodeproj/project.pbxproj b/ppsideloader.xcodeproj/project.pbxproj index 88b9f47..cf6deff 100755 --- a/ppsideloader.xcodeproj/project.pbxproj +++ b/ppsideloader.xcodeproj/project.pbxproj @@ -11,6 +11,7 @@ 472ADDC61CC04250007D628E /* Info.plist in Resources */ = {isa = PBXBuildFile; fileRef = 472ADDC51CC04250007D628E /* Info.plist */; }; 472ADDC91CC04272007D628E /* AppDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = 472ADDC81CC04272007D628E /* AppDelegate.m */; }; 472ADDCD1CC04291007D628E /* ViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 472ADDCC1CC04291007D628E /* ViewController.m */; }; + 4773C4B71CC7590F00D16032 /* make_ipa in Resources */ = {isa = PBXBuildFile; fileRef = 4773C4B61CC7590F00D16032 /* make_ipa */; }; 47F81AFB1CC1F03200460314 /* PP_SIDELOADER_OPTIONS.plist in Resources */ = {isa = PBXBuildFile; fileRef = 47F81AFA1CC1F03200460314 /* PP_SIDELOADER_OPTIONS.plist */; }; /* End PBXBuildFile section */ @@ -23,6 +24,7 @@ 472ADDCB1CC04291007D628E /* ViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = ViewController.h; path = ppsideloader/ViewController.h; sourceTree = SOURCE_ROOT; }; 472ADDCC1CC04291007D628E /* ViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = ViewController.m; path = ppsideloader/ViewController.m; sourceTree = SOURCE_ROOT; }; 4741EE651CBDFF09008F9CDF /* app.entitlements */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xml; path = app.entitlements; sourceTree = SOURCE_ROOT; }; + 4773C4B61CC7590F00D16032 /* make_ipa */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = make_ipa; path = script/make_ipa; sourceTree = SOURCE_ROOT; xcLanguageSpecificationIdentifier = xcode.lang.sh; }; 478649241CBE7D790090A40A /* modify_app */ = {isa = PBXFileReference; explicitFileType = text.script.sh; fileEncoding = 4; name = modify_app; path = script/modify_app; sourceTree = SOURCE_ROOT; xcLanguageSpecificationIdentifier = xcode.lang.sh; }; 47F81AFA1CC1F03200460314 /* PP_SIDELOADER_OPTIONS.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = PP_SIDELOADER_OPTIONS.plist; sourceTree = SOURCE_ROOT; }; /* End PBXFileReference section */ @@ -59,6 +61,7 @@ isa = PBXGroup; children = ( 478649241CBE7D790090A40A /* modify_app */, + 4773C4B61CC7590F00D16032 /* make_ipa */, 47F81AFA1CC1F03200460314 /* PP_SIDELOADER_OPTIONS.plist */, 4741EE651CBDFF09008F9CDF /* app.entitlements */, 24208ADF1BCDE89E00D78C93 /* Supporting Files */, @@ -120,7 +123,6 @@ TargetAttributes = { 24208ADB1BCDE89E00D78C93 = { CreatedOnToolsVersion = 7.0.1; - DevelopmentTeam = 9999T6G2M8; SystemCapabilities = { com.apple.ApplicationGroups.iOS = { enabled = 1; @@ -158,6 +160,7 @@ isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; files = ( + 4773C4B71CC7590F00D16032 /* make_ipa in Resources */, 472ADDC61CC04250007D628E /* Info.plist in Resources */, 47F81AFB1CC1F03200460314 /* PP_SIDELOADER_OPTIONS.plist in Resources */, ); diff --git a/script/make_ipa b/script/make_ipa index 0e625fd..792ca47 100755 --- a/script/make_ipa +++ b/script/make_ipa @@ -44,7 +44,7 @@ if [ "$CREATE_IPA_FILES" = true ] ; then fi #cleanup -rm -rf "$WORKING_DIR" || true +#rm -rf "$WORKING_DIR" || true rm -rf "$TEMP_PATH" || true exit 0 \ No newline at end of file diff --git a/script/modify_app b/script/modify_app index 32d7ed1..4639fc4 100755 --- a/script/modify_app +++ b/script/modify_app @@ -15,7 +15,7 @@ WORKING_DIR="${SRCROOT}/working_dir" EXTRACTED_IPA_PATH="$TEMP_PATH/EXTRACTED_IPA" rm -rf "$TEMP_PATH" || true -rm -rf "$WORKING_DIR" || true +#rm -rf "$WORKING_DIR" || true mkdir -p "$TEMP_PATH" || true mkdir -p "$WORKING_DIR" || true @@ -41,11 +41,7 @@ HOOKED_EXE_PATH="$BUILT_PRODUCTS_DIR/$TARGET_NAME.app/$HOOKED_EXECUTABLE" #lets download the pp tweak for the app located in root echo "DOWNLOADING PP TWEAK" PP_TWEAK_ZIP_PATH="$TEMP_PATH/pptweak.zip" -curl -L "https://beta.unlimapps.com/ppsideloaded/$HOOKED_APP_BUNDLE_ID" -o "$PP_TWEAK_ZIP_PATH" - -#now we can unzip the tweak into working directory -echo "EXTRACTING PP TWEAK" -unzip -oqq "$PP_TWEAK_ZIP_PATH" -d "$WORKING_DIR" +#curl -L "https://beta.unlimapps.com/ppsideloaded/$HOOKED_APP_BUNDLE_ID" -o "$PP_TWEAK_ZIP_PATH" #copy over the app contents echo "$BUILT_PRODUCTS_DIR/$TARGET_NAME.app/" @@ -56,6 +52,12 @@ cp -rf "$APP_PATH/" "$BUILT_PRODUCTS_DIR/$TARGET_NAME.app/" #copy over all the dylibs cp -rf "$WORKING_DIR/" "$BUILT_PRODUCTS_DIR/$TARGET_NAME.app/" +#now we can unzip the tweak into working directory +echo "EXTRACTING PP TWEAK" +mkdir -p "$BUILT_PRODUCTS_DIR/$TARGET_NAME.app/Frameworks" +#unzip -oqq "$PP_TWEAK_ZIP_PATH" -d "$BUILT_PRODUCTS_DIR/$TARGET_NAME.app/Frameworks" +cp -rf "${SRCROOT}/working_dir/"* "$BUILT_PRODUCTS_DIR/$TARGET_NAME.app/Frameworks/" + #lets make sure the HOOKED_EXE has correct permissions if ! [[ -x "$HOOKED_EXE_PATH" ]] then @@ -77,7 +79,9 @@ if [ "$OVERWRITE_ORIGINAL_APP" != true ] ; then fi #add the dylib -"${SRCROOT}/script/insert_dylib" --all-yes --inplace --overwrite "@executable_path/pptweak.dylib" "$BUILT_PRODUCTS_DIR/$TARGET_NAME.app/$HOOKED_EXECUTABLE" +#"${SRCROOT}/script/insert_dylib" --all-yes --inplace --overwrite "@executable_path/libuasharedanaltyics.dylib" "$PP_TWEAK_PATH" +#"${SRCROOT}/script/insert_dylib" --all-yes --inplace --overwrite "@executable_path/libuasharedtools.dylib" "$PP_TWEAK_PATH" +#"${SRCROOT}/script/insert_dylib" --all-yes --inplace --overwrite "@executable_path/pptweak.dylib" "$BUILT_PRODUCTS_DIR/$TARGET_NAME.app/$HOOKED_EXECUTABLE" #add the correct entitlements TEMP_PLIST="$TEMP_PATH/temp.plist" @@ -86,13 +90,29 @@ security cms -D -i ~/Library/MobileDevice/Provisioning\ Profiles/"$EXPANDED_PROV /usr/libexec/PlistBuddy -c "Print Entitlements" "$TEMP_PLIST" -x > "$REAL_CODE_SIGN_ENTITLEMENTS" #sign all the executable binaries -for DYLIB in "$BUILT_PRODUCTS_DIR/$TARGET_NAME.app/"*.dylib +for DYLIB in "$BUILT_PRODUCTS_DIR/$TARGET_NAME.app/Frameworks/"*.dylib do - FILENAME=$(basename $DYLIB) - echo "SIGNING: $FILENAME" - /usr/bin/codesign --force --sign "$EXPANDED_CODE_SIGN_IDENTITY_NAME" "$DYLIB" > /dev/null 2>&1 + if [ -f $DYLIB ]; then + echo "'$DYLIB' Exists" + FILENAME=$(basename $DYLIB) + echo "SIGNING: $FILENAME" + #/usr/bin/codesign --force --sign "$EXPANDED_CODE_SIGN_IDENTITY_NAME" "$DYLIB" > /dev/null 2>&1 + /opt/iOSOpenDev/bin/ldid -S "$DYLIB" + "${SRCROOT}/script/insert_dylib" --all-yes --inplace --overwrite "@executable_path/Frameworks/$FILENAME" "$BUILT_PRODUCTS_DIR/$TARGET_NAME.app/$HOOKED_EXECUTABLE" + fi done +#sign all the executable binaries +#/usr/bin/codesign --force --sign "$EXPANDED_CODE_SIGN_IDENTITY_NAME" "$BUILT_PRODUCTS_DIR/$TARGET_NAME.app/libuasharedtools.dylib" > /dev/null 2>&1 +#/usr/bin/codesign --force --sign "$EXPANDED_CODE_SIGN_IDENTITY_NAME" "$BUILT_PRODUCTS_DIR/$TARGET_NAME.app/libuasharedanaltyicsflurry.dylib" > /dev/null 2>&1 +#/usr/bin/codesign --force --sign "$EXPANDED_CODE_SIGN_IDENTITY_NAME" "$BUILT_PRODUCTS_DIR/$TARGET_NAME.app/libuasharedanaltyics.dylib" > /dev/null 2>&1 + +#ldid -S "$BUILT_PRODUCTS_DIR/$TARGET_NAME.app/libuasharedtools.dylib" +#ldid -S "$BUILT_PRODUCTS_DIR/$TARGET_NAME.app/libuasharedanaltyicsflurry.dylib" +#ldid -S "$BUILT_PRODUCTS_DIR/$TARGET_NAME.app/libuasharedanaltyics.dylib" +#/usr/bin/codesign --force --sign "$EXPANDED_CODE_SIGN_IDENTITY_NAME" "$BUILT_PRODUCTS_DIR/$TARGET_NAME.app/pptweakloader.dylib" > /dev/null 2>&1 + + APP_PLUGINS_PATH="$BUILT_PRODUCTS_DIR/$TARGET_NAME.app/PlugIns" if [ "$OVERWRITE_ORIGINAL_APP" != true ] ; then echo 'PUSH IS NOT ENABLED'