FISSURE - The RF Framework

Comprensione e Ingegneria Inversa dei Segnali SDR Indipendenti dalla Frequenza

FISSURE è un framework RF e di ingegneria inversa open-source progettato per tutti i livelli di abilità con hook per la rilevazione e classificazione dei segnali, scoperta dei protocolli, esecuzione degli attacchi, manipolazione IQ, analisi delle vulnerabilità, automazione e AI/ML. Il framework è stato costruito per promuovere l'integrazione rapida di moduli software, radio, protocolli, dati di segnale, script, grafici di flusso, materiale di riferimento e strumenti di terze parti. FISSURE è un abilitante del flusso di lavoro che mantiene il software in un'unica posizione e consente ai team di mettersi rapidamente al passo mentre condividono la stessa configurazione di base collaudata per specifiche distribuzioni Linux.

Il framework e gli strumenti inclusi in FISSURE sono progettati per rilevare la presenza di energia RF, comprendere le caratteristiche di un segnale, raccogliere e analizzare campioni, sviluppare tecniche di trasmissione e/o iniezione e creare payload o messaggi personalizzati. FISSURE contiene una libreria in crescita di informazioni su protocolli e segnali per assistere nell'identificazione, creazione di pacchetti e fuzzing. Esistono capacità di archiviazione online per scaricare file di segnale e costruire playlist per simulare il traffico e testare i sistemi.

Il codice Python amichevole e l'interfaccia utente consentono ai principianti di apprendere rapidamente gli strumenti e le tecniche popolari che coinvolgono RF e ingegneria inversa. Gli educatori in cybersecurity e ingegneria possono sfruttare il materiale integrato o utilizzare il framework per dimostrare le proprie applicazioni nel mondo reale. Sviluppatori e ricercatori possono utilizzare FISSURE per le loro attività quotidiane o per esporre le loro soluzioni all'avanguardia a un pubblico più ampio. Man mano che la consapevolezza e l'uso di FISSURE crescono nella comunità, così farà l'estensione delle sue capacità e l'ampiezza della tecnologia che comprende.

Informazioni Aggiuntive

Iniziare

Supportato

Ci sono tre rami all'interno di FISSURE per rendere più facile la navigazione nei file e ridurre la ridondanza del codice. Il ramo Python2_maint-3.7 contiene una base di codice costruita attorno a Python2, PyQt4 e GNU Radio 3.7; il ramo Python3_maint-3.8 è costruito attorno a Python3, PyQt5 e GNU Radio 3.8; e il ramo Python3_maint-3.10 è costruito attorno a Python3, PyQt5 e GNU Radio 3.10.

Sistema Operativo
Ramo 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

In Corso (beta)

Questi sistemi operativi sono ancora in stato beta. Sono in fase di sviluppo e diverse funzionalità sono note per mancare. Gli elementi nell'installer potrebbero entrare in conflitto con programmi esistenti o non installarsi fino a quando lo stato non viene rimosso.

Sistema Operativo
Ramo FISSURE

DragonOS Focal (x86_64)

Python3_maint-3.8

Ubuntu 22.04 (x64)

Python3_maint-3.10

Nota: Alcuni strumenti software non funzionano per ogni OS. Fare riferimento a Software And Conflicts

Installazione

git clone https://github.com/ainfosec/FISSURE.git
cd FISSURE
git checkout <Python2_maint-3.7> or <Python3_maint-3.8> or <Python3_maint-3.10>
git submodule update --init
./install

Questo installerà le dipendenze software PyQt necessarie per avviare le interfacce di installazione se non vengono trovate.

Successivamente, seleziona l'opzione che meglio corrisponde al tuo sistema operativo (dovrebbe essere rilevato automaticamente se il tuo OS corrisponde a un'opzione).

Python2_maint-3.7
Python3_maint-3.8
Python3_maint-3.10

Si consiglia di installare FISSURE su un sistema operativo pulito per evitare conflitti esistenti. Seleziona tutte le caselle di controllo consigliate (pulsante predefinito) per evitare errori durante l'uso dei vari strumenti all'interno di FISSURE. Ci saranno più richieste durante l'installazione, principalmente per autorizzazioni elevate e nomi utente. Se un elemento contiene una sezione "Verifica" alla fine, l'installer eseguirà il comando che segue e evidenzierà l'elemento della casella di controllo in verde o rosso a seconda che vengano prodotti errori dal comando. Gli elementi selezionati senza una sezione "Verifica" rimarranno neri dopo l'installazione.

Uso

Apri un terminale e inserisci:

fissure

Referirsi al menu di aiuto di FISSURE per ulteriori dettagli sull'uso.

Dettagli

Componenti

  • Dashboard

  • Central Hub (HIPRFISR)

  • Identificazione del Segnale Target (TSI)

  • Scoperta del Protocollo (PD)

  • Flusso Grafico & Esecutore di Script (FGE)

Capacità

Hardware

Di seguito è riportato un elenco di hardware "supportato" con vari livelli di integrazione:

  • USRP: X3xx, B2xx, B20xmini, USRP2, N2xx

  • HackRF

  • RTL2832U

  • Adattatori 802.11

  • LimeSDR

  • bladeRF, bladeRF 2.0 micro

  • Open Sniffer

  • PlutoSDR

Lezioni

FISSURE viene fornito con diverse guide utili per familiarizzare con diverse tecnologie e tecniche. Molte includono passaggi per utilizzare vari strumenti integrati in FISSURE.

Roadmap

Contribuire

Suggerimenti per migliorare FISSURE sono fortemente incoraggiati. Lascia un commento nella pagina Discussioni o nel server Discord se hai pensieri riguardo ai seguenti argomenti:

  • Suggerimenti per nuove funzionalità e modifiche di design

  • Strumenti software con passaggi di installazione

  • Nuove lezioni o materiale aggiuntivo per lezioni esistenti

  • Protocolli RF di interesse

  • Maggiore hardware e tipi di SDR per integrazione

  • Script di analisi IQ in Python

  • Correzioni e miglioramenti di installazione

Le contribuzioni per migliorare FISSURE sono cruciali per accelerare il suo sviluppo. Qualsiasi contributo che fai è molto apprezzato. Se desideri contribuire attraverso lo sviluppo di codice, per favore fork il repo e crea una pull request:

  1. Forka il progetto

  2. Crea il tuo branch di funzionalità (git checkout -b feature/AmazingFeature)

  3. Commetti le tue modifiche (git commit -m 'Aggiungi qualche AmazingFeature')

  4. Pusha sul branch (git push origin feature/AmazingFeature)

  5. Apri una pull request

Creare Issues per portare attenzione a bug è anche benvenuto.

Collaborare

Contatta Assured Information Security, Inc. (AIS) Business Development per proporre e formalizzare eventuali opportunità di collaborazione su FISSURE, sia dedicando tempo all'integrazione del tuo software, sia facendo sviluppare soluzioni per le tue sfide tecniche dalle persone talentuose di AIS, o integrando FISSURE in altre piattaforme/applicazioni.

Licenza

GPL-3.0

Per dettagli sulla licenza, vedere il file LICENSE.

Contatto

Unisciti al server Discord: https://discord.gg/JZDs5sgxcG

Segui su Twitter: @FissureRF, @AinfoSec

Chris Poore - Assured Information Security, Inc. - poorec@ainfosec.com

Business Development - Assured Information Security, Inc. - bd@ainfosec.com

Crediti

Riconosciamo e siamo grati a questi sviluppatori:

Crediti

Riconoscimenti

Un ringraziamento speciale a Dr. Samuel Mantravadi e Joseph Reith per i loro contributi a questo progetto.

Last updated