Version 6.5.0 (March 2024)
  • 28 Oct 2024
  • 3 Minutes à lire
  • Sombre
    Lumière

Version 6.5.0 (March 2024)

  • Sombre
    Lumière

The content is currently unavailable in French. You are viewing the default English version.
Résumé de l’article

Supported platform versions

  • iOS 12.0 – iOS/iPadOS 17

    With the end of support for iOS 9.0, support for 32-bit architectures also ended.

  • Shielding Tool:

    • Windows 10: 64-bit Java 17

    • Mac OSX (10.15+)

      The Shielding Tool requires a macOS system to sign applications.

    • Ubuntu Linux 20.04 LTS or 22.04

  • Xcode 12 and later. We recommend using the latest Xcode version.

iOS platform updates

App Shielding version 6.5.0 is compatible with iOS/iPadOS 17.7.

As of March 1, 2024, App Shielding for iOS version 4.3.8.69424 and earlier are no longer supported. For more information, refer to the OneSpan Customer Portal at https://cp.onespan.com/ or the OneSpan Mobile Portal.

Deprecations

iOS: The minimum supported version is iOS 12. App Shielding no longer supports iOS 11.

Xcode: As of Xcode 14, Apple has deprecated bitcode.

As of App Shielding version 6.0.0, the Shielding Tool no longer supports bitcode-based code obfuscation!

New features and other updates

New callback protocols

New protocols have been integrated into the callback APIs for ShieldSDK, PRMShieldEventManager and PRMShieldEventDelegate. The old ShieldCallback API is still available but is marked as deprecated and will be removed in the future.

For more information, see Configure callbacks on iOS.

New callback testing and development interface

ShieldSDK provides a new interface for testing and development purposes, PRMShieldCallbackTestManager. This API allows you to trigger events with the desired value (e.g., the device is jailbroken) and a delay when the event should be triggered. This API will not trigger any security checks to run, only the desired event that you want to validate. Refer to the "Triggering Callbacks" section of the documentation for more details.

Note that this code is for debugging only and should not exist in the binary when shielding it, as these calls in a shielded app will cause the app to crash. This feature will not be available after shielding, as the Shielding Tool will replace the stub library with the actual App Shielding library.

For more information, see Configure callbacks on iOS - Debugging: manual triggering of callbacks.

General improvements

A number of general improvements have been implemented:

  • Triggering of debugging events was added

  • General stability and performance improvements

  • Stability improvements of App Shielding

Fixes and other changes

Documentation fixes

Description: The method and details for the developerModeStatus callback were missing from the list of callback methods.

Status: The documentation has been updated. The method and its description has been added to the ShieldCallbackMethods table in the Mobile Application Shielding Integration Guide for iOS.

SHIOS-2158: Improved message text for App Shielding in simulator mode

Description: Whenever you run an app that calls App Shielding APIs (e.g., setting up events) in a simulator, the following message was logged:

☠ App Shielding is disabled in simulator builds ☠

This applied for shielded as well as unshielded apps running in a simulator.

Status: This has been improved. If you run an unshielded app on a real device, it will now show the following message instead:

☠ Application is not fully shielded.☠

SHIOS-2347: Fixed unexpected termination for Prevent runtime library injection

Description: On iOS 17, an unexpected termination occurred for the Prevent runtime library injection option.

Status: This issue has been fixed.

SHIOS-2352: Missing declaration of use for privacy-related APIs

Description: Privacy-related APIs from internal App Shielding code would have required declaration of use in a Privacy Manifest. For more information, refer to Privacy manifest files in the Apple developer documentation.

Status: This issue has been fixed. App Shielding no longer uses any of the listed APIs, they have been removed from the code.

SHIOS-2419: ShieldSDK not detected and correctly linked

Description: When ShieldSDK was embedded in a framework and weakly linked, it was not detected or correctly linked.

Status: This issue has been fixed. The Shielding Tool will now detect and correctly link it during shielding.

SHIOS-2464, SHIOS-2466, SHIOS-2468, SHIOS-2469, and SHIOS-2520, : Fixed various memory leaks

Description: Various memory leaks were fixed. This includes a memory leak that caused large amounts of memory to be consumed over prolonged amounts of time (i.e., when the app was running in the foreground for days or weeks.

Known limitations

The limitations described here have not yet been solved for the current Mobile Application Shielding version. Possible workarounds are described where available.

XCFramework support

App Shielding is provided both as framework and as XCFramework. If you are using a legacy build system on Xcode 11 and later, use the ShieldSDK.framework instead of the newer ShieldSDK.xcframework. Xcode will cause an error when using the XCFramework in the legacy build system.

ARM64E limited support

The ShieldSDK framework is not compiled for the ARM64E CPU architecture, and therefore does not include the corresponding slices. ARM64 CPU ABI should be used instead. At the moment, Xcode 11 does not create an ARM64E target by default. Consequently, no action is required at this point.

External screen block

Blocking external screens (e.g. AirPlay) is currently not working for apps that use UISceneDelegate in iOS 13 and later.


Cet article vous a-t-il été utile ?

Changing your password will log you out immediately. Use the new password to log back in.
First name must have atleast 2 characters. Numbers and special characters are not allowed.
Last name must have atleast 1 characters. Numbers and special characters are not allowed.
Enter a valid email
Enter a valid password
Your profile has been successfully updated.
ESC

Ozzy, facilitant la découverte de connaissances grâce à l’intelligence conversationnelle