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 Sistemi | FISSURE 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 Sistemi | FISSURE 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.7 | Python3_maint-3.8 | Python3_maint-3.10 |
---|---|---|
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.
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)
Yetenekler
Sinyal Dedektörü | IQ Manipülasyonu | Sinyal Arama | Desen Tanıma |
---|---|---|---|
Saldırılar | Fuzzing | Sinyal Çalma Listeleri | Görüntü Galerisi |
Paket Oluşturma | Scapy Entegrasyonu | CRC 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.
- Ders1: OpenBTS
- Ders2: Lua Çözümleyicileri
- Ders3: Ses eXchange
- Ders4: ESP Kartları
- Ders5: Radiosonde Takibi
- Ders6: RFID
- Ders7: Veri Türleri
- Ders8: Özel GNU Radio Blokları
- Ders9: TPMS
- Ders10: Amatör Radyo Sınavları
- Ders11: Wi-Fi Araçları
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:
- Projeyi fork edin
- Özellik dalınızı oluşturun (
git checkout -b feature/AmazingFeature
) - Değişikliklerinizi kaydedin (
git commit -m 'Add some AmazingFeature'
) - Dalınıza push edin (
git push origin feature/AmazingFeature
) - 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:
Teşekkürler
Bu projeye katkılarından dolayı Dr. Samuel Mantravadi ve Joseph Reith'e özel teşekkürler.