information.txt

D-TECH Engineering Project
Back to Gateway

x24 App - System Analysis and Architecture Documentation

Overview

The x24 app is an Android mobile device management (MDM) / remote administration tool disguised under a benign identity. It leverages Firebase Realtime Database to send and receive remote commands, fetch device data, perform live screen monitoring, execute file exploration, and access background services (like notifications, camera, and microphone) without alerting the user. The app serves two primary roles: "Monitor" (the admin/controller) and "Be Monitored" (the client device).

Identity and Disguise

Authentication and Firebase Architecture

Authentication is access-code based, functioning through a master secret code ([REDACTED_SECRET]).

The Firebase Realtime Database is structured as follows:

Roles and UI Flow

1. MainActivity: The entry point. Checks SharedPreferences for an existing session. If none, provides entry for either "Monitor" or "Be Monitored". Secret long-press (10 seconds) on the title text reveals the Admin Dashboard.

2. AdminActivity: Generates new Access Codes, views all active sessions, their online statuses, and enables full compilation and download of all Firebase session logs as JSON.

3. MonitorActivity: The dashboard for the controller. Requires points (earned via ads or promo codes) to execute commands. Tabs divide functionality: Controls, Files, Screen, Map, Logs/Results. Commands issued here write to Firebase.

4. BeMonitoredActivity: Handles the upfront permissions on the client side, invoking Android intents to grant System Alert Window, Accessibility Service, Notification Listener, etc.

Core Background Services

1. FirebaseCommandService:

2. x24AccessibilityService:

3. x24NotificationService:

4. MonitorAlertService:

Remote Commands and Data Fetching

All data is transferred through the free tier of Firebase Realtime Database. Because of this, files, images, and audio must be formatted correctly to stay under strict size constraints.

Monetization and Points

MonitorActivity requires the expenditure of points for executing commands.