react-native-malwarelytics
Version: 
Malwarelytics for React Native protects your banking or fintech app from a broad range of mobile security threats with an industry-leading mobile threat intelligence solution.
60 lines (41 loc) • 6.8 kB
Markdown
# Version 1.1.x
There are breaking changes compared to version 1.0.x. The breaking changes involve configuration changes and changes in `MalwarelyticsRaspListener`. Other changes are API additions.
## Changes to 1.0.x
Android configuration has been adjusted to better mirror that of the native library:
| Old config item                                               | New config item                                                    | Notes                                                                                                                                                                                                                          |
|---------------------------------------------------------------|--------------------------------------------------------------------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| `debugger?: MalwarelyticsAndroidRaspDetectionConfig`          | `debugger?: MalwarelyticsAndroidRaspDebuggerDetectionConfig`       | Added new `debuggerTypes?: DebuggerType[]` item to the structure.                                                                                                                                                              |
| `adb?: MalwarelyticsAndroidRaspDetectionConfig`               | `adb?: MalwarelyticsAndroidRaspAdbDetectionConfig`                 | Removed invalid `NO_ACTION` action for this configuration.                                                                                                                                                                     |
| `screenReaders?: MalwarelyticsAndroidRaspScreenReadersConfig` | `screenReader?: MalwarelyticsAndroidRaspScreenReaderBlockConfig`   | Renamed to `screenReader`. Item `block?: boolean` changed into `action: MalwarelyticsAndroidRaspBlockAction`.                                                                                                                  |
| `blockScreenshots?: boolean`                                  | `screenshot?: MalwarelyticsAndroidRaspBlockConfig`                 | Renamed to `screenshot`. Type changed to structure `MalwarelyticsAndroidRaspBlockConfig`. Behavior defined by `action: MalwarelyticsAndroidRaspBlockAction` item.                                                              |
| `tapjacking?: MalwarelyticsAndroidRaspTapjackingBlockConfig`  | `tapjacking?: MalwarelyticsAndroidRaspTapjackingBlockConfig`       | Item `block?: boolean` changed into `action: MalwarelyticsAndroidRaspBlockAction`.                                                                                                                                             |
| `customProcessName?: string`                                  | `processName?: MalwarelyticsAndroidRaspProcessNameConfig`          | Added common new item replacing both previous process name configurations. The structure contains `action` item turning feature on/off and `customProcessName?: string` specifying whehter to use custom name or a random one. |
| `useStealthyProcessName?: boolean`                            | `processName?: MalwarelyticsAndroidRaspProcessNameConfig`          | Added common new item replacing both previous process name configurations. The structure contains `action` item turning feature on/off and `customProcessName?: string` specifying whehter to use custom name or a random one. |
|  NOTHING                                                      | `activeCall?: MalwarelyticsAndroidRaspSimpleDetectionConfig`       | New item for active call detection configuration.                                                                                                                                                                              | 
|  NOTHING                                                      | `appPresence?: MalwarelyticsAndroidRaspAppPresenceDetectionConfig` | New item for app presence detection configuration.                                                                                                                                                                             |
Other changes in configuration:
| Config structure             | Config item                                         | Notes                                        |
|------------------------------|-----------------------------------------------------|----------------------------------------------|
| `MalwarelyticsAndroidConfig` | `fingerprint?: MalwarelyticsAndroidFingerprintType` | Android device fingerprinting configuration. |
New Android RASP methods:
| Method                                           | Description                                                                |
|--------------------------------------------------|----------------------------------------------------------------------------|
| `isOnCall(): Promise<boolean>`                   | For both platofrms now. Previously it was Apple only.                      |
| `getActiveCallInfo(): Promise<ActiveCallInfo>`   | For obtaining information about active call.                               |
| `getAppPresenceInfo(): Promise<AppPresenceInfo>` | For obtaining information about app presence.                              |
| `getBiometryInfo(): Promise<BiometryInfo>`       | For obtaining information about biometry data configuraiton on the device. |
| `getDebuggerInfo(): Promise<DebuggerInfo>`       | For obtaining detailed information about debugger detection                |
New `MalwarelyticsRaspListener` callbacks:
| Callback Method                                    | Description                                        |
|----------------------------------------------------|----------------------------------------------------|
| `activeCallDetected(info: ActiveCallInfo)`         | Notifying about changes in active call detection.  |
| `appPresenceChangeDetected(info: AppPresenceInfo)` | Notifying about changes in app presence detection. |
Other API changes:
| Structure   | Change                 | Description                                                      |
|-------------|------------------------|------------------------------------------------------------------|
| `ApkThreat` | `flags: MalwareFlag[]` | Added set of malware flags - malware types and malware families. |
## Native Components
The following native Malwarelytics components are used under the hood:
- [Malwarelytics for iOS](https://github.com/wultra/malwarelytics-apple) version `2.1.x`
- [Malwarelytics for Android](https://github.com/wultra/antivirus) version `1.0.x`
It's recommended to use React Native `0.71+` for your application.