Skip to content
KitploitKITPLOIT
OutilsExploitsBlog
Soumettre
OutilsExploitsBlog
Soumettre

Outils de Hacking, PenTest et Cybersécurité pour votre Arsenal de Sécurité !

Kitploit est un répertoire d'outils de hacking, de cybersécurité et de pentesting. Découvrez les dernières mises à jour des projets pour trouver des vulnérabilités, analyser des systèmes, automatiser les tests et renforcer votre sécurité.

··Flux·Contact·Confidentialité·© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
radioguard — Sous-service de défense cellulaire Zero-Trust pour Android (détection et routage sécurisé IMSI-Catcher, 2G SMS Blaster et 4G aLTEr) | Kitploit
Outils/GitHubGitHub/pushkarreddyy/radioguard
Sécurité AndroidOutils DéfensifsAnalyse des VulnérabilitésSécurité RéseauSécurité Sans FilCriminalistique NumériqueSécurité MobileProtection de la Vie PrivéeDétection d'IntrusionDétection d'Anomalies
GitHub
44il y a 2 joursPas encore vérifié

Populaires

Voir tout →

Découvrez les outils les plus utilisés par notre communauté.

Explorer tous les outils

Parcourez notre collection d'outils

Voir tous les outils →
Partager
pushkarreddyy/radioguard

radioguard

Sous-service de défense cellulaire Zero-Trust pour Android (détection et routage sécurisé IMSI-Catcher, 2G SMS Blaster et 4G aLTEr)

Voir le dépôt

RadioGuard : Sous-service de défense cellulaire Zero-Trust pour Android

Build, Test & Release APK Download APK License

RadioGuard est une application de sécurité Android open-source, prête pour la production et conforme au Google Play Store, ainsi qu'un sous-service d'arrière-plan. Elle détecte activement les fausses stations de base (IMSI-catchers / Cell-Site Simulators / SMS Blasters), identifie les manipulations cellulaires hostiles 2G/4G, et déploie une quarantaine de routage sécurisé cryptographique pour protéger les appareils mobiles sur des liaisons cellulaires non fiables.


Table des matières

  1. Modèle de menace et raison d'être de RadioGuard
  2. Architecture centrale et composants
  3. Fonctionnalités clés
  4. Garanties de sécurité mémoire et de dépassement de tampon
  5. Test de résistance adversarial et durcissement des vulnérabilités
  6. Protections anti-falsification et anti-détournement de sous-processus
  7. Interface utilisateur et disposition du tableau de bord
  8. Vérification automatisée et suite de tests
  9. Conformité au Google Play Store et guide de publication
  10. Compilation depuis les sources

Modèle de menace et raison d'être de RadioGuard

Les réseaux cellulaires (2G, 3G et 4G LTE) souffrent de faiblesses protocolaires fondamentales :

  • Fuites d'identité avant authentification : Les téléphones révèlent les identifiants permanents IMSI et IMEI en clair avant l'établissement de l'authentification mutuelle (3GPP TS 24.008 / TS 24.301).
  • Authentification 2G unilatérale : Les stations GSM ne s'authentifient jamais auprès des téléphones, permettant à de fausses stations d'imposer des chiffrements nuls (A5/0) ou de casser le chiffrement A5/1 en temps réel.
  • Faille d'intégrité du plan utilisateur 4G LTE (attaque aLTEr / CVE-2018-18544) : Bien que la signalisation de contrôle 4G dispose de contrôles d'intégrité, les paquets IP du plan utilisateur manquent de protection d'intégrité, permettant des attaques actives par inversion de bits sur les résolutions DNS.
  • SMS Blasters : Des SDR portables émettent des signaux 2G de forte puissance pour pousser des textos de phishing directement dans les téléphones sans implication de l'opérateur.

La philosophie RadioGuard : Traiter la liaison cellulaire comme un réseau public non fiable (Radio Zero-Trust). Au lieu d'espérer que la station soit légitime, le téléphone surveille de manière autonome la télémétrie cellulaire et encapsule le trafic dans des tunnels cryptographiques authentifiés.


Architecture centrale et composants

root@kitploit:~
┌─────────────────────────────────────────────────────────────────────────────┐
│                       RadioGuard Architecture Topology                      │
├─────────────────────────────────────────────────────────────────────────────┤
│  [ UI Layer (Jetpack Compose) ]                                             │
│    • DashboardScreen: Real-time threat gauge, active telemetry, controls    │
│    • Device Integrity Banner: Displays kernel/root compromise warnings      │
│    • Forensic Incident Exporter: Generates JSON evidence dumps              │
├─────────────────────────────────────────────────────────────────────────────┤
│  [ Core Service Layer ]                                                     │
│    • RadioGuardService: Foreground sentry monitoring TelephonyCallback      │
│    • Telemetry Liveness Watchdog: Polls modem every 5s to defeat RIL freeze │
│    • Emergency 911/112 Fail-Safe: Auto-suspends killswitch during calls     │
│    • SafeTunnelVpnService: Native VPN killswitch (TunnelCrack hardened)     │
│    • ShizukuRadioBridge: Privileged non-root band locker & airplane pulse   │
├─────────────────────────────────────────────────────────────────────────────┤
│  [ Analytical Engine ]                                                      │
│    • AnomalyEngine: Normalized Bayesian multi-factor anomaly scoring        │
│    • Macro-Cell Shadow Clone Detector: Step-gradient Delta-RSRP tracking    │
│    • Hysteresis Buffer: 2-sample window filters Carrier Aggregation flits   │
│    • SmsFilterHelper: PDU inspector catching Type-0 Silent SMS pings        │
├─────────────────────────────────────────────────────────────────────────────┤
│  [ Storage & Integrity Layer ]                                              │
│    • TowerDatabase (Room SQLite): Local OpenCelliD / BeaconDB baseline      │
│    • Circular Storage Pruning: Caps incident log to 1,000 to prevent DoS   │
│    • AppIntegrityValidator: Runtime SHA-256 APK signing cert verification   │
│    • RuntimeAntiHijackGuard: Anti-ptrace & /proc/self/maps hook scanner     │
│    • DeviceIntegritySentry: Hardware TEE, SELinux, and rootkit auditor      │
└─────────────────────────────────────────────────────────────────────────────┘

Fonctionnalités clés

  1. Moteur de scoring d'anomalies multi-facteurs (MFASE) :
    • Validation croisée spatiale : Compare la position observée de la station à une base de données SQLite locale hors ligne (sourcée d'OpenCelliD et BeaconDB). Signale les écarts $> 10\text{ km}$.
    • Détection de piège d'isolation : Détecte les eNodeB LTE malveillants diffusant des listes de voisins SIB4/SIB5 vides.
    • Sentinelle de rétrogradation 2G involontaire : Signale les chutes forcées soudaines de la 4G/5G vers le GSM 2G hérité non authentifié.
    • Cohérence du Timing Advance : Valide le timing aller-retour de la bande de base par rapport aux coordonnées physiques de l'appareil.
  2. Quarantaine de routage sécurisé et kill-switch :
    • Utilise le VpnService natif d'Android avec setBlocking(true) comme killswitch imposé par l'OS.
    • Double découpage de route /1 : Contre TunnelCrack (CVE-2023-36672 / CVE-2023-35838) en divisant les routes en 0.0.0.0/1 et 128.0.0.0/1, neutralisant toute redirection malveillante de sous-réseau local.
    • Zéro course de domaine : Utilise des littéraux IP codés en dur (9.9.9.9, 1.1.1.1) avec épinglage de certificat SPKI pour empêcher le détournement DNS aLTEr avant le tunnel.
  3. Fail-safe d'urgence 911/112 :
    • Se branche sur TelephonyCallback.CallStateListener.

Garanties de sécurité mémoire et de dépassement de tampon

Sécurité mémoire au niveau applicatif (Kotlin / ART)

  • RadioGuard s'exécute dans l'Android Runtime (ART) :
    • Zéro corruption de pointeur : Les dépassements de tampon de pile et de tas, les use-after-free et les vulnérabilités de chaîne de format sont mathématiquement éliminés par conception du langage.
    • Application des limites de tableau : Tous les tampons de paquets (ByteBuffer.allocate(32768)) et tableaux d'octets PDU sont strictement vérifiés. Les dépassements lèvent une IndexOutOfBoundsException gérée plutôt que de corrompre la mémoire.
    • Protection DoS par épuisement du stockage : Le stockage local des incidents est plafonné via un tampon circulaire automatique (pruneOldIncidents) conservant les 1 000 derniers enregistrements, empêchant les stations malveillantes de saturer la mémoire flash de l'appareil.

Dépassements de tampon de la bande de base cellulaire (et comment nous les atténuons)

  • La plupart des dépassements de tampon cellulaires se produisent dans le firmware C/C++ propriétaire des DSP modem (par ex., bugs de parseur ASN.1 dans les bandes de base Qualcomm, MediaTek ou Samsung Shannon) :
    • Désactiver la 2G élimine ~80 % des parseurs vulnérables : Le code de la pile GSM ancienne écrit dans les années 1990 manque d'ASLR moderne et de canaris de pile. Désactiver la 2G met toute cette surface d'attaque hors ligne.
    • Isolation IOMMU du modem : Sur le matériel Android moderne, le modem cellulaire est physiquement isolé du processeur applicatif (AP) via un IOMMU matériel.
    • Watchdog de vivacité télémétrique : Si un attaquant tente de fuzzer la bande de base et provoque un crash RIL silencieux, le watchdog de vivacité de RadioGuard détecte le blocage du callback et alerte l'utilisateur.

Test de résistance adversarial et durcissement des vulnérabilités

RadioGuard a été durci contre les techniques de contournement publiées :


Protections anti-falsification et anti-détournement de sous-processus

Pour garantir que RadioGuard ne puisse pas être compromis par des applications malveillantes ou des malwares locaux :

  1. Vérification de signature APK à l'exécution (AppIntegrityValidator.kt) :
    • Vérifie le certificat de signature SHA-256 de l'APK à l'exécution. En cas de falsification, décompilation et re-signature, l'application se termine elle-même (Process.killProcess()).
  2. Jetons d'authentification IPC éphémères en mémoire :
    • Tous les intents internes entre l'UI et les services d'arrière-plan sont signés avec un jeton éphémère de 256 bits conservé en mémoire, rejetant les intents usurpés d'applications tierces.
  3. Garde anti-détournement à l'exécution (RuntimeAntiHijackGuard.kt) :
    • Interrogation du TracerPid : Scanne /proc/self/status toutes les 3 secondes. Détecte les attachements ptrace, gdb et les agents Frida.
    • Détection de hooks dans la carte mémoire : Scanne /proc/self/maps pour les injections de bibliothèques dynamiques (frida-agent.so, xposed.so, zygisk, ).

Interface utilisateur et disposition du tableau de bord

L'UI est construite avec Jetpack Compose (Material 3) avec un thème sombre de cyber-défense :

  • Carte de statut de menace : Affiche un indicateur visuel dynamique de menace (Vert / Orange / Rouge) avec le pourcentage de risque d'anomalie calculé et les raisons de détection actives.
  • Bannière d'avertissement d'intégrité de l'appareil hôte : Fait apparaître une alerte rouge immédiate si des binaires root, un SELinux permissif ou des test-keys non vérifiées sont détectés.
  • Carte de télémétrie de la cellule serveuse : Lectures en direct de la génération radio active (2G/3G/4G/5G), MCC/MNC, Tracking Area (TAC), Cell ID (CID), puissance du signal (RSRP) et nombre de voisins.
  • Contrôles de défense active :
    • Bascule Sentinelle continue.
    • Bascule Killswitch de routage sécurisé d'urgence.
    • Bouton d'action « Pulse Radio / Break Tower Lock (Shizuku) ».
  • Carte d'incident forensique : Affiche le nombre d'événements de fausses stations enregistrés avec un bouton « Export Report » en un clic.
  • Statut de la base de données de vérité terrain hors ligne : Affiche le nombre de macro-stations vérifiées.

Vérification automatisée et suite de tests

Le projet inclut une suite de tests de vérification exécutable (test_suite.py) qui valide tous les algorithmes, transitions d'état et bornes mathématiques :

root@kitploit:~
python test_suite.py

Résultats de couverture des tests :

root@kitploit:~
test_01_normal_macro_cell_passes ......................... [OK]
test_02_involuntary_2g_downgrade ......................... [OK]
test_03_macro_cell_shadow_clone_jump ..................... [OK]
test_04_hysteresis_filtering ............................. [OK]
test_05_spatial_drift_detection .......................... [OK]
test_06_tunnelcrack_dual_route_coverage .................. [OK]
test_07_storage_bounds_circular_pruning .................. [OK]
test_08_emergency_call_fail_safe_transitions ............. [OK]

Ran 8 tests in 0.001s - OK (100% Passing)

De plus, les tests unitaires pour les builds Android Studio / Gradle se trouvent à :

  • AnomalyEngineTest.kt
  • UiAndStateTest.kt

Conformité au Google Play Store et guide de publication

Lors de la soumission de RadioGuard à la Google Play Developer Console, déclarez les permissions comme suit :


Compilation depuis les sources

Prérequis

  • Android Studio Jellyfish (2024.1+) ou JDK 17+
  • Android SDK 34 (niveau d'API 34)

Commandes

root@kitploit:~
# Clone or open workspace
cd C:\Users\pushk\.gemini\antigravity\scratch\radioguard

# Build debug APK
./gradlew assembleDebug

# Build release APK (configured with ProGuard & R8)
./gradlew assembleRelease
Télécharger l’outil
  • À la milliseconde où un appel d'urgence est composé (911, 112, 999), RadioGuard suspend instantanément le killswitch VPN et restaure toutes les bandes radio, assurant la conformité aux réglementations de dispatch E911. Se réengage automatiquement une fois l'appel raccroché.
  • Protection contre les SMS Blasters et SMS silencieux :
    • Inspecte les PDU SMS entrants pour détecter les pings Type-0 (SMS silencieux / TP-PID 0x40) utilisés par les équipements de surveillance pour la radiogoniométrie.
    • Signale les messages à code court alphanumérique suspects arrivant via des cellules 2G non authentifiées.
  • Sentinelle de compromission préexistante de l'appareil :
    • Audite si l'OS hôte a déjà été compromis par des malwares, rootkits ou logiciels espions mercenaires (vérification des binaires su, Magisk, SELinux en mode Permissive, test-keys, ou KeyStore/TEE matériel manquant).
  • Journal d'audit forensique des incidents et export JSON :
    • Persiste des journaux horodatés de qualité probante des fausses stations détectées, pics de signal et pings silencieux dans un SQLite local.
    • Export JSON en un clic pour partage avec un conseiller juridique, les régulateurs (FCC) ou les chercheurs en sécurité.
  • Pont radio non-root (via Shizuku) :
    • Permet aux utilisateurs avancés de verrouiller les bandes radio (désactiver la 2G) ou de pulser le mode Avion pour briser le verrou de resélection d'une fausse station sans rooter l'appareil.
  • Vecteur d'attaqueArticle source / CVEContre-mesure durcie
    Macro-Cell Shadow CloneUSENIX Security (FBS-Radar)Suivi par gradient d'étape : Signale les pics soudains de $\Delta\text{RSRP} > 25\text{ dB}$ sur des Cell IDs identiques en $< 4\text{ secondes}$.
    Contournement VPN TunnelCrackUSENIX Security (CVE-2023-36672)Double découpage de route /1 : 0.0.0.0/1 et 128.0.0.0/1 neutralisent toute redirection malveillante de sous-réseau local.
    Détournement bootstrap DNS aLTErIEEE S&P (CVE-2018-18544)Littéraux IP et épinglage SPKI : Connexion directe à des IP de résolveur codées en dur (9.9.9.9) élimine le DNS bootstrap en clair.
    Gel RIL de la bande de baseBlack Hat / ACM CCSWatchdog de vivacité télémétrique : Interroge activement la télémétrie du modem toutes les 5 secondes si les callbacks sont bloqués pendant $> 12\text{ secondes}$.
    Battement d'agrégation de porteusesDéploiement LTE réelTampon d'hystérésis : Nécessite 2 cycles d'anomalie consécutifs sur 10 secondes avant de déclarer une quarantaine critique.
    sandhook
  • Assainissement des sous-processus : Impose les chemins canoniques /system/bin/cmd et supprime LD_PRELOAD des environnements d'exécution des sous-processus.
  • PermissionJustification de la politique Play Store
    ACCESS_FINE_LOCATIONRequis par l'OS Android pour interroger CellIdentity (Cell ID, TAC, PCI). Indiquez explicitement dans la politique de confidentialité de l'application que les coordonnées sont évaluées localement sur l'appareil par rapport à une base de données SQLite hors ligne et ne sont jamais transmises à un serveur distant.
    FOREGROUND_SERVICE & FOREGROUND_SERVICE_CONNECTED_DEVICERequis pour la surveillance continue en temps réel des changements d'état de la bande de base et du leurrage par fausses stations.
    BIND_VPN_SERVICERequis pour fournir le tunnel de quarantaine en boucle locale et le kill-switch natif de l'OS afin d'isoler les liaisons cellulaires non fiables.