Birden fazla DJI uçağında ciddi güvenlik açıkları tespit edildi. Bu zayıflıklar, kullanıcıların drone’un seri numarası gibi önemli kimlik ayrıntılarını değiştirmesine ve hatta yetkililerin hem drone’u hem de pilotunu izlemesini sağlayan güvenlik mekanizmalarını atlamasına izin verme potansiyeline sahipti. Özel saldırı senaryolarında, dronlar uçuş sırasında uzaktan bile düşürülebilir.
Fotoğraf: RUB, Marquard
Almanya, Ruhr Üniversitesi Bochum’daki Horst Görtz BT Güvenliği Enstitüsü’nden Nico Schiller ve CISPA Helmholtz Bilgi Güvenliği Merkezi’nden Profesör Thorsten Holz başkanlığındaki ekip, bulgularını Ağ ve Dağıtık Sistem Güvenliği Sempozyumu’nda sundu.
Araştırmacılar, bilgileri halka açıklamadan önce DJI’yi tespit edilen 16 güvenlik açığı hakkında bilgilendirdi. Sorumlu açıklama süreci sırasında üretici bu sorunları gidermiştir.
DJI dronları teste tabi tutuldu
Ekip, farklı kategorilerdeki üç DJI drone’u test etti: küçük DJI Mini 2, orta boy Air 2 ve büyük Mavic 2. Daha sonra, BT uzmanları sonuçları daha yeni Mavic 3 modeli için de yeniden oluşturdu.
Drone’ların donanımını ve bellenimini çok sayıda rastgele girdi ile beslediler ve hangilerinin drone’ların çökmesine neden olduğunu veya drone verilerinde seri numarası gibi istenmeyen değişiklikler yaptığını kontrol ettiler – bulanıklaştırma olarak bilinen bir yöntem. Bunun için önce yeni bir algoritma geliştirmeleri gerekiyordu.
“Genellikle bulanıklaştırma amacıyla bir cihazın tüm donanım yazılımına sahibiz. Ancak burada durum böyle değildi”, Nico Schiller’in bu özel zorluğu açıkladığı gibi. DJI dronları nispeten karmaşık cihazlar olduğundan, bulanıklaştırmanın canlı sistemde gerçekleştirilmesi gerekiyordu.
Bochum’dan araştırmacı, “Drone’u bir dizüstü bilgisayara bağladıktan sonra, önce onunla nasıl iletişim kurabileceğimize ve bu amaç için hangi arayüzlerin elimizde olduğuna baktık” diyor. İletişimin çoğunun, drone’a komutları paketler halinde gönderen DUML adı verilen aynı protokol üzerinden yapıldığı ortaya çıktı.
Dört ciddi hata
Böylece araştırma grubu tarafından geliştirilen fuzzer, DUML veri paketlerini üreterek drone’a gönderdi ve hangi girdilerin drone yazılımının çökmesine neden olduğunu değerlendirdi. Böyle bir çökme, programlamada bir hata olduğunu gösterir.
Thorsten Holz, “Ancak, tüm güvenlik açıkları bir çökmeyle sonuçlanmadı” diyor. Holz, “Bazı hatalar, seri numarası gibi verilerde değişikliklere yol açtı” diye ekledi.
Ekip, bu tür mantıksal güvenlik açıklarını tespit etmek için drone’u DJI uygulamasını çalıştıran bir cep telefonuyla eşleştirdi. Böylece, bulanıklaştırmanın dronun durumunu değiştirip değiştirmediğini görmek için uygulamayı periyodik olarak kontrol edebilirler.
Test edilen dört DJI drone modelinin de güvenlik açıklarına sahip olduğu bulundu. Toplamda, araştırmacılar 16 güvenlik açığını belgeledi. DJI Mini 2, Mavic Air 2 ve Mavic 3 modellerinde dört ciddi kusur vardı.
Birincisi, bu hatalar bir saldırganın sistemde genişletilmiş erişim hakları kazanmasına izin verdi.
Thorsten Holz, “Böylece bir saldırgan günlük verilerini veya seri numarasını değiştirebilir ve kimliğini gizleyebilir” diye açıklıyor. Holz, “Ayrıca DJI, dronların havaalanları veya hapishaneler gibi diğer kısıtlı alanlarda uçmasını önlemek için önlemler alırken, bu mekanizmalar da geçersiz kılınabilir,” diye devam etti.
Ayrıca grup, uçan insansız hava araçlarını havada düşürmeyi başardı.
Gelecekteki çalışmalarda Bochum-Saarbrücken ekibi, diğer drone modellerinin güvenliğini de test etmeyi planlıyor.
Şifrelenmemiş konum verilerinin iletilmesi
Buna ek olarak, araştırmacılar, güvenlik yetkilileri veya kritik altyapı operatörleri gibi yetkili organların erişebilmesi için DJI drone’larının drone’un ve pilotunun konumunu iletmek için kullandığı protokolü inceledi.
Araştırma ekibi, DJI’ın ürün yazılımı ve dronların yaydığı radyo sinyallerini tersine mühendislik yaparak, DroneID adlı izleme protokolünü ilk kez belgelemeyi başardı.
Nico Schiller, “İletilen verilerin şifrelenmediğini ve neredeyse herkesin pilotun ve insansız hava aracının konumunu nispeten basit yöntemlerle okuyabildiğini gösterdik” diye sözlerini sonlandırıyor.