Bugünkü blog yazımda sizlerle WirelessHART protokolüne gerçekleştirilebilecek olası siber saldırılardan bahsederek WirelessHART protokolü yazı dizisini tamamlamayı düşünüyorum. Bu bölümde, ilk olarak, birleştirme anahtarının WirelessHART saldırılarındaki önemini sizlerle paylaşacağım. Ardından iki bölümde, birleştirme anahtarı gerektirmeden yapılan saldırılar ve yalnızca saldırganın birleştirme anahtarı varsa mümkün olan saldırıları sizlerle paylaşacağım. Cihazlara fiziksel erişim gerektiren saldırılar, yan kanal saldırıları ve donanım saldırıları bu yazımın kapsamı dışındadır.
WirelessHART protokolünün güvenliği birleştirme anahtarına bağlıdır. Bir saldırgan ağ içerisinde birleştirme anahtarını alırsa, ağ yöneticisi ile ağdaki her cihaz (düğümler) arasındaki karşılıklı haberleşmeyi dinlemek koşuluyla tüm trafiğin şifresini çözmesi mümkündür. MIC’leri hesaplamak ve her bir cihazda şifreleme yapmak için kullanılan anahtar el sıkışma sırasında değiştirildiğinden, sahte bir kaynak adresine sahip paketleri iletmek de mümkündür. Bunun aksine, saldırganın birleştirme anahtarı yoksa, el sıkışma şifresini çözemez ve bu nedenle düğümlerle iletişim kurmak için MIC’lerin şifrelenmesi ve hesaplanması için kullanılan oturum anahtarlarını alamaz. Ayrıca, bir paketi doğru birleştirme anahtarıyla şifrelemeden kendi düğümünü ağda birleştiremez.

Birleştirme Anahtarı Olmadan Yapılabilecek Olası Saldırılar

Bu bölümde saldırganın birleştirme anahtarı olmadan gerçekleştirebileceği saldırıları açıklamaya çalışacağım. Saldırganın birleştirme anahtarı yoksa, oturum anahtarlarının hiçbirini tanıyamayacağı için bu nedenle şifreli payload’ların şifresini çözemez veya bütünlük kodlarını (MIC) hesaplayamaz. Bununla birlikte, başlık alanlarını yorumlayabilir, çünkü bunlar açık bir şekilde iletilmektedir.

1. Tüm Kanallarda Frekansların Bozulması (Jamming) Saldırısı
Belki bir WirelessHART (veya IEEE 802.15.4) ağının kullanılabilirliğine yapılabilecek olan en basit saldırı jamming saldırısıdır. Jamming, bir radyo sinyalinin, orijinal radyo sinyaliyle aynı frekansta aynı modülasyon tekniğiyle başka bir radyo sinyali vererek kasıtlı olarak bozulması durumudur. Bu gerçek sinyalin alınmasında bozucu bir etki yaratır. WirelessHART, jamming saldırılarına karşı direnç sağlamak için kanal atlama yöntemini kullanır. WirelessHART tasarımcılarının varsayımı, bir saldırganın aynı anda tüm kanalları asla jamming uygulamayacağı tezine göre tasarlanmasındandır.
Ayrıca, WirelessHART, jamming saldırılarından kaçınmak için her iletişim kanalı, kara liste (Blacklisting) tekniğini kullanır. Bir iletişim kanalında başka bir sinyal algılanır algılanmaz, farklı olan iletişim kanalı bütün cihazlar tarafından kara listeye alınır ve bu iletişim kanalının belirli bir süre boyunca kullanılmaması sağlanır ve sıkıntılı iletişim kanalı mevcut iletişim kanalları listesinden çıkarılır.
Jamming saldırısı gerçekleştirmek için, saldırgan 2,4 GHz bandında çalışan diğer cihazları kullanabilir. Örneğin, ucuz WiFi adaptörleri (karışık iletim modunu destekleyen) sürekli rastgele WiFi paketlerini iletmek için kullanılabilir. Bu jamming türüne sürekli güç emisyonu denir. Ancak, WiFi bağdaştırıcıları gibi WirelessHART uyumlu olmayan cihazlar kullanıyorsa, bu cihazların sinyal gücü WirelessHART cihazlarından birini büyük ölçüde aşmalıdır. WirelessHART’ın konumlandırıldığı ortamlarda (fabrikalar, üretim tesisleri vb.) sinyal gücünün aşılması anlamında zor olabilir. Buradaki amaç, tüm kanallarda yeterince güçlü bir sinyal iletmek ve bu da WirelessHART’ın tüm kanalları kara listeye almasına neden olmaktır. Bu gerçekleştirmesi zor bir senaryodur, çünkü ağ bağdaştırıcılarının sinyal gücü, ağa müdahale edebilmek için gerçek cihazların sinyal güçlerini büyük ölçüde aşması gerekmektedir. Mesafeden kaynaklı sinyal güçlerinin aşılması düşükte olsa bir olasılık olarak karşımıza çıkmaktadır.
Daha iyi bir yol, gerçekten geçerli bir IEEE 802.15.4 paketini yeterince hızlı bir şekilde aktarabilen bir AT86RF233 yongasını (veya başka herhangi bir IEEE 802.15.4 uyumlu radyo) kullanmak olacaktır. Bu tür jamming’lere eşzamanlı paket aktarımı denir. Saldırganın, gerçek cihazların sinyal gücüyle karşılaştırılabilecek bir sinyal gücüne sahip olacak şekilde yeterli sinyal gücü elde etmek için yeterince büyük bir anten ve bir sinyal amplifikatörü içeren (veya bağlanan) bir PCB (Baskılı devre kartı) geliştirmesi gerekir. WirelessHART spesifikasyonu, gerçek cihazların iletim gücünün nominal 10 mW, ± 3 dB (Eşdeğer İzotropik Radyasyon Gücü veya EIRP ile uyumlu) olması gerektiğini belirtir. Bir saldırgan, WirelessHART ağının etrafındaki ortalama sinyal gücünün gerçek bir cihazdan ağ geçidine kadar ne olacağını hesaplayabilir ve ardından radyo sinyallerini bu değere göre ayarlayabilir. Bir amplifikatör kullanarak, diğer cihazları güçlendirmek için çok daha yüksek iletim gücü elde edebilir. WirelessHART spesifikasyonunda belirtilen alıcı hassasiyeti burada önemli değildir, çünkü amaç diğer cihazları güçlendirmek ve gerçek iletişimi bozmaktır.
WirelessHART Ağ Yöneticisinin her zaman bir kanalı kullanılabilir durumda tutup tutmadığı tam olarak bilinmemektedir. En iyi durumda, Ağ Yöneticisi bir kanalı meşru cihazlarla iletişim kurmak için kullanılabilir durumda tutar ve diğer kanalları girişimin durup durmadığını kontrol etmeye devam eder. Ancak, bu WirelessHART spesifikasyonunda belirtilmediğinden, bu senaryonun WirelessHART ağ yöneticisi tarafından nasıl ele alındığı belirsizdir. Bu nedenle, bu saldırının gerçekten ağı kesip kesmeyeceği de belli değildir. Ancak, tüm kanallar aktarım için uygun olmadığından ve daha küçük bir kanal grubunun aynı miktarda cihazla paylaşılması gerektiğinden, ağın toplam verimliliğini azaltacaktır.
2. Jamming Birleştirme Kanallarına Saldırı
Jamming saldırısını, yalnızca yeni aygıtların ağa katılması için ayrılmış kanallara jamming yaparak daha da iyileştirmek mümkündür. Bu, meşru cihazların ağa katılmasını önleyecektir. Bu saldırının, yalnızca meşru cihazları ağdan zorlayıcı bir kimlik doğrulama dışı bırakma saldırısı ile birleştirildiğinde ağı bozacaktır. Bu tür bir saldırı birleştirme anahtarının bilgisine sahip olmadan mümkün olmayacaktır ve bu sıkıştırma saldırısı bu nedenle etkili olmayabilir.
Bir WirelessHART ağının ağ reklamları şifreli olmadığından, bir saldırganın ağ yöneticisi (ve ağ geçidinin) meşru cihazlardan birleştirme istekleri beklediği andaki zaman dilimlerinde bilgi toplaması mümkündür. Bu zaman dilimleri, WirelessHART ağ reklamında belirtilen bağlantılar ve alan numaralarıdır. Ayrıca saldırganın, kanal sekme sırasını izlemesi için gerekli olan kanal offseti, reklam bilgilerinin içerisinde yer almaktadır. Böylece saldırgan, birleştirme isteklerini iletmek için gereken tüm bilgilere sahiptir. Saldırganın ilettiği birleştirme istekleri geçersizdir, çünkü payload’ı şifrelemek ve Ağ Katmanı’ndaki MIC’yi hesaplamak için gereken birleştirme anahtarına sahip değildir. Bununla birlikte, saldırgan tarafından geçerli bir Data-Link katmanı oluşturulabilir, çünkü bu katman public iyi bilinen bir anahtar kullanılarak hesaplanan bir MIC değerine sahiptir.
Saldırgan, katılmak için ayrılan tüm zaman dilimleri sırasında geçersiz birleştirme isteklerini (farklı bir anahtarla şifrelenmiş olabilir) iletebilir. Saldırgan böyle iyi biçimlendirilmiş ancak hatalı şekilde şifrelenmiş bir paket iletebilirse, ağ geçidi paketin alındığını bildiren saldırgana bir onay paketi gönderir. Bu davranış, Veri Bağlantısı katmanında paket meşru göründüğü için oluşur. Kod çözme işlemi daha sonra ağ yöneticisinin Ağ katmanı işlemcisinde başarısız olur, çünkü Ağ katmanı yükünün bu ağın birleştirme anahtarı kullanılarak şifrelenmesi ve imzalanması gerekir.
WirelessHART protokolü, böyle bir anormal durumunda bir geri çekilme zamanlayıcısı kullandığından, ağa katılmak isteyen herhangi bir meşru cihaz, saldırganın paketi ağ geçidine meşru cihazdan daha erken ulaştıysa ve ağ geçidi yalnızca ilkini kabul ederse bunu bir anormallik durumu olarak algılar. Paketleri bir zaman dilimi içinde alır. Bir cihaz anormallik tespit ederse, birleştirme isteğini başka bir zaman diliminde yeniden iletilmeden önce bir saniye kadar bekler. Ancak bekledikten sonra, saldırgan o kanalı da tutacaktır, böylece meşru cihaz başka bir değişkeni saniye saniye bekleyecektir. Saldırganın bu birleştirme kanallarındaki paketleri iletebildiği sürece çalışacak bir döngü oluşturmasına olanak sağlamaktadır.
Bu saldırının başarılı olabilmesi için saldırganın bir paket iletimini çok hassas bir şekilde zamanlayabilmesi gerekmektedir. Ağ geçidi, belirli bir zaman diliminde gelen (bozulmamış) ilk paketi kabul edeceği ve onu ağ yöneticisine ileteceği için, saldırganın, ağ geçidinin önce gönderilen paketini alacağından emin olarak meşru cihazı bertaraf etmesi gerekir. Ayrıca, saldırgan sinyalinin meşru cihazın sinyalinden daha güçlü olduğundan emin olmalıdır, aksi takdirde girişim söz konusu olabilir ve her iki paket de düşebilir. Her iki paket de düşürülürse, meşru cihaz geri çekilme zamanlayıcısını tekrar etkinleştirecek ve bir sonraki alanın birleştirme isteğini yeniden iletmesini bekleyeceği için saldırı başarılı sayılır. Meşru aygıttan vazgeçmeden önce azami sayıda denemenin yapılıp yapılmadığı bilinmemektedir. Bu, WirelessHART standardında belirtilmeyen özelliklerden bir tanesidir ve bu nedenle uygulamaya bağlı olarak değişkenlik gösterebilir.
Bu saldırıda, bir saldırgan sadece bir IEEE802.15.4 radyo yayını gerekmektedir. Bu yapılandırma çok az miktarda güç kullandığından, bu saldırıyı yapan çok küçük bir pille çalışan cihaz oluşturmak mümkündür.
3. Trafik Analizi Saldırısı
Trafiği dinlemek gizlilik tarafına gerçekleştirilebilecek bir saldırı türüdür. Daha önce belirttiğim gibi, bu güvenlik gereksinimi kullanılabilirlik veya bütünlük gereksinimlerinden daha az önemlidir. Ancak, bu saldırı kullanılabilirlik veya bütünlüğe yönelik diğer saldırıları mümkün kılmak için bilgi toplamak amacıyla kullanılması tehlike arz edebilir.
Bir sniffer kullanarak, saldırganın paketlerde bulunan meta verileri analiz etmesi mümkündür. Paketlerin büyük bölümleri şifreli olmadığından (spesifik olarak Data-Link ve Network katmanı başlıkları), şu anda ağda hangi cihazların aktif olduğu konusunda bir analiz yapmak mümkündür. Başlıklarda kaynak ve hedef adreslerini ve yönlendirme bilgileri bulunmaktadır. Aşağıdaki tabloda, bir paketin büyüklerinin, oturum anahtarına (veya birleştirme anahtarına) sahip olmayan bir saldırgan tarafından görülebilecek değerleri bize özetlemektedir.
4. Sahte Reklam Yayınlama Saldırısı
Sahte reklam yayınlamak, ağın katılım prosedürüne yapılan bir başka saldırıdır. Bir saldırgan “geçerli” ağ reklamları yayınlayabilir, çünkü bu reklamlar birleştirme anahtarı hakkında bilgimiz olmasını gerektirmez. WirelessHART özelliklerinde belgelenen sadece bilinen anahtarın bilinmesi yeterlidir.
Saldırgan, trafik analizini kullanarak meşru ağ reklamlarını dinleyerek meşru ağın ağ kimliğini belirleyebilir. Bu bilgiyi kullanarak ve Scapy aracını kullanılarak sahte ağ reklamları oluşturabilir. Ağ’a katılan bir cihazın ağa katılmak için hangi reklam cihazını kullanılacağı bilgisi ve nasıl karar verdiğine dair bir belge yoktur. Standartlar ağda yer alan herhangi bir cihazın ağ reklamları iletebileceğini belirtir. Diğer cihazlar daha sonra bu reklam cihazları üzerinden ağa katılabilir. Birleştirme cihazının kendisine en yakın olan reklam cihazını seçmesi olasıdır. Bu, alınan bir paketin sinyal gücünü gösteren RSSI (Alıcı Sinyal Gücü Göstergesi) kullanılarak yapılabilir.
Bir saldırgan ağ geçidini aşabilecek (meşru reklamları ileten) bir vericiyi kurabilirse, cihazların birleştirme isteklerini ağ geçidi yerine saldırgana iletmeye başlaması mümkün olabilir. Saldırgan, cihazın yanıt paketinin şifrelenmesini beklediği birleştirme anahtarına sahip olmadığı için el sıkışmasını meşru cihazla gerçekleştiremez. Ayrıca, meşru aygıtın, saldırgandan yanıt alamazsa ağa katılmak için başka bir reklam cihazı seçmesi de olasıdır. Bu nedenle, bu saldırının birleştirme anahtarına sahip olmadan saldırganın çok etkili olması da olası değildir.
5. Birleştirme Anahtarına Bruteforce Saldırısı
Bir ağ için ilk birleştirme anahtarı, genellikle satıcı tarafından yapılandırılır. Bazı satıcılar bu birleştirme anahtarını oluşturmak için anahtar şemaları kullanırlar ve saldırgan bu şemayı bilirse bruteforce saldırılarında başarılı olabilir. Kullanıcılar için sorun, başlangıç ​​birleştirme anahtarının değiştirilmesinin önce ağın önyüklenmesini gerektirmesidir. Bir WirelessHART ağı kurulduktan sonra, Command 963 (Yazma Seansı), kablosuz ortamdaki gelecekteki el sıkışmalarına katılma anahtarını değiştirmek için kullanılabilir. Ancak, başlangıç ​​birleştirme anahtarını değiştirme bu komutun kablolu HART üzerinden gönderilmesini sağlar. Bu, aygıtı açmayı ve kablolu HART protokolünü kullanarak bir bilgisayara bağlamak gerekir. Bu prosedürün sorunu, bir cihazı açarken, cihazın sahip olduğu sertifikaları geçersiz kılmasıdır. Örneğin, cihazın yüksek sıcaklık / basınç altında veya nükleer ortamlarda kullandığı sistemler olabilir. Bu nedenle, son kullanıcıların ağı ilk kez başlatmak için önceden yapılandırılmış birleştirme anahtarını kullanması beklenir.
WirelessHART cihazları tedarikçilerinin bu ilk birleştirme anahtarını oluşturmak için bir şema kullanması muhtemel olduğundan, birleştirme anahtarının son 8 baytına bruteforce atağı yapılabilir. Ürün satıcıları, son sekiz baytın benzersiz olduğu bir şema kullanıyorsa, bu bruteforce saldırısı, dört çekirdekli bir bilgisayarda birkaç saat içinde dinlenerek birleştirme isteği paketini şifrelemek için kullanılan birleştirme anahtarını bulabilmektedir. Makul bir sürede tamamlanabilecek maksimum 264 bitlik AES şifresini çözmesi gerekmektedir. Katılım anahtarını tahmin etmek için hem talebe hem de cevaba sahip olmak gerekli değildir, çünkü her iki paketin de payload yapısı başarıyla çözüldüğünde tanınabilmektedir.

Birleştirme Anahtarı İle Yapılabilecek Olası Saldırılar

Bu bölümde, saldırganın ağ için birleştirme anahtarı edindiği senaryodaki saldırıları sizlerle paylaşacağım. Sosyal mühendislik gibi teknik olmayan araçlar kullanılarak veya anahtarı tahmin ederek yapılabilir (bazı birleştirme anahtarları tahmin edilebilir olabilir). Saldırganın yalnızca birleştirme anahtarı varsa, tüm aygıtlarla iletişim kurabileceği anlamına gelmez. Ayrıca hedef cihazlar ve meşru ağ yöneticisi arasında bir el sıkışma yakalamak gerekiyor. Ağ ve Veri Bağlantısı katmanı oturum anahtarlarını almak için birleştirme anahtarını kullanarak bu el sıkışmasının şifresini çözebilir.
Ağ katmanı oturum anahtarları (payload’ı şifrelemek için kullanılır) her cihaz için benzersizdir, bu nedenle hedeflemek istediği tüm cihazların el sıkışmalarını yakalaması gerekir. Saldırgan, belirli bir cihaz için el sıkışma yakalarsa ve şifresini çözmek için birleştirme anahtarına sahipse, Ağ katmanı kaynak adresini Ağ Yöneticisi ve adresi olan 0xF980 olarak ayarlayarak paketleri ağ yöneticisi adına aktarabilir. Veri Bağlantısı katmanı kaynak adresi, 0x0001’e gönderilir ve paketleri el sıkışmasından çıkan anahtarlarla şifreler. Hedef aygıtlar bu paketleri ağ geçidi yoluyla iletilen meşru ağ yöneticisindenmiş gibi kabul edeceklerdir.

1. Toplu Kimlik Doğrulama ve Hizmet Reddi Saldırısı
Toplu kimlik doğrulaması, WirelessHART spesifikasyonunun çalışması sırasında bulunan en önemli saldırıdır. Çok fazla dikkat çeken bir saldırıdır: ağ yöneticisi günlükleri tutarsa, Ağ Yöneticisi tarafından çok kolay bir şekilde gözlenebilir. Ayrıca, bu saldırı ağın çalışmasını engeller, yani WirelessHART aygıtları artık herhangi bir sensör değerini iletmez, bu da proses operatörünün bir şeyin yanlış olduğunu hemen fark etmesine neden olur.
Command 972 (Ağ Askıya Alma), bir WirelessHART ağını belirli bir zaman diliminde geçici olarak askıya almak için ağ yöneticisi tarafından kullanılabilir. Askıya alma, bu paketi alan tüm cihazların belirtilen zaman dilimi için tüm radyo iletişimini keseceği anlamına gelir. Komut iki argüman alır: askıya alınmanın başlaması gereken zaman (ASN) ve ağın iletişimi sürdürmesi gereken zaman (ASN). Her iki sayı da, 40 bit işaretsiz tamsayıdır, yani değişkenlerin maksimum değeri 240’tır. Cihazlar daha sonra her biri 10 ms süren bu kanallar için uyku moduna geçer. Bu nedenle, ağ en fazla (240 ∗ 10ms) / 1000 saniye (348,4 yıla eşittir) askıya alınabilir.
Bu komutun yayın olarak veya tek noktaya yayın olarak iletilmesine izin verilir ve bu nedenle Ağ katmanındaki yayın-ağ yöneticisi anahtarıyla şifrelenebilir. Ayrıca bu aynı anahtar kullanılarak MIC üretilebilir. Veri Bağlantısı katmanında yayın-ağ geçidi anahtarı kullanılabilir. Saldırgan bu anahtarları birleştirme anahtarını kullanarak herhangi bir dinleme yoluylla el sıkışmasının şifresini çözerek veya kendi cihazını ağda birleştirerek alabilir, çünkü bu anahtar tüm cihazlar için aynıdır. Bu nedenle, bu saldırı, saldırganın tüm el sıkışmalarını yakalamasını sağlayan toplu yeniden kimlik doğrulamasını zorlamak için kullanılabilir.
Saldırgan, bir ağ katmanı kaynak adresi 0xF980 (ağ yöneticisi) ve Veri Bağlantısı katmanı kaynak adresi 0x0001 (ağ geçidi) içeren bir paket iletir. Paketin yükü, Ağ katmanındaki yayın-ağ yöneticisi anahtarı kullanılarak şifrelenmiş Command 972 ve Veri Bağlantı katmanındaki MIC, yayın-ağ geçidi anahtarı kullanılarak hesaplanmalıdır.
WirelessHART özelliklerinde, Command 972 paketi alan bir cihazın “tüm ağ bilgilerini temizleyeceği” belirtilir. Bu bölümden, hedef cihazın tüm oturum anahtarlarını sileceği ve belirtilen ASN eski haline ulaşana kadar telsizini devre dışı bırakacağı durumu gayet açıktır. Devam etme süresine ulaşıldığında, ağ geçidi ile bir el sıkışma gerçekleştirerek ağa yeniden katılır.
Devam etme zamanının değeri, saldırganın hedefine bağlıdır. Tüm aygıtların yeniden kimlik doğrulamasını istiyorsa, el sıkışmalarını yakalayabiliyorsa, devam etme süresini askıya alma zamanından çok düşük bir kaymaya ayarlayabilir. Amacı ağı kesmekse, devam etme zamanını çok yüksek bir değere ayarlamalı, bu durum cihazların kalıcı olarak uykuya geçmesine neden olacaktır (yönetici onları yeniden başlatana kadar). Pratik olarak bu, tüm sensörlerin güç döngüsünün alınması gerektiği ve bu sayede tesis proseslerinde büyük bozulmalara neden olacağı anlamına gelir.
Bir devam komutu bulunma olasılığı vardır (WirelessHART özelliklerinde belgelenmemiş olmasına rağmen). HART İletişim Vakfı, bir kablosuz ağın geçici olarak nasıl askıya alınabileceğini açıklayan bir patenti vardır. Patent ayrıca, cihazların askıya alınmış durumdayken dinlemeye devam edeceğini, bir cihazın sürdürme yayın komutunu iletebileceğini açıklar. Bu, ağın askıya alınmış durumundan uyanmasına neden olur. Ayrıca, Ağ katmanı açıkça askıya alma komutunu aldıktan sonra cihazın radyoyu kapatacağını açıkça belirtir. Bu, tüm telsizler kapalı olduğu için hiçbir cihaz bu komutu alamayacağından bir devam komutu bulunamayacağı anlamına gelir.
Bu saldırı çok yüksek bir potansiyele sahiptir. Saldırgan, yalnızca hedef ağ için birleştirme anahtarını bilerek bir el sıkışma gerçekleştirmeye zorlayabilir. Neredeyse tüm diğer saldırılar için el sıkışması gerektiğinden, bu çok iyi bir giriş noktasıdır. Ayrıca, eğer saldırgan o düğüm için tek noktaya yayın oturum anahtarlarına sahipse, belirli bir düğümü seçici bir şekilde düşürmek mümkündür. Ardından, saldırı paketini yayın olarak göndermek yerine doğrudan hedef düğüme iletebilir.
Saldırı çok fazla dikkat çekeceğinden dikkatli olunmalıdır. Ağ Yöneticisinde loglamalar olabilir ve operatör, cihazların kısa (veya uzun) bir süre boyunca azaldığını fark etmesi muhtemeldir; çünkü işletim arayüzü ağ tekrar birleşene kadar herhangi bir sensör değeri almayacaktır (tüm cihazlar birleştirilir).
2. Nonce Tükenme Saldırısı
WirelessHART, Ağ katmanı yüklerini şifrelemek için CTR modunda AES-128’i kullanır. Bu algoritma bir nonce kullandığından, ayrıca tekrar koruma sağlar. Ağ yöneticisi, ağa katılan tüm cihazlarla ilişkili tüm Ağ katmanlarının bir listesini tutar. Şebeke yöneticisi bir cihazdan bir paket alırsa, kaydında olandan daha düşük olan bir sayaç olmadan, paketi düşürür.
Bir saldırgan, ağ yöneticisi ile bir hedef cihaz arasındaki oturum anahtarına sahipse bu özelliği kötüye kullanabilir. Ardından, bu anahtarı kullanarak cihazın en az bir paket iletmesini bekler, böylece saldırgan bu paketi paketin içinden çıkarabilir. Saldırgan, ağ katmanındaki ağ yöneticisi ile iletişim kurmak için cihazın kullandığı Unicast-ağ yöneticisi anahtarıyla birlikte kullanılan nonce’u elde etmeyi amaçlamalıdır.
Bu saldırı paketinin Ağ katmanındaki nonce (counter) alanı (1 byte) eksi bir değerine (0xFE’dir) ayarlanabilir. Maksimum eksi değerine ayarlanması gerekir, çünkü ağ yöneticisinin oturum tablosundaki nonce sayacı maksimum değere ulaştığında, 0x00 değerine döner. Dönüşüm ile ilgili sorun, ağ yöneticisinin oturum tablosunda 0x00’lık bir tutarsız sayacı olması durumunda, gerçek cihaz tarafından iletilen herhangi bir sorunun oturum tablosunda depolanandan daha büyük olduğu için kabul edilmesidir.
Bu paketin payload’ı geçerli olmak zorunda değildir, ancak paketin doğru oturum anahtarı (tek noktaya yayın-ağ yöneticisi anahtarı) kullanılarak şifrelenmesi gerekir, aksi takdirde paket bırakılır. Veri Bağlantısı ve Ağ katmanı başlıklarındaki diğer tüm alanların, ASN ve sıra numaraları gibi doğru ayarlanması gerekir.
Alındıktan sonra ağ geçidi önce sağlama toplamını (CRC-16) kontrol eder, Data-Link katman başlıklarını ayrıştırır ve ardından ağ yöneticisi Ağ katman başlıklarını ayrıştırmaya başlar. Kaynak adresini (saldırganın hedefi olan) ve nonce (counter) alanını, tam olmayanı yeniden oluşturmak için kullandığı paketten çıkaracaktır. Yeniden yapılandırılmış nonce, oturum tablosunda kayıtlı olan nonce’dan daha büyük olup olmadığını görmek için bir arama yapar. Saldırgan, ağ yöneticisinin oturum tablosunda sahip olduğu nonce’u bildiği ve bunun maksimum değerden (yani maksimum değer eksi bir) daha az olduğunu bildiğinden bu kontrolü geçecektir. Daha sonra, ağ yöneticisi paketin kaynak adresiyle ilişkili nonce ve unicast-ağ yöneticisi anahtarını kullanarak yükün şifresini çözecektir. Şifre çözme üzerine, nonce kaydı güncellenecektir.
Ağ yöneticisinin oturum tablosundaki nonce saymaçı en az bir eksi değerine güncellenir güncellenmez, ağ yöneticisi bu paketten bir sonraki paketin 0xFF olmayan bir nonce sayacına sahip olmasını bekler. Daha sonra meşru cihaz tarafından iletilen tüm paketler, meşru cihaz yerel sayacını her yeni pakette birer birer arttırdığı için bu değerden daha düşük bir sayaç değerinde olacaktır. Beklenen sonuç, ağ yöneticisinin meşru paketleri tekrarı olarak işaretlemesidir, çünkü ağ yöneticisi başarılı bir şekilde yeniden oluşturamadığından paketleri bırakacaktır. Meşru aygıttan kaç tane başarısız denemeden sonra başka bir el sıkışma başlatacağı özellik olarak belirlenmiştir. Bir noktada cihazın artık ağ yöneticisine ulaşamayacağını fark etmesi ve ağa yeniden katılması beklenmektedir. Bu büyük olasılıkla maksimum nonce değerine ulaşmadan önce gerçekleşecektir.
Araştırmacılar, bu saldırının, tek bir cihazla ağ yöneticisi arasındaki iletişimi kalıcı olarak kesmek için kullanılabileceğini iddia etmektedir. Bununla birlikte, her bir iletimdeki kararsızlığını artırarak ağ yöneticisine ulaşmaya çalışmaya devam edebileceğinden bu iddia doğru olmayabilir. Bir noktada, paketin ağ yöneticisi tarafından kabul edilmesine neden olan nonce sayacının maksimum değerine ulaşacaktır (bu işlem milyonlarca paket alacaktır).
Bir saldırganın bunu kalıcı bir saldırıya sokması için, hedef aygıt tarafından iletilen bağlantıları izleyen ağ trafiğini sürekli dinlemesi gerekir. Bir hedef cihaz kısa sürede maksimum nonce değerine sahip bir paket ilettiğinde, saldırganın servis reddetme paketini maksimum eksi değerinin nonce sayacı ile tekrar iletmesi gerekir.
Bu saldırının test edilmesi, meşru bir cihazın artık ağ yöneticisi ile iletişim kuramadığı zamanlarda nasıl davrandığını gözlemlemek için gereklidir. Aygıtın bir birleşme anlaşması başlatması mümkün olabilir; bu durumda bu saldırının sahte reklamları yayınlamak gibi belirtilen diğer saldırılarla birlikte yapılması ilginç olabilir.
3. Zaman Kanalı Saturasyonu Saldırısı
Bir saldırgan hedef cihaz için tek noktaya yayın yapan ağ geçidi anahtarını edinmişse, hedef aygıta tahsis edilen her zaman diliminde ağ paketlerini ağ geçidine iletebilir. Hangi zaman dilimlerinin hangi cihaza tahsis edildiğini belirlemek için istatistiksel analiz kullanmak da mümkündür, ancak gözlenen zaman dilimlerinin cihaza tahsis edilen tüm zaman dilimlerinin olup olmadığı kesin olarak belirlenemez. Saldırganın bu paketlerin iletimini yeterince doğru bir şekilde zamanlayabileceğini varsayarsak, hizmet reddi gerçekleşir.
Meşru bir cihaz bir paketi iletmek istediğinde, kanaldaki enerjiyi belirli bir süre (durma zamanlayıcısı) beklemesine neden olacak şekilde algılar. Bu zamanlayıcının süresi dolduktan sonra, bir sonraki zaman diliminde paketi tekrar iletmeye çalışacaktır, ancak saldırgan, bir meşru cihazın tekrar kapalı moduna geçmesine neden olacak şekilde bu zaman diliminde bir paket gönderecektir. Bu şekilde, ağ geçidi cihaza erişilemez olduğunu fark etmeden belirli bir cihazın ağdan tamamen engellenmesi mümkündür. Bu saldırının test edilmesi, meşru cihazın yeniden katılmaya çalışacağını veya belki de ayrılan zaman dilimlerinin dışındaki ağ geçidiyle iletişim kurmaya çalışıp çalışmayacağını doğrulamak için gereklidir.
4. Ağ Cihazlarından Yanlış Veri Aktarımı Saldırısı
Saldırgan, bir hedef aygıt için tek noktaya yayın yapan ağ yöneticisi anahtarlarını aldıysa, sahte sensör değerlerini içerebilecek ağ paketlerini enjekte etmek önemlidir. Sonuçta proses operatörü yanlış kararlar verebilir ve örneğin bir motoru hızlandırabilir veya fiziksel hasara neden olan bir valfi açabilir veya kapatabilir. Bu bütünlük güvenlik gereksinimine yapılan bir saldırıdır. Fiziksel hasara neden olma potansiyeline sahiptir, bu nedenle saldırganın nedenine bağlı olarak, bu ilginç bir saldırı olabilir.
5. Yanlış Verileri Ağ Cihazlarına Aktarma Saldırısı
Saldırgan, tek noktaya yayın yapan oturum anahtarını aldıktan sonra paket enjeksiyonu da ters yönde mümkündür. Paketleri proses operatörünün iş istasyonundan geliyormuş gibi iletebilir, WirelessHART cihazına vanayı açma veya kapama veya bir motoru hızlandırma gibi bir işlem yapması talimatını verir. Bu tür paket enjeksiyonunun dezavantajı, cihazın komut sonucunu işlem operatörünün konsoluna geri bildirmesini sağlamasıdır (bir şeylerin yanlış olduğunu görmesine izin verir örneğin, operatörü komutu vermeden kapatılmış olan vana gibi).
6. Kimliğin Doğrulanamaması Saldırısı
Saldırgan, tek noktaya yayın yapan ağ yöneticisi anahtarlarını edinmişse, bir aygıtı ağdan çıkarmak için command 960 komutunu (aygıtın bağlantısını kes) kullanabilir. Bu paketin Ağ katmanı kaynak adresi 0xF980’e eşit olmalı ve paket, Ağ Yöneticisi ile hedef aygıt arasındaki tek noktaya yayın yapan ağ yöneticisi anahtarı kullanılarak şifrelenmelidir. Bu komut meşru aygıtın ağ bağlantısı kesileceği meşru ağ yöneticisine bir onay göndermesine neden olacaktır.
Standartlara göre, bir cihazın otomatik olarak ağa yeniden bağlanacağı şeklindedir. Ağa tekrar katıldığında, saldırgan tüm oturum anahtarlarını da içeren el sıkışmasını yakalayabilir. Hedefin bağlantısını tekrar kesmek için ağ yöneticisinin sahte bir kaynak adresine sahip başka bir command 960 paketi gönderebilir. Bu bize Hedef cihazın, diğer komşularının bağlantısını keseceğini ve ardından bağlantının kesileceğini gösterir. Hedef daha sonra otomatik olarak ağa yeniden katılır.
7. Zaman Senkronizasyonunun Kaybolması Saldırısı
Saldırganın tek noktaya yayın ağ yöneticisi anahtarı varsa, command 793 komutunu verebilir (UTC zaman eşlemesini yaz). Bu komutun iki parametresi vardır; ağın mutlak alan numarasının (ASN) sıfır olduğu tarih ve saat. Saldırgan hatalı bir zaman damgası sağlıyorsa, cihaz ağ için doğru ASN ve superframe kanalları numaralarını hesaplayamaz ve kanal zamanının ağla senkronize edilmemesine neden olur. Bu komut yalnızca gönderen Ağ Yöneticisi ise hedef tarafından kabul edilir, bu nedenle Ağ katmanı kaynak adresinin 0xF980 olarak ayarlanması gerekir.
Bu saldırı, bir cihaz zaman senkronizasyonunu kaybettiğinde ne olması gerektiği konusunda spesifik bir şey olmadığı için test edilmelidir. Aygıtın zamanını ağ yöneticisi ile yeniden senkronize etmeyi denemesi mümkündür, ancak bu durum, ağ geçidiyle artık iletişim kuramadığından (dolayısıyla ağ yöneticisine de erişememektedir), çünkü kanal zamanlamaları farklıdır. Aksi takdirde, bağlantısı kesilmiş gibi ağa yeniden katılabilir.
8. Aygıt Hırsızlığı Saldırısı
Bir saldırganın geçerli ağ reklamları iletmesi mümkündür. Saldırganın birleştirme anahtarı varsa, onun kötü niyetli ağ geçidine katılmak isteyen bir cihazla el sıkışması yapması mümkündür. Bu noktaya kadar, paketlerin saldırgan ve hedef arasındaki iletiminin meşru ağın WirelessHART trafiği tarafından kesintiye uğramaması önemlidir, çünkü bu katılım sürecini oldukça yavaşlatır. Çok yavaşlarsa veya çok fazla parazit varsa, hedef ağa katılmak için başka bir ağ geçidi seçebilir.
El sıkışma bir hedef cihazla gerçekleştirildikten sonra, gerçek ağ geçidi ile ilgili oturum anahtarına sahip olmadığından meşru ağ geçidi ile iletişim kuramayacaktır. Bu, saldırgana hedef üzerinde tam bir kontrol sağlar, çünkü onunla bire bir oturumu vardır. Artık hedefte yapılandırma ayarlarını değiştirmek için kötü amaçlı bir Ağ Yöneticisinden kaynaklanan yönetim komutları verebilir. Bu işe yarayacaktır, çünkü hedef, Ağ Yöneticisinden gelen bir 0xF980 (Ağ katmanı) kaynak adresine sahip paketleri kabul eder (ağ başına yalnızca bir tane). Bu paketler doğru oturum anahtarıyla şifrelenmişse, hedef paketin yükünde ne olursa olsun komutunu uygular.
Kablosuz ortam üzerinden değiştirilebilecek parametrelerden biri ağ kimliğidir (Command 773 WirelessHART komutunu kullanarak). Ağ kimliği değiştikten sonra, artık farklı bir ağ için yapılandırıldığından, cihaz artık meşruWirelessHART ağına katılmayacaktır Bu yeni ağ kimliği bir sonraki birleştirmede kullanılacaktır, bu nedenle hedefe bir bağlantı kesme komutu göndermek önemlidir (Command 960).
Saldırgan şimdi bu yeni ağ kimliğiyle bir WirelessHART ağı kurabilir ve reklam yayınlamaya başlayabilir. Ardından, ağına katılmaya çalışan hedefle bir el sıkışma gerçekleştirebilir. Hedef şimdi saldırganın WirelessHART ağına tam olarak katılmış durumdadır ve Ağ Yöneticisi yeniden yapılandırılmayacaksa, cihazı tekrar bağlamazsa artık meşru ağa katılmayacaktır.
Bu yazımda sizlerle, WirelessHART protokolü için birkaç olası saldırıyı ayrıntılı olarak açıklamaya çalıştım. Sizlerle paylaştığım saldırılar, WirelessHART protokolündeki en önemli iki güvenlik gereksinimine odaklanmıştır: kullanılabilirlik ve bütünlük. İlk önce, saldırganın ağ hakkında herhangi bir bilgiye sahip olmasını gerektirmeyen bir dizi saldırı durumunu sizlerle paylaştım. Ağın bozulması jamming yöntemi kullanılarak mümkündür, ancak bu saldırı çok etkili görünmemektedir.
Saldırganın katılım anahtarı hakkında bilgisi olduğunda daha etkili saldırılar yapılabilir. Katılma anahtarı bilgisine sahip bir saldırganın, WirelessHART ağının tamamını (ağ geçidi dahil) tüm kısa bir süre boyunca veya çok uzun bir süre için kapatmasına olanak tanıyan bir toplu kimlik doğrulama saldırısını sizlerle paylaştım. Kısa bir süre için kapatıldığında, bu saldırı bir ağın yeniden başlatılması olarak kavramsallaştırılabilir, böylece saldırganın tüm cihazlar arasında oturum anahtarları almasına izin verilir. Bu anahtar daha sonra diğer saldırılar için kullanılabilir.
Saldırgan, doğru oturum anahtarlarını aldığında, ağ üzerinde tam kontrole sahiptir. Paketleri yanlış ölçümlerle (bütünlük) enjekte edebilir ve çeşitli cihazlarla (kullanılabilirlik) belirli cihazlarla veya bu cihazlarla iletişimi kesebilir. Bunların dışında yapılabilecek saldırıları da aşağıdaki gibi gruplayarak sizlerle paylaşıyorum ve bu yazı dizisini de burada tamamlıyorum.
Saha Cihazlarına Yapılabilecek Saldırılar

  • Hizmet Reddi
  • Spoofing
  • Man in the Middle
  • Replay
  • HELLO Floods
  • Sinkholes
  • Eavesdropping
  • Jamming
  • Sybil Attack

Ağa Yapılabilecek Saldırılar

  • Hizmet Reddi
  • MAC Spoofing
  • Man in the Middle
  • Ad-hoc Wireless Köprü Saldırısı
  • Rogue APs