hacktricks/todo/radio-hacking/fissure-the-rf-framework.md
2024-02-10 18:14:16 +00:00

13 KiB
Raw Blame History

FISSURE - RF Framework

Frekans Bağımsız SDR Tabanlı Sinyal Anlama ve Tersine Mühendislik

FISSURE, sinyal tespiti ve sınıflandırma için kancalar, protokol keşfi, saldırı yürütme, IQ manipülasyonu, zayıflık analizi, otomasyon ve AI/ML gibi özelliklere sahip, tüm beceri seviyeleri için tasarlanmış açık kaynaklı bir RF ve tersine mühendislik çerçevesidir. Çerçeve, yazılım modüllerinin, radyoların, protokollerin, sinyal verilerinin, komut dosyalarının, akış grafiklerinin, referans materyallerinin ve üçüncü taraf araçlarının hızlı entegrasyonunu teşvik etmek için oluşturulmuştur. FISSURE, yazılımı tek bir yerde tutan ve ekiplerin aynı kanıtlanmış temel yapılandırmayı paylaşarak kolayca hız kazanmalarını sağlayan bir iş akışı sağlayıcıdır ve belirli Linux dağıtımları için aynı yapılandırmayı paylaşır.

FISSURE ile birlikte gelen çerçeve ve araçlar, RF enerjisinin varlığını tespit etmek, bir sinyalin özelliklerini anlamak, örnekleri 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 için yardımcı olacak bir protokol ve sinyal bilgisi kütüphanesi içerir. Sinyal dosyalarını indirmek ve trafiği simüle etmek ve sistemleri test etmek için çalma listeleri oluşturmak için çevrimiçi arşiv yetenekleri bulunmaktadır.

Dostu Python kod tabanı ve kullanıcı arayüzü, RF ve tersine mühendislikle ilgili popüler araçlar ve teknikler hakkında acemi kullanıcıların hızla öğrenmesine olanak tanır. Siber güvenlik ve mühendislik eğitimcileri, yerleşik materyalden yararlanabilir veya kendi gerçek dünya uygulamalarını göstermek için çerçeveyi kullanabilir. Geliştiriciler ve araştırmacılar, günlük görevlerini yerine getirmek veya keskin çözümlerini daha geniş bir kitleye sunmak için FISSURE'ı kullanabilir. FISSURE'ın toplumda farkındalık ve kullanımı arttıkça, yeteneklerinin kapsamı ve kapsadığı teknolojinin genişliği de artacaktır.

Ek Bilgiler

Başlarken

Desteklenen

FISSURE içinde dosya gezinmeyi 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 oluşturulmuş bir kod tabanına sahiptir; Python3_maint-3.8 dalı, Python3, PyQt5 ve GNU Radio 3.8 etrafında oluşturulmuştur; ve Python3_maint-3.10 dalı, Python3, PyQt5 ve GNU Radio 3.10 etrafında oluşturulmuştur.

İş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 Ediyor (beta)

Bu işletim sistemleri hala beta durumundadır. Geliştirme aşamasındadırlar ve bazı özelliklerin 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ız.

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ükler (eğer bulunamazsa).

Ardından, işletim sisteminize en iyi uyan seçeneği seçin (eğer işletim sisteminiz bir seçenekle eşleşiyorsa otomatik olarak algılanır).

Python2_maint-3.7 Python3_maint-3.8 Python3_maint-3.10
install1b install1a install1c

Mevcut çakışmaları önlemek için FISSURE'ı temiz bir işletim sistemi üzerine kurmanız önerilir. FISSURE içindeki çeşitli araçları kullanırken hataları önlemek için önerilen onay kutularını (Varsayılan düğme) seçin. Kurulum sırasında çoğunlukla yükseltilmiş izinler ve kullanıcı adları isteyen birden fazla iletişim kutusu olacaktır. Bir öğe sonunda "Doğrula" bölümü bulunuyorsa, kurulumcu, takip eden komutu çalıştıracak ve komut tarafından üretilen hatalara bağlı olarak onay kutusu öğesini yeşil veya kırmızı olarak vurgulayacaktır. "Doğrula" bölümü olmayan işaretlenmiş öğeler, kurulumdan sonra siyah kalacaktır.

install2

Kullanım

Bir terminal açın ve şunu girin:

fissure

Daha fazla kullanım ayrıntıları için FISSURE Yardım menüsüne başvurun.

Ayrıntılar

Bileşenler

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

bileşenler

Yetenekler

Sinyal Algılayıcı IQ Manipülasyonu Sinyal Arama Desen Tanıma
Saldırılar Fuzzing Sinyal Oynatma Listeleri Resim Galerisi
Paket Oluşturma Scapy Entegrasyonu CRC Hesaplayıcı Günlük

Donanım

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

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

Dersler

FISSURE, farklı teknolojiler ve tekniklerle tanışmak için birkaç yardımcı kılavuzla birlikte gelir. Birçok kılavuz, 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 sağlayın
  • FISSURE etrafında sınıf materyali geliştirin (RF Saldırıları, Wi-Fi, GNU Radio, PyQt, vb.)
  • Seçilebilir AI/ML teknikleri ile sinyal düzenleyici, özellik çıkarıcı ve sinyal sınıflandırıcı oluşturun
  • Bilinmeyen sinyallerden 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 önerilerinizi paylaşmanızı şiddetle öneririz. Aşağıdaki konularla ilgili düşünceleriniz varsa, Tartışmalar sayfasında veya Discord Sunucusunda yorum bırakın:

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

FISSURE'ı geliştirmek için yapılan katkılar, gelişimini hızlandırmak için önemlidir. Yaptığınız her katkı büyük bir takdirle karşılanır. Kod geliştirme yoluyla katkıda bulunmak isterseniz, lütfen repo'yu çatallayın ve bir pull talebi oluşturun:

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

Hatalara dikkat çekmek için Sorunlar oluşturmak da hoş 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 etmeye zaman ayırmak, AIS'nin yetenekli insanlarının teknik zorluklarınıza çözümler geliştirmesini sağlamak veya FISSURE'ı diğer platformlara/uygulamalara entegre etmek olabilir.

Lisans

GPL-3.0

Lisans ayrıntıları 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 ediyoruz:

Krediler

Teşekkürler

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