The ClearSafe tool is designed to help app developers and organizations validate their applications' compliance with Google's Data Safety requirements. This tool ensures that sensitive data usage, sharing, and permissions align with Google Play's policies, making it easier to maintain transparency and protect user privacy.
-
Static Analysis:
- Scans application source code and metadata (e.g.,
AndroidManifest.xml
) to detect sensitive data usage and permissions. - Identifies sensitive APIs such as location access, device identifiers, and contact information.
- Scans application source code and metadata (e.g.,
-
Dynamic Analysis:
- Monitors app behavior during runtime to detect API calls and network transmissions involving sensitive data.
- Flags unencrypted data transmissions and unauthorized data sharing.
-
Compliance Reports:
- Generates detailed reports highlighting compliance issues.
- Provides risk scores and actionable recommendations for resolving violations.
-
Developer-Friendly Integration:
- CLI for local analysis.
- REST API for automated integration with CI/CD pipelines.
- Interactive web dashboard for report visualization.
- Developers:
- Validate apps before submission to Google Play.
- Identify and fix data safety issues during development.
- Organizations:
- Monitor compliance across multiple apps.
- Ensure adherence to privacy regulations and Google Play policies.
- Static Analysis:
- Python (e.g.,
xml.etree
,Javaparser
,Spoon
,Dart Analyzer
) - Tools:
APKTool
,SourceKitten
- Python (e.g.,
- Dynamic Analysis:
- Frida, MobSF
- Android Emulator, Xcode Simulator
- Frameworks: FastAPI (Python) or Express.js (Node.js)
- Database: PostgreSQL (for storing reports and metadata)
- Queue: RabbitMQ or Kafka (for job processing)
- Framework: React (TypeScript)
- Styling: Tailwind CSS
- Visualization: Chart.js, D3.js
- Docker (containerization)
- GitHub Actions or GitLab CI/CD (pipeline integration)
- Python 3.8+
- Node.js 16+
- Docker (optional for containerized setup)
- Clone the Repository:
git clone https://github.com/Alphaxide/clearsafe.git cd clearsafe
- Set Up the Backend:
cd backend pip install -r requirements.txt python main.py
- Set Up the Frontend:
cd frontend npm install npm start
- Run the CLI Tool:
python cli.py --file path/to/your.apk --output report.json
validate-app --file myapp.apk --output report.json
- Endpoint:
/analyze
- Example Request:
{ "file": "myapp.apk" }
- Example Response:
{ "status": "success", "issues_found": [ { "type": "Sensitive Data", "description": "ACCESS_FINE_LOCATION permission detected." } ] }
- Navigate to
http://localhost:3000
. - Upload APKs, view compliance reports, and get recommendations.
- Add support for iOS app analysis.
- Extend dynamic analysis capabilities.
- Integrate with Google Play Console API for automated checks.
- Add machine learning models to detect sensitive data patterns.
We welcome contributions! Please:
- Fork the repository.
- Create a new branch:
git checkout -b feature-name
. - Commit your changes:
git commit -m 'Add feature-name'
. - Push to the branch:
git push origin feature-name
. - Open a pull request.
This project is licensed under the MIT License.
Special thanks to open-source projects like Frida, MobSF, and SonarQube, which inspire and power parts of this tool.