SafeScan utilizes ADB-OTG and extends its functionality to create a comprehensive spyware detection tool. The project aims to assist victims of Intimate Partner Violence (IPV) by providing a secure way to detect and manage potential spyware and privacy risks on their devices.
This repository builds upon the original SafeScan project, which provided comprehensive app and privacy scanning for source devices. The current version extends these capabilities by:
- Integrating ADB functionality for target device scanning
- Maintaining consistent connection state across the application
- Implementing modular feature migration from the original SafeScan
- Enhancing security and reliability for dual-device operations
-
Device Connection
- USB OTG connection between devices without requiring root access
- ADB command execution from source to target device
- Device selection dropdown for managing source/target operations
-
App Detection
- Scanning of installed applications against known spyware/dual-use app database
- Risk categorization system:
- Red: Off-store downloads (highest risk)
- Yellow: Known spyware applications
- Light Blue: Dual-use applications (potential for misuse)
- Integration with remote CSV database for up-to-date threat detection
-
User Interface
- Clean, intuitive interface for both technical and non-technical users
- Clear visual indicators for connection status and scan results
- Informative permission descriptions and privacy recommendations
- High Priority
- App icon retrieval for detected applications
- Comprehensive permission analysis for detected applications
- Direct Android settings access for listed applications
- ADB connection stability improvements
- Global ADB connection state management
- Upcoming Features
- Privacy Scan implementation (migration from original SafeScan)
- Device privacy settings analysis
- Social media privacy recommendations
- Google account security checkup
- Target device support for privacy scanning
- Note: The Privacy Scan feature from the original SafeScan repository is currently not implemented in this version. The Privacy Scan tab exists in the interface but is non-functional until the feature migration is complete.
-
Enhanced Security
- Improved error handling in USB connections
- Added timeout protection for ADB operations
- Implemented thread-safe operations
-
Extended Functionality
- Added spyware detection capabilities
- Implemented dual-device scanning
- Integrated with external threat database
-
Improved Architecture
- Modular code structure
- Clear separation of concerns
- Enhanced documentation
-
Core Technologies
- Java (Android native development)
- ADB Protocol Implementation
- AndroidX Libraries
- Flutter/Dart (UI and business logic)
-
Key Components
- ADBLib (Modified for enhanced security)
- USB Host API
- Android Package Manager
- Flutter Method Channels
- Android device with USB Host support
- USB OTG cable
- Target Android device
- Clone the repository:
git clone https://github.com/BriLeighk/SafeScan.git
- Build the project:
./gradlew build
- Connect source device (with SafeScan installed) to target device via USB
- Launch SafeScan
- Establish ADB connection
- Select desired scan type (App, Privacy coming soon)
- View and analyze results
- Original ADB-OTG project by KhunHtetzNaing
- ADB library developed by wuxudong