Version 7.0.3 (December 2024)
  • 26 Nov 2024
  • 4 Minutes to read
  • Dark
    Light
  • PDF

Version 7.0.3 (December 2024)

  • Dark
    Light
  • PDF

Article summary

Introduction

Welcome to Mobile Application Shielding 7.0.3!

The OneSpan Customer Portal only accepts connections via TLS 1.2 or later. Earlier versions are no longer supported because all versions of the TLS protocol prior to 1.2 have been deprecated.

This is a release of Mobile Application Shielding with issue fixes. For information about configuring and using Mobile Application Shielding, see Mobile Application Shielding Integration Guide.

On the  OneSpan Customer Portal, the last 12 versions of Mobile Application Shielding are available for download. To maintain protection against the latest mobile threats, ensure to update Mobile Application Shielding to the latest version!

Supported platform versions

  • iOS 12.0 – iOS/iPadOS 18

    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 14.2 and later. We recommend using the latest Xcode version.

iOS platform updates

App Shielding version 7.0.3 is compatible with iOS/iPadOS 18.2 beta 3.

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 Mobile Portal or the OneSpan Customer Portal.

Deprecations

Platform minimum supported version

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!

Deprecated API

As of App Shielding version 6.5.0, the ShieldCallback API has been deprecated and will be removed in a future version. This API has been replaced with the new PRMShieldEventManager and PRMShieldEventDelegate protocols that have been integrated into the ShieldSDK callback APIs.

Fixes and other changes

SHIOS-3093: Updated namespace for automatic configuration update feature API

Description: To prevent conflicts with other frameworks or naming conventions, ShieldConfig and ShieldConfigUpdateCallbacks have been renamed to PRMShieldConfig and PRMShieldConfigUpdateCallbacks, respectively. The sample included in the product package also has been updated.

The original names have been marked as deprecated and will be removed in a future release.

SHIOS-3099: Improved coverage of Block screenshot configuration option

Description: The coverage of the Block screenshot configuration option has been improved for apps using UISceneDelegate.

SHIOS-3104 and SHIOS-3121: Security improvements—improved Jailbreak detection

The detection of newer Jailbreak hiders and associated hooking tools has been improved.

SHIOS-3109: Fixed symbolic links in ShieldSDK.xcframework

Description: Previously, when building the library and uploading the package to a Package Registry (e.g., Artifactory or GitLab), the following error was encountered:

[!] Unable to install vendored xcframework `ShieldSDK` for Pod `react-native-appshield`, because it contains both static and dynamic frameworks.

Status: This issue has been fixed. The proper handling of symbolic links within ShieldSDK.xcframework is now ensured.

SHIOS-3118: Additional jailbreak detector

Description: App Shielding now provides an additional detector for Dopamine-based jailbreaks.

SHIOS-3129: Improved thread safety when restoring bindings

Description: The thread safety has been improved for restoring bindings. This also resolves an issue where in rare cases the application could terminate unexpectedly on launch.

SHIOS-3135: Improved screenshot blocking for apps using UISceneDelegate

Description: The coverage of the new screenshot blocking feature for apps using UISceneDelegate has been improved.

SHIOS-3140: Improved Developer Mode status callback behavior for iOS 15 and earlier versions

Description: Previously, the Exit on Developer Mode option would not trigger on devices running iOS 15 and earlier versions, but the Developer Mode callback would still trigger, always returning true.

Status: To ensure consistency, the Developer Mode callback now always returns false on iOS 15 and earlier versions, reflecting that Developer Mode is only available on iOS 16 and later.

Known limitations

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

Bypassing App Shielding protection in Cordova-based applications

Description: Because of the nature of pure Javascript frameworks such as Cordova, the effectiveness of the push and pull bindings of App Shielding is affected. As a result, it might be possible to extract all Javascript files from a shielded application and build a new Cordova-based application with the extracted Javascript files. That new application will behave identical to the original one but has two major differences:

  1. It is not longer protected with App Shielding.

  2. It is signed with a different developer certificate.

Because this new application is signed with a different developer certificate, it is recognized by the stores or every device as a completely different and new application in comparison to the original shielded application. It cannot be avoided that a new application like this is built that looks and behaves similar to the original application.

OneSpan risk assessment: Threat actors will need to make heavy use of targeted phishing attacks to convince users of the original application to install the rogue version. For attackers, however, it is much easier to use existing malware frameworks that mimic hundreds of login screens in one single piece of malware. In addition, the existence of any rogue versions of the application does not affect the security features of the original shielded application. Everyone who is using the genuine, shielded application is protected with all the features of App Shielding, including all security measures of the original application. Therefore, we consider this issue to be of low risk.

Xcode marks ShieldSDK.xcframework package as not signed/verified

Xcode marks the ShieldSDK.xcframework package as not signed or verified and might move it to quarantine mode. If Xcode displays a message like ShieldSDK.xcframework cannot be opened..., follow these steps to resolve it:

  1. Select Cancel.

  2. Open the macOS System Settings.

  3. Navigate to Privacy & Security.

  4. Scroll down to the security warning and select Allow Anyway.

This will be fixed as soon as possible.

External screen block

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


Was this article helpful?

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, our interactive help assistant