diff --git a/Plugins/Android/freeRASP.androidlib/build.gradle b/Plugins/Android/freeRASP.androidlib/build.gradle index 5033411..9ab003d 100644 --- a/Plugins/Android/freeRASP.androidlib/build.gradle +++ b/Plugins/Android/freeRASP.androidlib/build.gradle @@ -33,7 +33,7 @@ android { dependencies { compileOnly files('libs/unity-classes.jar') // freeRASP SDK - implementation 'com.aheaditec.talsec.security:TalsecSecurity-Community:15.1.0' + implementation 'com.aheaditec.talsec.security:TalsecSecurity-Community:17.0.0' // test dep implementation("com.google.code.gson:gson:2.13.1") } diff --git a/Plugins/Android/freeRASP.androidlib/src/main/java/com/unity/free/rasp/Controller.java b/Plugins/Android/freeRASP.androidlib/src/main/java/com/unity/free/rasp/Controller.java index c20f8f9..021e094 100644 --- a/Plugins/Android/freeRASP.androidlib/src/main/java/com/unity/free/rasp/Controller.java +++ b/Plugins/Android/freeRASP.androidlib/src/main/java/com/unity/free/rasp/Controller.java @@ -126,5 +126,25 @@ public void onADBEnabledDetected() { @Override public void onSystemVPNDetected() { UnityPlayer.UnitySendMessage(this.gameObjectName, "scanResult", "onSystemVPN"); - } + } + + @Override + public void onMultiInstanceDetected() { + UnityPlayer.UnitySendMessage(this.gameObjectName, "scanResult", "onMultiInstance"); + } + + @Override + public void onUnsecureWifiDetected() { + UnityPlayer.UnitySendMessage(this.gameObjectName, "scanResult", "onUnsecureWiFi"); + } + + @Override + public void onTimeSpoofingDetected() { + UnityPlayer.UnitySendMessage(this.gameObjectName, "scanResult", "onTimeSpoofing"); + } + + @Override + public void onLocationSpoofingDetected() { + UnityPlayer.UnitySendMessage(this.gameObjectName, "scanResult", "onLocationSpoofing"); + } } \ No newline at end of file diff --git a/Plugins/freeRASP/Talsec.cs b/Plugins/freeRASP/Talsec.cs index 510344f..9b90f8e 100644 --- a/Plugins/freeRASP/Talsec.cs +++ b/Plugins/freeRASP/Talsec.cs @@ -178,6 +178,18 @@ private void scanResult(string talsecScanResultCallback) case "onADBEnabled": this.threatDetectedCallback.onADBEnabled(); break; + case "onMultiInstance": + this.threatDetectedCallback.onMultiInstance(); + break; + case "onUnsecureWiFi": + this.threatDetectedCallback.onUnsecureWiFi(); + break; + case "onTimeSpoofing": + this.threatDetectedCallback.onTimeSpoofing(); + break; + case "onLocationSpoofing": + this.threatDetectedCallback.onLocationSpoofing(); + break; } } } diff --git a/Plugins/iOS/NativeBridge.swift b/Plugins/iOS/NativeBridge.swift index b034e63..cb26f16 100644 --- a/Plugins/iOS/NativeBridge.swift +++ b/Plugins/iOS/NativeBridge.swift @@ -40,6 +40,8 @@ extension SecurityThreatCenter: SecurityThreatHandler { message = "onScreenshot" case .screenRecording: message = "screenRecording" + case .timeSpoofing: + message = "onTimeSpoofing" } message.withCString { messagePtr in diff --git a/Samples/freeRASPTestApp/Scripts/Game.cs b/Samples/freeRASPTestApp/Scripts/Game.cs index 0c1c488..2a2238a 100644 --- a/Samples/freeRASPTestApp/Scripts/Game.cs +++ b/Samples/freeRASPTestApp/Scripts/Game.cs @@ -102,4 +102,20 @@ public void onSystemVPN() { Debug.Log("Unity - System VPN detected"); } + public void onMultiInstance() { + Debug.Log("Unity - Multi instance detected"); + } + + public void onUnsecureWiFi() { + Debug.Log("Unity - Unsecure WiFi detected"); + } + + public void onTimeSpoofing() { + Debug.Log("Unity - Time spoofing detected"); + } + + public void onLocationSpoofing() { + Debug.Log("Unity - Location spoofing detected"); + } + } \ No newline at end of file