Releases: talsec/Free-RASP-Capacitor
Releases · talsec/Free-RASP-Capacitor
freeRASP 3.0.0
- Android SDK version: 18.3.0
- iOS SDK version: 6.14.4
Breaking
SuspiciousAppInfo.reason(String) renamed toreasons(string[])- Value
"blacklist"inreasonsrenamed to"blocklist" - Removed
TalsecMalwareConfigandTalsecAndroidConfig.malwareConfig SuspiciousAppDetectionConfig.malwareScanScopeandreasonModeare now required
Capacitor
Added
SuspiciousAppDetectionConfigfor malware detection configuration
Removed
TalsecMalwareConfigtype andTalsecAndroidConfig.malwareConfigfield
Android
Added
- New API class
SuspiciousAppDetectionConfigthat can be used to configure malware detection - New API for malware detection configuration in
TalsecConfig, seeTalsecConfig.Builder#suspiciousAppDetection
Fixed
- Fixed
VerifyErrorcaused by JaCoCo bytecode instrumentation - Fixed a potential cause of crash in the multi-instance detector
- Fixed Java interoperability of
ScreenProtectormethods - Fixed Kotlin classpath conflicts in SDK dependency resolution (Kotlin 2.0.0)
Changed
- Fine-tuned location spoofing detection
- Modified malware incident log structure for better aggregation
freeRASP 2.5.1
- Android SDK version: 18.0.4
- iOS SDK version: 6.14.4
Capacitor
Fixed
- Fixed case where event dispatchers on Android were not initialized before calling onResume at the app launch
iOS
Fixed
- Fixed new jailbreak checks false positives on iOS 14 and 13.
- Fixed false positives with jailbreak on iOS 15 and 16.
- Fixed issue with app crashing on screenshot/screen recording.
- Fixed retrigger jailbreak issue on iOS 15 and 16.
freeRASP 2.5.0
- Android SDK version: 18.0.4
- iOS SDK version: 6.14.1
Capacitor
Changed
- Refactor the Android plugin to separate the logic for managing listener states
Android
Added
- Added support for
KernelSUto the existing root detection capabilities - Added support for
HMAto the existing root detection capabilities - Added new malware detection capabilities
- Added
onAutomationDetected()callback toThreatDetectedinterface- We are introducing a new capability, detecting whether the device is being automated using tools like Appium
- Added value restrictions to
externalId- Method
storeExternalId()now returnsExternalIdResult, which indicatesSuccessorErrorwhenexternalIdviolates restrictions
- Method
Fixed
- Fixed exception handling for the KeyStore
getEntryoperation - Fixed issue in
ScreenProtectorconcerning theonScreenRecordingDetectedinvocations - Merged internal shared libraries into a single one, reducing the final APK size
- Fixed bug related to key storing in keystore type detection (hw-backed keystore check)
- Fixed manifest queries merge
Changed
- Removed unused library
tmlib - Refactoring of signature verification code
- Updated compile and target API to 36
- Improved root detection capabilities
- Detection of wireless ADB added to ADB detections
iOS
Added
- Added time spoofing detection, detecting an inaccurate device clock. It is a new threat
timeSpoofing.
Changed
- Improved jailbreak detection methods.
freeRASP 2.4.1
- Android SDK version: 18.0.2
- iOS SDK version: 6.13.0
Capacitor
Fixed
- Resolved potential NullPointerException when execution state events are being sent
freeRASP 2.4.0
- Android SDK version: 18.0.2
- iOS SDK version: 6.13.0
Capacitor
Added
- Added cache for freeRASP callbacks when listener is not registered with the app
- Added API for
automationcallback intoThreatEventActions(Android only)
Fixed
- Prevent multiple registration of the freeRASP listeners on the native side
Changed
- Updated compile and target SDK versions to 36 on Android
Android
Added
- Added support for
KernelSUto the existing root detection capabilities - Added support for
HMAto the existing root detection capabilities - Added new malware detection capabilities
- Added
onAutomationDetected()callback toThreatDetectedinterface- We are introducing a new capability, detecting whether the device is being automated using tools like Appium
- Added value restrictions to
externalId- Method
storeExternalId()now returnsExternalIdResult, which indicatesSuccessorErrorwhenexternalIdviolates restrictions
- Method
Fixed
- Fixed exception handling for the KeyStore
getEntryoperation - Fixed issue in
ScreenProtectorconcerning theonScreenRecordingDetectedinvocations - Merged internal shared libraries into a single one, reducing the final APK size
- Fixed bug related to key storing in keystore type detection (hw-backed keystore check)
- Fixed manifest queries merge
Changed
- Removed unused library
tmlib - Refactoring of signature verification code
- Updated compile and target API to 36
- Improved root detection capabilities
- Detection of wireless ADB added to ADB detections
freeRASP 2.3.0
- Android SDK version: 17.0.1
- iOS SDK version: 6.13.0
Capacitor
Added
- Added
killOnBypasstoTalsecConfigthat configures if the app should be terminated when the threat callbacks are suppressed/hooked by an attacker (Android only) (Issue 65) - Added API for
timeSpoofingcallback intoThreatEventActions(Android only) - Added API for
unsecureWificallback intoThreatEventActions(Android only) - Added API for
allChecksFinishedcallback into newRaspExecutionStateEventActionsobject - Added matched permissions to
SuspiciousAppInfoobject when malware detection reason issuspiciousPermission
Fixed
- Resolved potential collision in threat identifiers
Android
Added
- Added
killOnBypassmethod to theTalsecConfig.Builderthat configures if the app should be terminated when the threat callbacks are suppressed/hooked by an attacker Issue 65 - We are introducing a new capability, detecting whether the device time has been tampered with (
timeSpoofing) - We are introducing a new capability, detecting whether the location is being spoofed on the device (
locationSpoofing) - We are introducing a new capability, detection of unsecure WiFi (
unecureWifi) - Removed deprecated functionality
Pbkdf2Nativeand both related native libraries (libpbkdf2_native.soandlibpolarssl.so) - Added new
RaspExecutionStatewhich containsonAllChecksFinished()method, which is triggered after all checks are completed. - Added matched permissions to
SuspiciousAppInfoobject when malware detection reason issuspiciousPermission - New option to start Talsec,
Talsec.start()takes new parameterTalsecModethat determines the dispatcher thread of initialization and sync checks (uses background thread by default) - Capability to check if another app has an option
REQUEST_INSTALL_PACKAGESenabled in the system settings to malware detection
Fixed
- Root detection related bugs causing false positives
- ANR issue caused by
registerScreenCaptureCallback()method on the main thread NullPointerExceptionwhen checking key alias in Keystore on Android 7JaCoCoissue causingMethodTooLargeExceptionduring instrumentationDeadApplicationExceptionwhen callingSettings.Global.getIntorSettings.Secure.getInton invalid contextAndroidKeyStorecrashes causingjava.util.concurrent.TimeoutExceptionwhen callingfinalize()method onCipher(GC issues)- Fixed issue with late initializers and
TalsecModecoroutines scopes
Changed
- Deprecated Nexus repository removed (GCP artifact registry is the main supported distribution repository)
- Shortened the value of threat detection interval
- Refactoring of internal architecture of SDK that newly uses Coroutines to manage threading
- Update of internal dependencies and security libraries
iOS
Changed
- Updated internal dependencies
freeRASP 2.2.2
- Android SDK version: 17.0.1
- iOS SDK version: 6.13.0
Capacitor
Added
- Added
killOnBypasstoTalsecConfigthat configures if the app should be terminated when the threat callbacks are suppressed/hooked by an attacker (Android only) (Issue 65) - Added API for
timeSpoofingcallback intoThreatEventActions(Android only) - Added API for
unsecureWificallback intoThreatEventActions(Android only) - Added API for
allChecksFinishedcallback into newRaspExecutionStateEventActionsobject - Added matched permissions to
SuspiciousAppInfoobject when malware detection reason issuspiciousPermission
Fixed
- Resolved potential collision in threat identifiers
Android
Added
- Added
killOnBypassmethod to theTalsecConfig.Builderthat configures if the app should be terminated when the threat callbacks are suppressed/hooked by an attacker Issue 65 - We are introducing a new capability, detecting whether the device time has been tampered with (
timeSpoofing) - We are introducing a new capability, detecting whether the location is being spoofed on the device (
locationSpoofing) - We are introducing a new capability, detection of unsecure WiFi (
unecureWifi) - Removed deprecated functionality
Pbkdf2Nativeand both related native libraries (libpbkdf2_native.soandlibpolarssl.so) - Added new
RaspExecutionStatewhich containsonAllChecksFinished()method, which is triggered after all checks are completed. - Added matched permissions to
SuspiciousAppInfoobject when malware detection reason issuspiciousPermission - New option to start Talsec,
Talsec.start()takes new parameterTalsecModethat determines the dispatcher thread of initialization and sync checks (uses background thread by default) - Capability to check if another app has an option
REQUEST_INSTALL_PACKAGESenabled in the system settings to malware detection
Fixed
- Root detection related bugs causing false positives
- ANR issue caused by
registerScreenCaptureCallback()method on the main thread NullPointerExceptionwhen checking key alias in Keystore on Android 7JaCoCoissue causingMethodTooLargeExceptionduring instrumentationDeadApplicationExceptionwhen callingSettings.Global.getIntorSettings.Secure.getInton invalid contextAndroidKeyStorecrashes causingjava.util.concurrent.TimeoutExceptionwhen callingfinalize()method onCipher(GC issues)- Fixed issue with late initializers and
TalsecModecoroutines scopes
Changed
- Deprecated Nexus repository removed (GCP artifact registry is the main supported distribution repository)
- Shortened the value of threat detection interval
- Refactoring of internal architecture of SDK that newly uses Coroutines to manage threading
- Update of internal dependencies and security libraries
iOS
Changed
- Updated internal dependencies
freeRASP 2.2.1
Android
Fixed
- Issue with empty
SharedPreferencesfiles
Changed
- Decreased version of
Kotlinto2.0.0
freeRASP 2.2.0
- iOS SDK version: 6.12.1
- Android SDK version: 16.0.1
Android
Added
- Added support for 16 KB memory page sizes
- Added
multiInstancecallback- We are introducing a new capability, detecting whether the application is running in various multi instancing environments
Changed
- The ADB service running as a root is a signal for root detection
- Improved emulator detection
- Internal security improvements
Fixed
- Removed malware report duplicates
iOS
Added
- Added palera1n jailbreak detection
Changed
- Improved Dopamine jailbreak detection
Fixed
- Resolved memory-related stability issues.
freeRASP 2.1.0
- iOS SDK version: 6.11.0
- Android SDK version: 15.1.0
Capacitor
Added
- Added interface for screenshot / screen recording blocking on iOS
- Added interface for external ID storage
Android
Added
- Added externalId to put an integrator-specified custom identifier into the logs.
- Added eventId to the logs, which is unique per each log. It allows traceability of the same log across various systems.
Changed
- New root detection checks added
iOS
Added
- Added externalId to put an integrator-specified custom identifier into the logs.
- Added eventId to the logs, which is unique per each log. It allows traceability of the same log across various systems.
- Screen capture protection obscuring app content in screenshots and screen recordings preventing unauthorized content capture. Refer to the freeRASP integration documentation.
Fixed
- Resolved an issue with the screen recording detection.
- Resolved an issue that prevented Xcode tests from running correctly.