Skip to content

Commit

Permalink
release: freeRASP 6.6.0
Browse files Browse the repository at this point in the history
  • Loading branch information
tompsota committed Jun 4, 2024
1 parent 7023682 commit 463df0a
Show file tree
Hide file tree
Showing 65 changed files with 2,729 additions and 1,712 deletions.
21 changes: 21 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,24 @@
# freeRASP 6.6.0

## What's new in 6.6.0?

- 🔎 Added new threat `Threat.systemVPN` for VPN detection
- 🔎 Added new callback `onSystemVPN` in `ThreatCallback` for handling `Threat.systemVPN` threat
- ❗ Increased minimal Dart SDK version to **2.18.0** and minimal Flutter version to **3.3.0**
- ⚡ Resolved issue in logging caused by the device's default system locale.
- ✔️ Updated CA bundle
- 📄 Documentation updates

## Android

- 🔎 Added new threat `Threat.devMode` for detecting Developer mode on Android
- 🔎 Added new callback `onDevMode` in `ThreatCallback` for handling `Threat.devMode` threat
- ✔️ Increased the version of the GMS dependency

## iOS

- ⚡ Passcode check is now periodical

# freeRASP 6.5.1

## What's new in 6.5.1?
Expand Down
13 changes: 6 additions & 7 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -70,15 +70,12 @@ We will guide you step-by-step, but you can always check the expected result in

## Step 1: Prepare freeRASP library

Add dependency to your `pubspec.yaml` file
Run following command inside the project directory to add the freeRASP dependency:

```yaml
dependencies:
freerasp: 6.5.1
```bash
flutter pub add freerasp
```

and run `pub get`

### iOS setup

**If you are upgrading from a previous version of freeRASP**, please remove the old `TalsecRuntime.xcframework`
Expand Down Expand Up @@ -141,7 +138,7 @@ void main() {
signingCertHashes: [
'AKoRu...'
],
supportedStores: ['com.sec.android.app.samsungapps'],
supportedStores: ['some.other.store'],
),
/// For iOS
Expand Down Expand Up @@ -440,6 +437,8 @@ freeRASP is freemium software i.e. there is a Fair Usage Policy (FUP) that impos
<li>Screen lock control</li>
<li>Google Play Services enabled/disabled</li>
<li>Last security patch update</li>
<li>System VPN control</li>
<li>Developer mode control</li>
</ul>
</td>
<td>yes</td>
Expand Down
2 changes: 1 addition & 1 deletion android/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -56,5 +56,5 @@ dependencies {
implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version"

// Talsec SDK
implementation 'com.aheaditec.talsec.security:TalsecSecurity-Community-Flutter:9.1.0'
implementation 'com.aheaditec.talsec.security:TalsecSecurity-Community-Flutter:9.6.0'
}
4 changes: 4 additions & 0 deletions android/src/main/kotlin/com/aheaditec/freerasp/Threat.kt
Original file line number Diff line number Diff line change
Expand Up @@ -27,4 +27,8 @@ internal sealed class Threat(val value: Int) {
object PrivilegedAccess : Threat(44506749)

object SecureHardwareNotAvailable : Threat(1564314755)

object SystemVPN : Threat(659382561)

object DevMode : Threat(45291047)
}
Original file line number Diff line number Diff line change
Expand Up @@ -65,6 +65,14 @@ internal object PluginThreatHandler : ThreatDetected, DeviceState {
notify(Threat.SecureHardwareNotAvailable)
}

override fun onSystemVPNDetected() {
notify(Threat.SystemVPN)
}

override fun onDeveloperModeDetected() {
notify(Threat.DevMode)
}

private fun notify(threat: Threat) {
listener?.threatDetected(threat) ?: detectedThreats.add(threat)
}
Expand Down
2 changes: 1 addition & 1 deletion example/ios/Podfile.lock
Original file line number Diff line number Diff line change
Expand Up @@ -19,4 +19,4 @@ SPEC CHECKSUMS:

PODFILE CHECKSUM: ef19549a9bc3046e7bb7d2fab4d021637c0c58a3

COCOAPODS: 1.11.3
COCOAPODS: 1.15.2
1 change: 1 addition & 0 deletions example/lib/main.dart
Original file line number Diff line number Diff line change
Expand Up @@ -93,6 +93,7 @@ class HomePage extends ConsumerWidget {
final currentThreat = threatMap.keys.elementAt(index);
final isDetected = threatMap[currentThreat]!;
return ListTile(
// ignore: sdk_version_since
title: Text(currentThreat.name),
subtitle: Text(isDetected ? 'Danger' : 'Safe'),
trailing: SafetyIcon(isDetected: isDetected),
Expand Down
6 changes: 6 additions & 0 deletions example/lib/threat_notifier.dart
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,8 @@ class ThreatNotifier extends StateNotifier<Map<Threat, bool>> {
_updateThreat(Threat.secureHardwareNotAvailable),
onSimulator: () => _updateThreat(Threat.simulator),
onUnofficialStore: () => _updateThreat(Threat.unofficialStore),
onSystemVPN: () => _updateThreat(Threat.systemVPN),
onDevMode: () => _updateThreat(Threat.devMode),
);

Talsec.instance.attachListener(callback);
Expand All @@ -33,6 +35,10 @@ class ThreatNotifier extends StateNotifier<Map<Threat, bool>> {
threatMap.remove(Threat.deviceId);
}

if (Platform.isIOS) {
threatMap.remove(Threat.devMode);
}

return threatMap;
}

Expand Down
3 changes: 3 additions & 0 deletions ios/Classes/TalsecHandlers.swift
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@ private let missingSecureEnclaveValue = 1564314755
private let deviceChangeValue = 1806586319
private let deviceIDValue = 1514211414
private let unofficialStoreValue = 629780916
private let systemVPNValue = 659382561

/// Extension with submits events to plugin
extension SecurityThreatCenter: SecurityThreatHandler {
Expand Down Expand Up @@ -46,6 +47,8 @@ extension SecurityThreat {
return deviceIDValue
case .unofficialStore:
return unofficialStoreValue
case .systemVPN:
return systemVPNValue
@unknown default:
return unknownValue
}
Expand Down
10 changes: 5 additions & 5 deletions ios/TalsecRuntime.xcframework/Info.plist
Original file line number Diff line number Diff line change
Expand Up @@ -6,30 +6,30 @@
<array>
<dict>
<key>LibraryIdentifier</key>
<string>ios-arm64_x86_64-simulator</string>
<string>ios-arm64</string>
<key>LibraryPath</key>
<string>TalsecRuntime.framework</string>
<key>SupportedArchitectures</key>
<array>
<string>arm64</string>
<string>x86_64</string>
</array>
<key>SupportedPlatform</key>
<string>ios</string>
<key>SupportedPlatformVariant</key>
<string>simulator</string>
</dict>
<dict>
<key>LibraryIdentifier</key>
<string>ios-arm64</string>
<string>ios-arm64_x86_64-simulator</string>
<key>LibraryPath</key>
<string>TalsecRuntime.framework</string>
<key>SupportedArchitectures</key>
<array>
<string>arm64</string>
<string>x86_64</string>
</array>
<key>SupportedPlatform</key>
<string>ios</string>
<key>SupportedPlatformVariant</key>
<string>simulator</string>
</dict>
</array>
<key>CFBundlePackageType</key>
Expand Down
Binary file modified ios/TalsecRuntime.xcframework/_CodeSignature/CodeDirectory
Binary file not shown.
Binary file modified ios/TalsecRuntime.xcframework/_CodeSignature/CodeRequirements-1
Binary file not shown.
Loading

0 comments on commit 463df0a

Please sign in to comment.