FISSURE - The RF Framework
Compréhension et ingénierie inverse indépendantes de la fréquence basées sur SDR
FISSURE est un cadre RF et d'ingénierie inverse open-source conçu pour tous les niveaux de compétence avec des crochets pour la détection et la classification des signaux, la découverte de protocoles, l'exécution d'attaques, la manipulation IQ, l'analyse de vulnérabilités, l'automatisation et l'IA/ML. Le cadre a été construit pour promouvoir l'intégration rapide de modules logiciels, de radios, de protocoles, de données de signal, de scripts, de graphes de flux, de matériel de référence et d'outils tiers. FISSURE est un facilitateur de flux de travail qui garde le logiciel en un seul endroit et permet aux équipes de se mettre facilement à niveau tout en partageant la même configuration de base éprouvée pour des distributions Linux spécifiques.
Le cadre et les outils inclus dans FISSURE sont conçus pour détecter la présence d'énergie RF, comprendre les caractéristiques d'un signal, collecter et analyser des échantillons, développer des techniques de transmission et/ou d'injection, et créer des charges utiles ou des messages personnalisés. FISSURE contient une bibliothèque croissante d'informations sur les protocoles et les signaux pour aider à l'identification, à la création de paquets et au fuzzing. Des capacités d'archivage en ligne existent pour télécharger des fichiers de signal et construire des listes de lecture pour simuler le trafic et tester les systèmes.
Le code Python convivial et l'interface utilisateur permettent aux débutants d'apprendre rapidement les outils et techniques populaires impliquant la RF et l'ingénierie inverse. Les éducateurs en cybersécurité et en ingénierie peuvent profiter du matériel intégré ou utiliser le cadre pour démontrer leurs propres applications du monde réel. Les développeurs et les chercheurs peuvent utiliser FISSURE pour leurs tâches quotidiennes ou pour exposer leurs solutions de pointe à un public plus large. À mesure que la sensibilisation et l'utilisation de FISSURE augmentent dans la communauté, les capacités de celui-ci et la portée de la technologie qu'il englobe augmenteront également.
Informations supplémentaires
Pour commencer
Pris en charge
Il y a trois branches dans FISSURE pour faciliter la navigation dans les fichiers et réduire la redondance de code. La branche Python2_maint-3.7 contient une base de code construite autour de Python2, PyQt4 et GNU Radio 3.7 ; la branche Python3_maint-3.8 est construite autour de Python3, PyQt5 et GNU Radio 3.8 ; et la branche Python3_maint-3.10 est construite autour de Python3, PyQt5 et GNU Radio 3.10.
Système d'exploitation | Branche FISSURE |
---|---|
Ubuntu 18.04 (x64) | Python2_maint-3.7 |
Ubuntu 18.04.5 (x64) | Python2_maint-3.7 |
Ubuntu 18.04.6 (x64) | Python2_maint-3.7 |
Ubuntu 20.04.1 (x64) | Python3_maint-3.8 |
Ubuntu 20.04.4 (x64) | Python3_maint-3.8 |
KDE neon 5.25 (x64) | Python3_maint-3.8 |
En cours (bêta)
Ces systèmes d'exploitation sont encore en phase bêta. Ils sont en cours de développement et plusieurs fonctionnalités sont connues pour être manquantes. Les éléments dans l'installateur peuvent entrer en conflit avec des programmes existants ou échouer à l'installation jusqu'à ce que le statut soit supprimé.
Système d'exploitation | Branche FISSURE |
---|---|
DragonOS Focal (x86_64) | Python3_maint-3.8 |
Ubuntu 22.04 (x64) | Python3_maint-3.10 |
Note : Certains outils logiciels ne fonctionnent pas pour tous les systèmes d'exploitation. Référez-vous à Logiciels et conflits
Installation
Cela installera les dépendances logicielles PyQt requises pour lancer les interfaces graphiques d'installation si elles ne sont pas trouvées.
Ensuite, sélectionnez l'option qui correspond le mieux à votre système d'exploitation (elle devrait être détectée automatiquement si votre système d'exploitation correspond à une option).
Python2_maint-3.7 | Python3_maint-3.8 | Python3_maint-3.10 |
---|---|---|
Il est recommandé d'installer FISSURE sur un système d'exploitation propre pour éviter les conflits existants. Sélectionnez toutes les cases à cocher recommandées (bouton par défaut) pour éviter les erreurs lors de l'utilisation des différents outils de FISSURE. Il y aura plusieurs invites tout au long de l'installation, demandant principalement des autorisations élevées et des noms d'utilisateur. Si un élément contient une section "Vérifier" à la fin, l'installateur exécutera la commande qui suit et mettra en évidence la case à cocher en vert ou en rouge en fonction des erreurs produites par la commande. Les éléments cochés sans section "Vérifier" resteront noirs après l'installation.
![](https://book.hacktricks.xyz/~gitbook/image?url=https%3A%2F%2Fgithub.com%2Fainfosec%2FFISSURE%2Fblob%2FPython3_maint-3.8%2FIcons%2FREADME%2Finstall2.png&width=768&dpr=4&quality=100&sign=b3cbe0fc&sv=1)
Utilisation
Ouvrez un terminal et entrez :
Référez-vous au menu d'aide de FISSURE pour plus de détails sur l'utilisation.
Détails
Composants
Tableau de bord
Hub central (HIPRFISR)
Identification de signal cible (TSI)
Découverte de protocole (PD)
Graphique de flux et exécuteur de script (FGE)
![](https://book.hacktricks.xyz/~gitbook/image?url=https%3A%2F%2Fgithub.com%2Fainfosec%2FFISSURE%2Fblob%2FPython3_maint-3.8%2FIcons%2FREADME%2Fcomponents.png&width=768&dpr=4&quality=100&sign=d4030839&sv=1)
Capacités
|
|
|
|
|
|
| |
|
Matériel
Voici une liste de matériels "supportés" avec des niveaux d'intégration variables :
USRP : X3xx, B2xx, B20xmini, USRP2, N2xx
HackRF
RTL2832U
Adaptateurs 802.11
LimeSDR
bladeRF, bladeRF 2.0 micro
Open Sniffer
PlutoSDR
Leçons
FISSURE est livré avec plusieurs guides utiles pour se familiariser avec différentes technologies et techniques. Beaucoup incluent des étapes pour utiliser divers outils intégrés à FISSURE.
Feuille de route
Contribution
Les suggestions pour améliorer FISSURE sont fortement encouragées. Laissez un commentaire sur la page Discussions ou sur le serveur Discord si vous avez des réflexions concernant les éléments suivants :
Nouvelles suggestions de fonctionnalités et changements de conception
Outils logiciels avec des étapes d'installation
Nouvelles leçons ou matériel supplémentaire pour les leçons existantes
Protocoles RF d'intérêt
Plus de types de matériels et de SDR pour l'intégration
Scripts d'analyse IQ en Python
Corrections et améliorations d'installation
Les contributions pour améliorer FISSURE sont cruciales pour accélérer son développement. Toutes les contributions que vous apportez sont grandement appréciées. Si vous souhaitez contribuer par le développement de code, veuillez forker le repo et créer une pull request :
Forker le projet
Créez votre branche de fonctionnalité (
git checkout -b feature/AmazingFeature
)Validez vos modifications (
git commit -m 'Add some AmazingFeature'
)Poussez vers la branche (
git push origin feature/AmazingFeature
)Ouvrez une pull request
La création de Issues pour attirer l'attention sur les bugs est également la bienvenue.
Collaboration
Contactez le développement commercial d'Assured Information Security, Inc. (AIS) pour proposer et formaliser toutes les opportunités de collaboration FISSURE - que ce soit en consacrant du temps à l'intégration de votre logiciel, en ayant les personnes talentueuses d'AIS développer des solutions pour vos défis techniques, ou en intégrant FISSURE dans d'autres plates-formes/applications.
Licence
GPL-3.0
Pour les détails de la licence, voir le fichier LICENSE.
Contact
Rejoignez le serveur Discord : https://discord.gg/JZDs5sgxcG
Suivez sur Twitter : @FissureRF, @AinfoSec
Chris Poore - Assured Information Security, Inc. - poorec@ainfosec.com
Développement commercial - Assured Information Security, Inc. - bd@ainfosec.com
Crédits
Nous reconnaissons et sommes reconnaissants envers ces développeurs :
Remerciements
Un merci spécial au Dr Samuel Mantravadi et à Joseph Reith pour leurs contributions à ce projet.
Last updated