FISSURE - RF Çerçevesi

Reading time: 7 minutes

Frekansa Bağlı Olmayan SDR Tabanlı Sinyal Anlama ve Tersine Mühendislik

FISSURE, sinyal tespiti ve sınıflandırması, protokol keşfi, saldırı yürütme, IQ manipülasyonu, zafiyet analizi, otomasyon ve AI/ML için kancalarla tasarlanmış, tüm beceri seviyeleri için açık kaynaklı bir RF ve tersine mühendislik çerçevesidir. Çerçeve, yazılım modüllerinin, radyoların, protokollerin, sinyal verilerinin, betiklerin, akış grafiklerinin, referans materyallerin ve üçüncü taraf araçların hızlı entegrasyonunu teşvik etmek için inşa edilmiştir. FISSURE, yazılımı tek bir yerde tutan ve ekiplerin belirli Linux dağıtımları için aynı kanıtlanmış temel yapılandırmayı paylaşırken hızla uyum sağlamasını sağlayan bir iş akışı etkinleştiricisidir.

FISSURE ile birlikte gelen çerçeve ve araçlar, RF enerjisinin varlığını tespit etmek, bir sinyalin özelliklerini anlamak, örnekler toplamak ve analiz etmek, iletim ve/veya enjeksiyon teknikleri geliştirmek ve özel yükler veya mesajlar oluşturmak için tasarlanmıştır. FISSURE, tanımlama, paket oluşturma ve fuzzing konusunda yardımcı olmak için büyüyen bir protokol ve sinyal bilgisi kütüphanesi içerir. Sinyal dosyalarını indirmek ve trafik simüle etmek ve sistemleri test etmek için çalma listeleri oluşturmak için çevrimiçi arşiv yetenekleri mevcuttur.

Kullanıcı dostu Python kod tabanı ve kullanıcı arayüzü, yeni başlayanların RF ve tersine mühendislik ile ilgili popüler araçlar ve teknikler hakkında hızla bilgi edinmelerini sağlar. Siber güvenlik ve mühendislik alanındaki eğitimciler, yerleşik materyali kullanabilir veya kendi gerçek dünya uygulamalarını göstermek için çerçeveyi kullanabilir. Geliştiriciler ve araştırmacılar, FISSURE'ı günlük görevleri için veya en son çözümlerini daha geniş bir kitleye sunmak için kullanabilir. FISSURE'ın toplulukta farkındalığı ve kullanımı arttıkça, yetenekleri ve kapsadığı teknolojinin kapsamı da artacaktır.

Ek Bilgiler

Başlarken

Desteklenen

FISSURE içinde dosya navigasyonunu kolaylaştırmak ve kod tekrarını azaltmak için üç dal bulunmaktadır. Python2_maint-3.7 dalı, Python2, PyQt4 ve GNU Radio 3.7 etrafında inşa edilmiş bir kod tabanı içerir; Python3_maint-3.8 dalı, Python3, PyQt5 ve GNU Radio 3.8 etrafında inşa edilmiştir; ve Python3_maint-3.10 dalı, Python3, PyQt5 ve GNU Radio 3.10 etrafında inşa edilmiştir.

İşletim SistemiFISSURE Dalı
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

Devam Eden (beta)

Bu işletim sistemleri hala beta durumundadır. Geliştirme aşamasındadır ve birkaç özelliğin eksik olduğu bilinmektedir. Yükleyicideki öğeler mevcut programlarla çakışabilir veya durum kaldırılana kadar yüklenemeyebilir.

İşletim SistemiFISSURE Dalı
DragonOS Focal (x86_64)Python3_maint-3.8
Ubuntu 22.04 (x64)Python3_maint-3.10

Not: Belirli yazılım araçları her işletim sistemi için çalışmamaktadır. Yazılım ve Çakışmalar bölümüne bakın.

Kurulum

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

Bu, kurulum GUI'lerini başlatmak için gereken PyQt yazılım bağımlılıklarını yükleyecektir, eğer bulunamazsa.

Sonra, işletim sisteminize en uygun seçeneği seçin (eğer işletim sisteminiz bir seçenekle eşleşiyorsa otomatik olarak algılanmalıdır).

Python2_maint-3.7Python3_maint-3.8Python3_maint-3.10
install1binstall1ainstall1c

FISSURE'ı mevcut çatışmaları önlemek için temiz bir işletim sistemine kurmanız önerilir. FISSURE içindeki çeşitli araçları çalıştırırken hatalardan kaçınmak için tüm önerilen onay kutularını seçin (Varsayılan düğme). Kurulum boyunca, çoğunlukla yükseltilmiş izinler ve kullanıcı adları isteyen birden fazla istem olacaktır. Bir öğe sonunda "Doğrula" bölümü içeriyorsa, yükleyici, takip eden komutu çalıştıracak ve komut tarafından herhangi bir hata üretilip üretilmediğine bağlı olarak onay kutusu öğesini yeşil veya kırmızı olarak vurgulayacaktır. "Doğrula" bölümü olmayan onaylı öğeler kurulumdan sonra siyah kalacaktır.

install2

Kullanım

Bir terminal açın ve girin:

fissure

FISSURE Yardım menüsüne kullanım detayları için başvurun.

Detaylar

Bileşenler

  • Gösterge Paneli
  • Merkezi Hub (HIPRFISR)
  • Hedef Sinyal Tanımlama (TSI)
  • Protokol Keşfi (PD)
  • Akış Grafiği & Script Yürütücüsü (FGE)

components

Yetenekler

Sinyal DedektörüIQ ManipülasyonuSinyal AramaDesen Tanıma
SaldırılarFuzzingSinyal Çalma ListeleriGörüntü Galerisi
Paket OluşturmaScapy EntegrasyonuCRC HesaplayıcıGünlükleme

Donanım

Aşağıda, farklı entegrasyon seviyelerine sahip "desteklenen" donanımların bir listesi bulunmaktadır:

  • USRP: X3xx, B2xx, B20xmini, USRP2, N2xx
  • HackRF
  • RTL2832U
  • 802.11 Adaptörleri
  • LimeSDR
  • bladeRF, bladeRF 2.0 mikro
  • Open Sniffer
  • PlutoSDR

Dersler

FISSURE, farklı teknolojiler ve tekniklerle tanışmak için birkaç yararlı kılavuz ile birlikte gelir. Birçoğu, FISSURE'a entegre edilmiş çeşitli araçların kullanım adımlarını içerir.

Yol Haritası

  • Daha fazla donanım türü, RF protokolleri, sinyal parametreleri, analiz araçları ekleyin
  • Daha fazla işletim sistemi desteği
  • FISSURE etrafında ders materyali geliştirin (RF Saldırıları, Wi-Fi, GNU Radio, PyQt, vb.)
  • Seçilebilir AI/ML teknikleri ile bir sinyal düzenleyici, özellik çıkarıcı ve sinyal sınıflandırıcı oluşturun
  • Bilinmeyen sinyallerden bir bit akışı üretmek için özyinelemeli demodülasyon mekanizmaları uygulayın
  • Ana FISSURE bileşenlerini genel bir sensör düğümü dağıtım şemasına geçirin

Katkıda Bulunma

FISSURE'ı geliştirmek için öneriler şiddetle teşvik edilmektedir. Aşağıdakilerle ilgili düşünceleriniz varsa Tartışmalar sayfasında veya Discord Sunucusunda bir yorum bırakın:

  • Yeni özellik önerileri ve tasarım değişiklikleri
  • Kurulum adımları ile yazılım araçları
  • Yeni dersler veya mevcut dersler için ek materyal
  • İlgi alanındaki RF protokolleri
  • Entegrasyon için daha fazla donanım ve SDR türü
  • Python'da IQ analiz scriptleri
  • Kurulum düzeltmeleri ve iyileştirmeleri

FISSURE'ı geliştirmek için katkılar, gelişimini hızlandırmak açısından kritik öneme sahiptir. Yaptığınız katkılar büyük takdir edilmektedir. Kod geliştirme yoluyla katkıda bulunmak isterseniz, lütfen repoyu fork edin ve bir pull request oluşturun:

  1. Projeyi fork edin
  2. Özellik dalınızı oluşturun (git checkout -b feature/AmazingFeature)
  3. Değişikliklerinizi kaydedin (git commit -m 'Add some AmazingFeature')
  4. Dalınıza push edin (git push origin feature/AmazingFeature)
  5. Bir pull request açın

Hatalara dikkat çekmek için Sorunlar oluşturmak da memnuniyetle karşılanır.

İşbirliği

FISSURE işbirliği fırsatlarını önermek ve resmileştirmek için Assured Information Security, Inc. (AIS) İş Geliştirme ile iletişime geçin – bu, yazılımınızı entegre etmek için zaman ayırmak, AIS'teki yetenekli kişilerin teknik zorluklarınız için çözümler geliştirmesi veya FISSURE'ı diğer platformlara/uygulamalara entegre etmek olabilir.

Lisans

GPL-3.0

Lisans detayları için LICENSE dosyasına bakın.

İletişim

Discord Sunucusuna katılın: https://discord.gg/JZDs5sgxcG

Twitter'da takip edin: @FissureRF, @AinfoSec

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

İş Geliştirme - Assured Information Security, Inc. - bd@ainfosec.com

Krediler

Bu geliştiricilere teşekkür ederiz:

Credits

Teşekkürler

Bu projeye katkılarından dolayı Dr. Samuel Mantravadi ve Joseph Reith'e özel teşekkürler.