Skip to content

Commit 463df0a

Browse files
committed
release: freeRASP 6.6.0
1 parent 7023682 commit 463df0a

File tree

65 files changed

+2729
-1712
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

65 files changed

+2729
-1712
lines changed

CHANGELOG.md

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,24 @@
1+
# freeRASP 6.6.0
2+
3+
## What's new in 6.6.0?
4+
5+
- 🔎 Added new threat `Threat.systemVPN` for VPN detection
6+
- 🔎 Added new callback `onSystemVPN` in `ThreatCallback` for handling `Threat.systemVPN` threat
7+
- ❗ Increased minimal Dart SDK version to **2.18.0** and minimal Flutter version to **3.3.0**
8+
- ⚡ Resolved issue in logging caused by the device's default system locale.
9+
- ✔️ Updated CA bundle
10+
- 📄 Documentation updates
11+
12+
## Android
13+
14+
- 🔎 Added new threat `Threat.devMode` for detecting Developer mode on Android
15+
- 🔎 Added new callback `onDevMode` in `ThreatCallback` for handling `Threat.devMode` threat
16+
- ✔️ Increased the version of the GMS dependency
17+
18+
## iOS
19+
20+
- ⚡ Passcode check is now periodical
21+
122
# freeRASP 6.5.1
223

324
## What's new in 6.5.1?

README.md

Lines changed: 6 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -70,15 +70,12 @@ We will guide you step-by-step, but you can always check the expected result in
7070

7171
## Step 1: Prepare freeRASP library
7272

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

75-
```yaml
76-
dependencies:
77-
freerasp: 6.5.1
75+
```bash
76+
flutter pub add freerasp
7877
```
7978

80-
and run `pub get`
81-
8279
### iOS setup
8380

8481
**If you are upgrading from a previous version of freeRASP**, please remove the old `TalsecRuntime.xcframework`
@@ -141,7 +138,7 @@ void main() {
141138
signingCertHashes: [
142139
'AKoRu...'
143140
],
144-
supportedStores: ['com.sec.android.app.samsungapps'],
141+
supportedStores: ['some.other.store'],
145142
),
146143
147144
/// For iOS
@@ -440,6 +437,8 @@ freeRASP is freemium software i.e. there is a Fair Usage Policy (FUP) that impos
440437
<li>Screen lock control</li>
441438
<li>Google Play Services enabled/disabled</li>
442439
<li>Last security patch update</li>
440+
<li>System VPN control</li>
441+
<li>Developer mode control</li>
443442
</ul>
444443
</td>
445444
<td>yes</td>

android/build.gradle

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -56,5 +56,5 @@ dependencies {
5656
implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version"
5757

5858
// Talsec SDK
59-
implementation 'com.aheaditec.talsec.security:TalsecSecurity-Community-Flutter:9.1.0'
59+
implementation 'com.aheaditec.talsec.security:TalsecSecurity-Community-Flutter:9.6.0'
6060
}

android/src/main/kotlin/com/aheaditec/freerasp/Threat.kt

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,4 +27,8 @@ internal sealed class Threat(val value: Int) {
2727
object PrivilegedAccess : Threat(44506749)
2828

2929
object SecureHardwareNotAvailable : Threat(1564314755)
30+
31+
object SystemVPN : Threat(659382561)
32+
33+
object DevMode : Threat(45291047)
3034
}

android/src/main/kotlin/com/aheaditec/freerasp/handlers/PluginThreatHandler.kt

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -65,6 +65,14 @@ internal object PluginThreatHandler : ThreatDetected, DeviceState {
6565
notify(Threat.SecureHardwareNotAvailable)
6666
}
6767

68+
override fun onSystemVPNDetected() {
69+
notify(Threat.SystemVPN)
70+
}
71+
72+
override fun onDeveloperModeDetected() {
73+
notify(Threat.DevMode)
74+
}
75+
6876
private fun notify(threat: Threat) {
6977
listener?.threatDetected(threat) ?: detectedThreats.add(threat)
7078
}

example/ios/Podfile.lock

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,4 +19,4 @@ SPEC CHECKSUMS:
1919

2020
PODFILE CHECKSUM: ef19549a9bc3046e7bb7d2fab4d021637c0c58a3
2121

22-
COCOAPODS: 1.11.3
22+
COCOAPODS: 1.15.2

example/lib/main.dart

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -93,6 +93,7 @@ class HomePage extends ConsumerWidget {
9393
final currentThreat = threatMap.keys.elementAt(index);
9494
final isDetected = threatMap[currentThreat]!;
9595
return ListTile(
96+
// ignore: sdk_version_since
9697
title: Text(currentThreat.name),
9798
subtitle: Text(isDetected ? 'Danger' : 'Safe'),
9899
trailing: SafetyIcon(isDetected: isDetected),

example/lib/threat_notifier.dart

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,8 @@ class ThreatNotifier extends StateNotifier<Map<Threat, bool>> {
2020
_updateThreat(Threat.secureHardwareNotAvailable),
2121
onSimulator: () => _updateThreat(Threat.simulator),
2222
onUnofficialStore: () => _updateThreat(Threat.unofficialStore),
23+
onSystemVPN: () => _updateThreat(Threat.systemVPN),
24+
onDevMode: () => _updateThreat(Threat.devMode),
2325
);
2426

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

38+
if (Platform.isIOS) {
39+
threatMap.remove(Threat.devMode);
40+
}
41+
3642
return threatMap;
3743
}
3844

ios/Classes/TalsecHandlers.swift

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@ private let missingSecureEnclaveValue = 1564314755
1111
private let deviceChangeValue = 1806586319
1212
private let deviceIDValue = 1514211414
1313
private let unofficialStoreValue = 629780916
14+
private let systemVPNValue = 659382561
1415

1516
/// Extension with submits events to plugin
1617
extension SecurityThreatCenter: SecurityThreatHandler {
@@ -46,6 +47,8 @@ extension SecurityThreat {
4647
return deviceIDValue
4748
case .unofficialStore:
4849
return unofficialStoreValue
50+
case .systemVPN:
51+
return systemVPNValue
4952
@unknown default:
5053
return unknownValue
5154
}

ios/TalsecRuntime.xcframework/Info.plist

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -6,30 +6,30 @@
66
<array>
77
<dict>
88
<key>LibraryIdentifier</key>
9-
<string>ios-arm64_x86_64-simulator</string>
9+
<string>ios-arm64</string>
1010
<key>LibraryPath</key>
1111
<string>TalsecRuntime.framework</string>
1212
<key>SupportedArchitectures</key>
1313
<array>
1414
<string>arm64</string>
15-
<string>x86_64</string>
1615
</array>
1716
<key>SupportedPlatform</key>
1817
<string>ios</string>
19-
<key>SupportedPlatformVariant</key>
20-
<string>simulator</string>
2118
</dict>
2219
<dict>
2320
<key>LibraryIdentifier</key>
24-
<string>ios-arm64</string>
21+
<string>ios-arm64_x86_64-simulator</string>
2522
<key>LibraryPath</key>
2623
<string>TalsecRuntime.framework</string>
2724
<key>SupportedArchitectures</key>
2825
<array>
2926
<string>arm64</string>
27+
<string>x86_64</string>
3028
</array>
3129
<key>SupportedPlatform</key>
3230
<string>ios</string>
31+
<key>SupportedPlatformVariant</key>
32+
<string>simulator</string>
3333
</dict>
3434
</array>
3535
<key>CFBundlePackageType</key>

0 commit comments

Comments
 (0)