safesecurelibs 2.1.2+5  safesecurelibs: ^2.1.2+5 copied to clipboard
safesecurelibs: ^2.1.2+5 copied to clipboard
A Flutter package for checking device security status, including root detection, developer mode, and dangerous apps.
SafeSecureLibs #
 
A Flutter package for checking device security status including root detection, developer mode, and dangerous apps detection on Android devices.
Features #
- Developer Mode Detection: Check if developer options are enabled
- Root Access Detection: Detect if the device is rooted
- Magisk Detection: Identify Magisk root management installation
- Dangerous Apps Detection: Detect potentially harmful apps installed on the device
Installation #
Add this to your package's pubspec.yaml file:
dependencies:
  safe_secure_libs: ^latest
Then run:
flutter pub get
Usage #
Here's a complete example of how to implement the security checks in your Flutter app:
import 'package:flutter/material.dart';
import 'package:safesecurelibs/safesecurelibs.dart';
void main() {
  runApp(const MyApp());
}
class MyApp extends StatelessWidget {
  const MyApp({super.key});
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'Security Check Demo',
      theme: ThemeData(
        primarySwatch: Colors.blue,
      ),
      home: const SecurityCheckPage(),
    );
  }
}
class SecurityCheckPage extends StatefulWidget {
  const SecurityCheckPage({super.key});
  @override
  State<SecurityCheckPage> createState() => _SecurityCheckPageState();
}
class _SecurityCheckPageState extends State<SecurityCheckPage> {
  Map<String, dynamic> _securityStatus = {
    'isDevModeEnabled': false,
    'isRooted': false,
    'isMagiskDetected': false,
    'hasDangerousApps': false,
    'isSecure': true,
    'deviceInfo': {}
  };
  @override
  void initState() {
    super.initState();
    _checkSecurity();
  }
  Future<void> _checkSecurity() async {
    final status = await CheckerMethode.checkSecurityStatus();
    setState(() {
      _securityStatus = status;
    });
  }
  @override
  Widget build(BuildContext context) {
    final deviceInfo = _securityStatus['deviceInfo'] as Map<dynamic, dynamic>? ?? {};
    
    return Scaffold(
      appBar: AppBar(
        title: const Text('Security Check'),
      ),
      body: ListView(
        padding: const EdgeInsets.all(16.0),
        children: [
          _buildSecurityItem(
            'Developer Mode',
            _securityStatus['isDevModeEnabled'] ?? false,
          ),
          _buildSecurityItem(
            'Root Access',
            _securityStatus['isRooted'] ?? false,
          ),
          _buildSecurityItem(
            'Magisk Detected',
            _securityStatus['isMagiskDetected'] ?? false,
          ),
          _buildSecurityItem(
            'Dangerous Apps',
            _securityStatus['hasDangerousApps'] ?? false,
          ),
          _buildSecurityItem(
            'Device Security',
            _securityStatus['isSecure'] ?? true,
          ),
          const SizedBox(height: 20),
          Card(
            child: Padding(
              padding: const EdgeInsets.all(16.0),
              child: Column(
                crossAxisAlignment: CrossAxisAlignment.start,
                children: [
                  Text('Device Information',
                      style: Theme.of(context).textTheme.titleLarge),
                  const SizedBox(height: 8),
                  Text('Model: ${deviceInfo['model']}'),
                  Text('Brand: ${deviceInfo['brand']}'),
                  Text('Android Version: ${deviceInfo['version']}'),
                  Text('SDK: ${deviceInfo['sdkInt']}'),
                ],
              ),
            ),
          ),
          const SizedBox(height: 20),
          ElevatedButton(
            onPressed: _checkSecurity,
            child: const Text('Refresh Security Status'),
          ),
        ],
      ),
    );
  }
}
  Widget _buildSecurityItem(String title, bool isDetected) {
    return Card(
      margin: const EdgeInsets.symmetric(vertical: 8.0),
      child: ListTile(
        title: Text(title),
        trailing: Icon(
          isDetected ? Icons.warning : Icons.check_circle,
          color: isDetected ? Colors.red : Colors.green,
        ),
        subtitle: Text(
          isDetected ? 'Security Risk Detected' : 'Secure',
          style: TextStyle(
            color: isDetected ? Colors.red : Colors.green,
          ),
        ),
      ),
    );
  }
Platform Support #
| Platform | Support | 
|---|---|
| Android | ✅ | 
| iOS | ❌ | 
| Linux | ❌ | 
| Windows | ❌ | 
Security Checks Details #
| Security Check | Status | 
|---|---|
| Developer Mode | ✅ | 
| Root Access | ✅ | 
| Magisk Root | ✅ | 
| Dangerous Apps | ✅ | 
| Overall Security | ✅ | 
Device Information #
| Property | Value | 
|---|---|
| Manufacturer | ✅ | 
| Brand | ✅ | 
| Model | ✅ | 
| Device | ✅ | 
| Product | ✅ | 
| Android Version | ✅ | 
| SDK Level | ✅ | 
| Fingerprint | ✅ | 
Developer Mode Detection #
Checks if developer options are enabled in the device settings. This can indicate potential security risks as developer options may enable USB debugging and other sensitive features.
Root Detection #
Performs various checks to determine if the device has been rooted, including:
- Checking for common root management apps
- Scanning for su binary in various system locations
- Verifying system partition mount status
Magisk Detection #
Specifically checks for the presence of Magisk root management tool and related modifications to the system.
Dangerous Apps Detection #
Scans for the presence of potentially harmful applications, including:
- Root management apps
- System modification tools
- Security bypass applications
The following packages are detected:
com.topjohnwu.magisk
com.thirdparty.superuser
eu.chainfire.supersu
com.noshufou.android.su
com.koushikdutta.superuser
com.zachspong.temprootremovejb
com.ramdroid.appquarantine
com.formyhm.hideroot
com.amphoras.hidemyroot
com.saurik.substrate
de.robv.android.xposed
com.devadvance.rootcloak
com.devadvance.rootcloakplus
com.android.vending.billing.InAppBillingService.COIN
com.chelpus.lackypatch
com.kingroot.kinguser
com.kingo.root
com.smedialink.oneclickroot
com.zhiqupk.root.global
com.alephzain.framaroot
com.koushikdutta.rommanager
com.dimonvideo.luckypatcher
com.chelpus.luckypatcher
com.yellowes.su
com.koushikdutta.superuser
com.thirdparty.superuser
com.bitcnew.blockchain
com.noshufou.android.su.elite
com.jrummy.root.browserfree
com.jrummy.busybox.installer
The following path are detected:
"/sbin/magisk",
"/system/xbin/magisk",
"/system/bin/magisk",
"/data/adb/magisk",
"/data/data/com.topjohnwu.magisk",
"/system/app/Superuser.apk",
"/sbin/su",
"/system/bin/su",
"/system/xbin/su",
"/data/local/xbin/su",
"/data/local/bin/su",
"/system/sd/xbin/su",
"/system/bin/failsafe/su",
"/data/local/su",
"/su/bin/su"
Configuration #
Android #
No additional configuration required. The package automatically handles all necessary Android-specific implementations.
iOS #
iOS support is currently not available....