Nesnelerin İnternetinde Kullanılan Protokoller, Zayıflıklar ve Saldırılar

app layer

Bu makale Nesnelerin İnterneti üzerinde yapılan çalışmalar ile kullanılan protokoller, zayıflıklar ve siber saldırıları içermektedir.

Protokol nedir?

Ağ üzerinde mesaj ve paket gönderimini sağlayan, belli standartları olan bir iletişim metodudur. Her protokolün kendine özgü teknikleri ve dikkat ettiği noktalar vardır: verinin nasıl gönderildiği, şifrelenmesi, sıkıştırılması ve hata kontrolü gibi. Nesnelerin İnternetinde kullanılan protokoller 5 farklı katmana ayrılabilir.

IEEE 802.15.4 nedir?

Nesnelerin İnterneti için kullanılan iletişim protokollerini incelediğimizde, bu protokollerin ortaya çıkmasında önemli rolü olan bir standarttır. Bu standart, noktadan noktaya iletişim ve yıldız topolojisini kullanarak dizayn edilmiştir. Bu topolojide merkezde bir koordinatör cihaz vardır. Diğer tüm cihazdan noktadan noktaya iletişim ile koordinatörle bağlantı kurar. Mesajlar koordinatör cihaz üzerinden gönderilir. Ayrıca, düşük hızlı ve düşük güç tüketimine uygun ortamlar için kullanımı ideal olan bir standarttır.

ZigBee nedir?

ZigBee, IEEE 802.15.4 standardına uyularak yapılan düşük hızlı kablosuz kişisel alan ağları protokolüdür. ZigBee, düşük oranda veri kullanımı için, minimum düzeyde güç tüketimini hedefleyen bir prensibe dayanır. Veri alışverişi olmadığı zamanlarda, cihazların ve koordinatörün kendini uyku moduna alması ve büyük boyutta veri gönderilmemesi, düşük güç tüketimini sağlar.

Güvenlik açısından temel olarak iki algoritma kullanılır: İleri düzeyde Şifreleme Standardı -AES- ve Mesaj Denetleme Kodu -MAC- AES algoritmasında, şifrelemede sıklıkla kullanılan simetrik anahtar algoritması kullanılır. Yani, alıcı ve verici mesajı şifrelemek ya da çözmek için, aynı anahtarı kullanır. Bu anahtar sadece onlarda bulunmalıdır. ZigBee protokolünde AES, genellikle 128 bitlik anahtar ile kullanılır.

AES, yerine koyma – permutasyon ağı üzerine temellendirilmiştir. 128 bit yerine 16 byte olarak düşünülen şifrelenmemiş mesaj, 4×4 lük bir matris yardımıyla, belli bir matematiksel formül kullanılarak şifrelenir. Her döngüde farklı bir döngü anahtarı kullanılır. Mesajı çözümlerken, uygulanan matematiksel formüller tersten uygulanır. Bu yüzden, şifreleme ve çözümleme algoritmaları ayrı şekilde kodlanmalıdır.

MAC, oturum anahtarı kullanarak, bilgi üzerinde kriptografik denetleme sağlayan ve gönderilen mesajdaki bilinçli ya da bilinçsiz değişimleri tespit eden bir algoritmadır. MAC’de şifrelenmemiş mesaj bloklara bölünür. Ve gizli olmayan, rastgele bir başlangıç vektörünün -IV- ilk blok ve bir anahtar ile şifrelenmesiyle oluşan çıktı, ikinci blokla birlikte şifrelenmek için girdi olarak kullanılır. Şifrelemede, XOR işlemi kullanılır. Buna Blok zincirleme modu denir. Şifre çözümünde ise, aynı anahtarla işlemler uygulanır ve sonuçların aynı olup olmadığı kontrol edilir. Eğer sonuçlar farklı ise, mesajın ya da MAC değerinin manipüle edildiği sonucuna varılır.

ZigBee, bu algoritmaların yanında, ekstra güvenlik yöntemlerini destekler. Böylece, üç farklı çeşit anahtar noktalar arası güvenliği sağlamak için kullanılır: ana -master-, bağlantı -link-, ve ağ -network-  anahtarları.

Ana anahtar, tedarikçi tarafından her cihaza -node- önceden yerleştirilmiş olup, iki ZigBee cihazı arasındaki anahtar değişim işleminde korumayı sağlar.

Ana anahtardan elde edilen bağlantı anahtarı, her çift cihaz için özel ve farklı olup, iki cihaz arasındaki bütün bilgileri şifreler ve korur. Bu sebepten dolayı, daha fazla hafıza yeri gerektiğinden, IoT cihazlarına uygun değildir ve kullanımı yok denecek kadar azdır.

Ağdaki tüm cihazlar arasında paylaşılan ağ anahtarı, ağa girebilmek için bu cihazlar için bir koşuldur. Güvenlik merkezi-koordinatör- tarafından üretilen bu anahtar, tüm cihazlara dağıtılır. Ayrıca güvenlik merkezinin -Trust Center- takip ettiği iki ana güvenlik yolu vardır: ana ve bağlantı anahtarlarını tüm cihazlara yayan, yüksek miktarda kaynağa ihtiyaç duyan Commercial- yüksek seviyede güvenlik- modu ve sadece ağ anahtarını yayan Residential modu-standart modda güvenlik-. Mesela, Commercial modu kullandığımızda, ağ anahtarını ana anahtarı kullanarak şifreleyebilir ve böylece cihazlar arası güvenli iletişimi sağlayabiliriz. Eğer Residential mod kullanılırsa, bu kez ağ anahtarı şifrelenmemiş bir şekilde yayılacağından, güvenliğinin sağlanması kritik olan sistemlerde, bu modun kullanılması önerilmez. (1)

zigbee

ZigBee’de farklı tiplerde saldırılara rastlamak mümkündür. Örneklerle ilerleyecek olursak:

ZigBee Uç cihazlara sabotaj saldırısı (ZED attack)

Sensörleri ve uygulayıcı aygıtları içine alan uç cihazlara düzenli bir şekilde özel bir sinyal göndererek, bataryanın bitirilmesidir. Veri alışverişi yapmadığı zamanlarda kendisini uyku moduna alan bu cihazların devamlı olarak aktif halde tutulmasıdır. Eğer mesaj bütünlüğü yoksa, iletilen mesajlar şifreli olsa bile ZigBee ağı DoS saldırılarına açıktır. Saldırgan, gizli anahtarı bilmeden şifrelenmiş rastgele içerikli bir mesaj oluşturur ve resim karesi sayacını maximum değere eşitler. Bu mesajı cihaza gönderir. Cihaz üst protokol katmanı için bir anlam ifade etmeyen bu rastgele mesajı çözümler. Bu sırada saldırgan resim karesi sayacı- frame counter- ile, ulaşabileceği en yüksek noktayı -high-water mark- maximuma eşitlemiştir. Bu saldırıdan sonra gelecek tüm normal verileri cihaz reddedecektir çünkü gelen mesajın sayacı, saldırgan tarafından manipüle edilen en yüksek noktadan daha aşağıda olacaktır.

Same-Nonce saldırısı

AES ve CBC algoritmalarının birleşimiyle oluşan AES-CBC* yönteminde kullanılan 4 ana unsurdan biri nonce dur. Mesela aynı mesajları şifrelerken aynı anahtarı kullanmamıza rağmen, farklı şifrelenmiş mesajlar oluşur çünkü kullanılan noncelar sadece o şifrelemeye özeldir. Buna mantıksal veya anlamsal güvenlik de denir -semantic security-.

Eğer herhangi bir nedenden dolayı, erişim kontrol listesi aynı nonce u ve aynı anahtarı birbirini takip eden iki mesaj için sağlarsa, saldırgan mesaj hakkında birtakım bilgiler elde edebilir. Fakat saldırgan iki ayrı şifrelenmiş mesaj için kullanılan anahtarın ve nonce un aynı olduğundan emin olmalıdır. Emin olduktan sonra, algoritmanın çözümleme yöntemini kullanarak, mesajı elde edebilir (XoR işlemi operasyonlarıyla).

Ağı Keşfetme ve Cihaz Tanımlama Saldırısı

Ağ keşfetme sürecinde, ZigBee cihazları bir kanal üzerinden kontrol ışığını yakmak için istek gönderirler. Bunun sonucunda, bu isteği alan yönlendiriciler ve koordinatörler, cevap verirken, bazı önemli bilgileri açık hale getirir. Bu ağ keşfetme yönteminde, KillerBee yazılımını bir AVR RZ Raven USB’e kurup, diğer AVR RZ Raven USB cihazına kurduğumuz RZUSB yazılımı ile birlikte taklit etmek mümkündür. RZUSB yazılımı ile, yanıltma uygulanırken, KİllerBee yazılımı ile paket enjekte edilir. Benzer bir istek oluşturulur ve KillerBee’nin zbstumbler aracı kullanılarak, koordinatörler ve cihazlar hakkında önemli bilgiler elde edilir. Ağın bir kanalını yakalayan saldırgan, artık gönderilen paketleri yakalamak için saldırı oluşturmaya hazırdır.  (2)

ağ keşfetme

Paketleri Yakalama Saldırısı

ZigBee ağları, çoğunlukla şifreleme kullanmadığından dolayı ağ trafiğini ve önemli bilgileri elde etmek mümkündür. KillerBee’nin zbdumps aracıyla bu trafiği elde edilir ve kaydedilir. Ve böylece tekrarlama saldırıları ile trafikte elde edilen paketleri manipüle edip, istediğimiz işlemleri yapma hakkına erişebiliriz.

Bunların dışında ZigBee’ye fiziksel bir saldırının gerçekleştirilmesi ihtimali de vardır. Önemli ve kritik yerlerin güvenliğinde kullanılan ZigBee’ye yönelik bu tür saldırıları önlemek için, erişilmesi zor yerlere yerleştirilmelidir ve izinsiz girmeleri tespit eden ve önleyen uygulamalar geliştirilmelidir.

Z-Wave Nedir?

Protokollerin içinde bağlantı katmanında bulunan, düşük enerjili radyo dalgalarını kullanan, akıllı ev sistemlerinde, akıllı anahtarlarda, güvenlik sistemlerinde kullanılan, kablosuz ağ ile iletişim kuran bir protokoldür. Farklı üreticilerden oluşturulan ev kontrol sistemlerinin birlikte çalışmasına – interoperability – olanak sağlar. Z-Wave, kısa gecikmelerle küçük veri paketlerinin gönderilmesi üzerine dizayn edilmiştir. 30 metreye kadar etki alanı olan Z-Wave, diğer bağlantı katmanındaki protokollerle karşılaştırıldığında, daha fazla menzil alanı vardır. Buna karşılık, veri aktarım hızı diğerlerine göre düşüktür. Z-Wave, gönderilen komutun alıcı tarafından onaylanmasını kontrol eder ve eğer karşı cihazdan cevap alamazsa, hata raporu oluşturur. Bundan dolayı, Z-Wave güvenilir kablosuz ağ tekniği olarak kabul edilir.

Cihazların ya da sensörlerin birbiriyle etkileşiminde, ZigBee’deki tekniğin aksine kullanılan koordinatör cihaza bağlanma zorunluluğu yoktur. Merkezdeki koordinatör direkt radyo bağı ile etki alanındaki diğer tüm cihazlara bağlanma yetkisine sahiptir. Yönlendirici olmadığı zaman, etki alanı dışındaki cihazlara etki edemeyen koordinatör, Z-Wave ağ mekanizması ile birlikte bu sorunun üstesinden gelir. Z-Wave cihazları, koordinatörün kontrolü altında olmayan komşu cihazlarla etkileşime geçebilir. Bu sayede etkileşime geçtiği cihazla koordinatör arasında yönlendirici görevini üstlenir. Bu sayede daha fazla cihaz ağın içine katılmış olur, bu da daha sağlam ve daha esnek bir iletişim ağını ortaya çıkarır.

Z-Wave, ağ içindeki cihazlara iki tane tanımlama zorunluluğu getirir: Ortam Kimliği (Home ID) ve Cihaz Kimliği (Node ID). Ortam kimliği, yalnızca o ağdaki cihazların ortak olarak kullandığı kimliktir. Cihaz Kimliği ise her cihaz için özeldir. Aynı ortamda aynı cihaz kimliğine sahip cihazlar bulunamayacağı gibi, farklı ortamlarda aynı cihaz kimliğine sahip cihazlar olabilir. Fakat farklı ortam kimliğine sahip cihazlar, iletişim kuramaz.

Bu protokolde, bir cihazla merkezdeki bir cihazın iletişime geçmesi için ağ anahtarı paylaşılmalıdır. Mesela yeni bir cihaz Z-Wave ağına katıldığında, bu ağ anahtarı cihazla paylaşılır. Alıcı ve verici arasında özel bit serilerini, bu cihazların Home ID ve Node ID sini içeren bir paket karşılıklı gönderilir. Bu şifrelenmemiş ilk paket, saldırganlar için saldırıya açık hale gelir. Bu paketin içerdiği zaman bilgisini, kaynağı ve varış yerini saldırgan kolayca tespit edebilir. Bu bilgileri kullanarak, merkezdeki cihaz taklit edilir ve diğer cihazlara gerçek merkez cihazdan geliyor gibi görünen paketler gönderilir. Böylece her paketten saldırgan bilgiler elde eder ve tüm cihazların ağ haritasını çıkartır.  (3)

EZ-Wave Aracıyla Yapılan Saldırı

EZ-Wave aracı, 200 satır bir python kodundan oluşan açık kaynaklı kod olup, temel olarak 3 bölümden oluşuyor. Ezstumbler komutu, sistemde hangi Z-Wave cihazlarının mevcut olduğunu bulmaya yarar. Ezrecon komutu, cihazı bulmaya, cihazın adını, üreticisini, yazılımını ve şuanki durumunu keşfetmeye yardımcı olur. Ezfingerprint komutu, cihazda kullanılan spesifik Z-Wave protokolüyle ilgili bilgileri bulmaya yarar. EZ-Wave, cihaz üzerinde keşif yapmaya yarayan bir araç olup, saldırı yapmak için gereken kapasiteye sahip değildir. Bu araç kullanılarak, 2016’da Joseph Hall ve Ben Ramsey, bir konferansta bu araçla lambaları rahatlıkla patlatabildiklerini göstermişlerdir.

Bluetooth-LE nedir?

Periyodik olarak küçük miktarda veri transferini sağlayan düşük enerji düzeyli Bluetooth -Bluetooth-LE-, sensörler, harekete geçirici uç noktalardaki aygıtlar ve nesnelerin internetindeki cihazlar için çok düşük miktarda güç tüketimi olduğundan dolayı, tam uyumlu olduğu söylenebilir. Bunun yanında, çok miktarda cihazla az gecikmelerle haberleşmeyi sağlaması, çabuk tepki verme, kısa sürede bağlanma ve telefon ve tabletlerle uyumu özellikleri açısından oldukça elverişli bir protokoldür.

Bluetooth-LE, istemci sunucu modelini kullanır. İstemci, data istemek için bir ya da daha fazla sunucuya bağlanabilir. İstemci merkez rolünü üstlenirken, sunucu çevresel rolü üstlenir. Sensörler sunucular vazifesi görürken, bilgisayarlar, telefonlar ya da tabletler istemci gibi davranır. Ağ geçidi açısından baktığımızda, ağ geçidi istemci -merkez- görevindedir. İstemci bağlantı kurmak için sunucu tarar. Bağlantı kurulduktan sonra, belli ve düzenli aralıklarla veri aktarımı gerçekleştirilir.

Mesela, akıllı telefonlar Bluetooth-LE’nin kullanıldığı bir uygulama ile ağ geçidine -gateway- dönüşebilir. Bu protokolün kullanıldığı giyilebilir bir sensörün telefon uygulamasına veri gönderip, bu verinin hastane servisine akışı bulut sistemiyle sağlanabilir.

Daha çok giyilebilir teknolojiler için kullanılan Bluetooth-LE teknolojisi, üreticilerin dikkat etmemesinden ötürü birtakım zafiyetlere sahiptir.

Adres zayıflığı

Bluetooth LE kullanan cihazlar dört adet adrese sahiptir: Üreticiler tarafından belirlenen ve cihazın ömrü boyunca sabit olan genel adresi, her şarj döngüsünde değişebilen random statik adresi, sadece ana cihazın sahip olduğu bir anahtarla üretilen, rastgele olup belli bir zamandan sonra değişen özel çözümlenebilir adresler ve ana cihazın çözemediği yani bir anahtarın kullanılmadığı fakat belli bir zaman aralığında değişen özel çözümlenemeyen adresler.

Adres yanıltma yöntemi ile saldırgan, sunuculara ya da merkez cihaza bağlanarak, diğer cihazların birbiriyle iletişimini engelleyebilir. Ayrıca, genel adresler her zaman sabit olduğu için, en çok zayıflık onlarda görülür.

Bildirme (uygun zaman) aralığında görülen zayıflıklar da vardır. Bildirme zaman aralığını kullanarak yanıltılan cihaz, bağlanması gereken asıl cihazdan daha önce ana cihaza bağlanabilir. Burada zaman aralığının uzunluğu çok önemlidir.

Şifrelenmemiş mesajların bağlantı oluşmadan sunucudan merkez cihaza gönderilmesi de büyük bir tehdit oluşturur. Ağa sızan saldırganlar tarafından veri analiz edilebilir. Bu yüzden, bağlantı sağlandıktan sonra verinin gönderilmesi ve verinin şifrelenmesi güvenlik açısından büyük öneme sahiptir.

MITM saldırısı

Bluetooth kullanan cihazlar, özellikle bu saldırı tipine daha açıktır. Eğer saldırgan bir şekilde, iletişim halinde olan iki tarafın bağlantılarının kesildiğine inandırırsa, saldırgan bu iki bluetooth modülünü ana ve yardımcı cihaz olarak, paket enjeksiyonu ve doğrulama saldırılarında kullanabilir.

Sinyal Yayılma Zaman Aralığı Saldırısı

Nesnelerin internetinde yer alıp, batarya ile çalışan ve düşük pil tüketimini hedefleyen cihazlar, sinyal yayma sıklıklarını optimize etmek isterler. Saldırgan, çok sıklıkta sinyal oluşturup, yayma zaman aralığını minimum düzeye indirebilir. (4) Böylece bağlanmak isteyen cihaz, ilk sinyal aldığı cihaza bağlanabilir.  Bunun önüne geçmek için, çoğu cihaz asıl cihazla bağlantıyı koparmayıp, aktif bağlantı sırasında sinyal yaymaz.

UDP nedir?

Protokol katmanlarının içinde iletim katmanında bulunan, datagram adı verilen kısa mesajları göndermek için oluşturulmuş, gömülü sistemlerde daha çok tercih edilen, gerçek zamanlı performans sağlayan bir protokoldür. TCP protokolünde mesajın alıcıya ulaşıp ulaşmadığı ve eksik bir paket olduğunda tekrar gönderilmesi kontrol edilirken, UDP’de mesaj bütünlüğü kontrol edilmez. Yani UDP, hata kontrolünün ve mesajı doğrulamanın gerekli olmadığını varsayar. Bağlantı kurma yükünün çok fazla olduğu ve ulaşımın önemli olduğu uygulamalarda (video ve ses aktarımı gibi) UDP tercih edilir. Tek taraflı veri akışı için kullanılması daha uygun olan UDP, bağlantı odaklı çalışmaz. UDP, TCP’de olduğu gibi IP protokolü ile birlikte çalışır. Nesnelerin İnternetinde kullanılan mesajlaşma protokollerinden CoAP, UDP tabanlı olarak çalışır. UDP’de IP adresinin geçerli olup olmadığını kontrol etmez. UDP mesaj paketleri bağlantı odaklı çalışmadıklarından dolayı, bazı zayıflıklara sahip olup, saldırıya açık haldedirler. Bu saldırılardan bazıları şunlardır.

UDP Flood Saldırısı

DoS saldırı tiplerinden biri olan UDP Flood, saldırganın belirlenen sunucunun ya da cihazın rastgele portlarına cihazın kaldırabileceğinden çok daha fazla sayıda UDP paketi göndermesiyle başlatılan bir saldırıdır. Cihaz, o portu dinleyen bir uygulama olup olmadığını kontrol eder. Eğer herhangi bir uygulama bulamazsa, ICMP (5) mesajı gönderir. Bir süre sonra, saldırı altındaki makine cevap göndermekte zorlanır ve istemciler tarafından erişilemez hale gelir. Saldırgan da sahte IP adresleri kullanarak, kendisini anonim hale getirir. UDP saldırında DDoS saldırısı olan Smurf saldırısı da vardır. Fakat bu saldırı, genel hatlarıyla UDP Flood saldırısına benzerdir.

XMPP nedir?

XML temel alınarak kurulan, anlık mesajlaşmayı sağlayan gerçek zamana yakın iletişimi sağlayan kamuya açık bir protokoldür. XMPP, uygulama katmanındaki diğer protokollere benzerlikler barındırır. Bu protokol kullanılırken, her istemcinin kendine özel bir ismi vardır ve başka istemciyle yönlendirme yetkisine sahip ilgili sunucu üzerinden haberleşir.

Ayrıca sunucular, alanlar ya da ülkeler arası iletişimi de sağlayabilir. XMPP, XML üzerinden, farklı uçtan uca iletişimi tanımlayan TCP soketlerinin üzerinde oluşturulur. XMPP de sunucular, iki ana göreve sahiptir: istemciler arasındaki iletişimi sağlama ve adresleri belli XML stanzalarını XML mesaj dizisi üzerinden istemcilere yönlendirme. XMPP’de ağ geçidi, XMPP protokolünde olan bir mesajı, XMPP olmayan başka bir protokole çift yönlü çeviriyi sağlayan bir fonksiyondur. Eğer XMPP, TLS ile güçlendirilmezse, MITM saldırılarına açık olma ihtimali çok daha fazladır.

XMPPloit Saldırısı

XMPPloit, saldırganın istemci ile sunucu arasında bir ağ geçidi yerine geçmesiyle, XMPP bağlantılarını hedef alan açık kaynaklı komut satırı aracıdır. Bu araçla birlikte, istemcinin mesajının şifrelenmesi engellenir. Böylece mesaj veya kullanıcı adı ve şifresi saldırgan tarafından okunabilir ya da müdahale edilebilir. Kısacası, saldırgan ağ geçidi olduktan sonra, mesaj trafiğini izleyebilir ya da manipüle edebilir. (6)

TLS Nedir?

Protokollerin taşıma katmanında bulunan, şifreleme kullanıp, mesaj bütünlüğüne ve gizli kalmasına dikkat ederek iki uygulama arasında iletişim kurmaya yarayan bir protokoldür. TLS, geniş çapta kullanımı yaygınlaşmış olup, anlık mesajlaşma, ağ tarama, dosya transferleri ve IP üzerinden sesli iletişim gibi alanlarda yaygın olarak kullanılmaktadır. TLS, birden fazla şifreleme tekniğini kullanarak mesaj güvenliğini sağlamaktadır. Ciphersuite adı verilen birden çok şifrelemeyi barındıran bir paket kullanır.

RSA, AES, MAC algoritmaları bu şifreleme yollarının arasındadır.

RSA, iki tane çok büyük asal sayının çarpımının hangi sayılar olduğunu çözümlemenin zorluğuna dayanır. Bugünün süper bilgisayarları bile, çözülmesi gereken zamanda çözememişlerdir. İki asal sayı seçilir. 1 ile bu iki sayının bir eksiklerinin çarpımı arasında bir sayı açık anahtar olarak seçilir. Gizli anahtar bulunurken ise şu yol izlenir. Belirlenen iki asal sayıyı bir azaltıp, elde edilen sayıyı herhangi bir tamsayı ile çarpılır. Sonuca bir eklenir ve açık anahtara bölünür. Böylece gizli anahtar da elde edilmiş olur. Göndereceğimiz mesajın açık anahtarla kuvveti alınarak, seçilen iki asal sayının çarpımına göre modu alınır. Bu işlem karşı tarafta mesaj çözümlenirken de uygulanır.

TLS, güvenli bir şekilde iletişimi sağlasa da, kullanılan algoritmalardaki bazı açıklardan dolayı birtakım saldırılarla karşı karşıya kalınabilir.

BEAST Saldırısı

SSL/TLS protokollerine karşı tarayıcıyı ele geçirmeye yönelik olan bu saldırı, CBC algoritmasının implementasyonundaki bir açıktan dolayı mesajın saldırgana açık hale gelmesi durumudur. Bu saldırı istemci-kullanıcı tarafında MITM tekniği kullanılarak yapılır. Saldırgan, MITM tekniğiyle TLS paketlerine farklı paketler enjekte eder. Saldırgan, enjekte ettiği mesajı XOR işlemine sokarak, IV-başlama vektörü- i tahmin eder. Çözümlemek istediği bloğun sonuçlarını karşılaştırır ve bloğu elde eder. Saldırgan, istemcinin tarayıcısını ele geçirir. Bu saldırı genellikle TLS 1.0 versiyonu üzerinde uygulanır.

CRIME Saldırısı

Bu saldırı, TLS veri sıkıştırmasında ortaya çıkan bir açıktan kaynaklanır. Sıkıştırmanın amaçlarından birisi, bant genişliğinin kullanımını azaltmaktır. DEFLATE, sıkıştırma için kullanılan önemli algoritmalardan birisidir. Sıkıştırma algoritmalarında, tekrar eden karakterleri bir işaretleyici yardımıyla ilk görüldüğü yere işaret ederek yer değiştirilmesi ve sıkıştırılmasıdır. Mesela, saldırgan, hedefteki kişinin tanım bilgisini ele geçirmek istiyor. Hedefte olan site, adm yi tanım bilgisi olarak kullanıyor. Eğer Cookie:adm=0 saldırgan tarafından hedefteki kişinin tanım bilgisi için enjekte ederse, sunucu 0 ı sıkıştırarak, Cookie:adm= değerini hedefteki kişiye döner ve bu tekrarlanır. Saldırgan yaptığı iş, değişik karakterleri enjekte edip, cevabın uzunluğunu kontrol etmektir. Eğer cevabın uzunluğu ilk gönderilenden kısaysa, demek ki eklenen karakter tanım değerinin bir karakteridir ve sıkıştırılmıştır. Eğer cevabın uzunluğu uzunsa, demek ki karakter tanım değerinin bir değeri değildir. Böylece brute force işlemi yapılarak, hedeflenen kişinin tanım değeri bulunur.  (7)

CRIME

STARTTLS Komut Enjeksiyon Saldırısı

TLS protokolü iki durumda oluşabilir: yazılımın hatasız olması ve istemcinin sunucunun TLS sertifikasını onaylaması. Eğer yazılımda bir hata olursa, bu hata ile saldırgan, istediği komutları enjekte edebilir. Böylece SMTP-TLS protokolü boyunca sunucu tarafından bu komut çalıştırılır. Enjekte edilen komutlar, kullanıcının mailini ve şifresini ele geçirmeye yarayabilir.

NOTLAR

(1) http://www.libelium.com/security-802-15-4-zigbee/
(2) http://ieeexplore.ieee.org/stamp/stamp.jsp?arnumber=7086198
(3) http://www.cs.tufts.edu/comp/116/archive/fall2016/khoskins.pdf
(4) https://www.blackhat.com/docs/us-16/materials/us-16-Jasek-GATTacking-Bluetooth-Smart-Devices-Introducing-a-New-BLE-Proxy-Tool-wp.pdf
(5) ICMP, internet mesaj kontrol protokolü olup, IP uygulamasının iç kısımlarından biridir. Sorgulama ve hata mesajları olmak üzere iki bölümü kapsar.
(6) http://www.geeksforgeeks.org/rsa-algorithm-cryptography/
(7) https://www.acunetix.com/blog/articles/tls-vulnerabilities-attacks-final-part/

KAYNAKÇA

Russell, Brian, Drew Van Duren. Practical Internet of Things Security. Birmingham : Packt Yayıncılık,2016.
Devito, Mark. “A Security Assessment of Z-Wave Devices and Replay Attack Vulnerability”. danışman: Dr. Johannes Ullrich. SANS Enstitüsü. 2016.
Barcena, Mario Ballano. “Insecurity in the Internet of Things”. Symantec. 2015.
IETF. “Summarizing Known Attacks on Transport Layer Security (TLS) and Datagram TLS (DTLS)”. Son güncelleme Şubat, 2015. https://tools.ietf.org/html/rfc7457#section-2
Vesternet Ltd. Understanding Z-Wave Networks, Nodes & Devices. Son güncelleme 2012.
http://www.vesternet.com/resources/technology-indepth/understanding-z-wave-networks
Hoskins, Katherine. “Security Vulnerabilities in Z-Wave Home Automation Protocol”. Tufts Üniversitesi. 2016.
Ronen, Eyal. Colin O’Flynn, Adi Shamir ve Achi-Or Weingarten. “IoT Goes Nuclear: Creating a ZigBee Chain Reaction”. Dalhousie Üniversitesi.
Prodromou, Agatoklis. “TLS/SSL Explained – Examples of a TLS Vulnerability and Attack, Final Part”. Son güncelleme 22 Mart, 2017. https://www.acunetix.com/blog/articles/tls-vulnerabilities-attacks-final-part/
The Internet Society. “Extensible Messaging and Presence Protocol (XMPP): Core”. Son güncelleme 2014. https://xmpp.org/rfcs/rfc3920.html#intro
Singh, Abhishek. Ola Nordström, Chenghuai Lu ve Andre L M dos Santos. “Malicious ICMP Tunneling: Defense Against the Vulnerability. Atlanta: Georgia Teknoloji Enstitüsü.
Kocks, Chrisopher. “Wireless Security Vulnerabilities & Solutions”. 2016.
Azzi, Charbel. “Vulnerability Analysis and Security Framework for Zigbee Communication in IOT”. Las Vegas: Nevada Üniversitesi. 2016.
Zillner, Tobias. “ZigBee Exploited: The good, the bad and the ugly”. Cognosec. 2015.
Padgette, John. John Bahr, Mayank Batra, Marcel Holtmann, Rhonda Smithbey, Lily Chen ve Karen Scarfone. “Guide to Bluetooth Security “. Nist Teknoloji Serisi. Mayıs 2017.
Olawumi, Olayemi. Keijo Haataja, Mikko Asikainen, Niko Vidgren ve  Pekka Toivanen. “Three Practical Attacks Against ZigBee Security: Attack Scenario Definitions, Practical Experiments, Countermeasures, and Lessons Learned”. IEEE: Eastern Finland Üniversitesi. 2014.
Sławomir, Jasek. “Gattacking Bluetooth Smart Devices”. Securing. https://www.blackhat.com/docs/us-16/materials/us-16-Jasek-GATTacking-Bluetooth-Smart-Devices-Introducing-a-New-BLE-Proxy-Tool-wp.pdf
Qu, Yanzhen. Philip Chan. “Assessing Vulnerabilities in Bluetooth Low Energy (BLE) Wireless Network Based IoT Systems”. New York: IEEE. Temmuz 2016. http://ieeexplore.ieee.org/document/7502262/

Yazar: Atıf Emre Yüksel