Tutulma saldırısında çoğu zaman ağda bulunan birçok node kötü niyetlidir ve bu node’lar, doğru bilgiyi kullanıcılara iletmek için çalışan iyi node’ların önüne geçerek kişilere yanlış veriler iletir. Tutulma saldırısı sürecinde, saldırgan hedefini izole eder. Saldırgan, kurbanın kendi cüzdanını veya ağda gerçekleşen işlemleri görmemesini ya da yanlış görmesini sağlar.
Tutulma saldırısı, merkeziyetsiz ağlardaki node’ların birbirlerine eş zamanlı olarak bağlanamadığında yaşanabilir. Node’lar, daha iyi bir verim alabilmek için kendi belirledikleri node’lara bağlanır. Örneğin; Bir Bitcoin node’unun diğer node’lar ile sekiz bağlantısı mevcutsa ve bir saldırgan tüm node’lara erişirse, saldırı gerçekleştiren kişi madencilerin ağa yeni bloklar eklemesinin önüne geçebilir. Bitcoin blockchain’inde node sayısı 8 iken, Ethereum ağında 13 node vardır.
Tutulma Saldırısı Nasıl Çalışır?
Başarılı olan bir tutulma saldırısında kötü niyetli kişi, ağda olan işlemlerin veya güncel defteri izole edip engeller. Merkeziyetsiz ağlarda, node’lar aynı anda diğer node’lara bağlanamaz ve saldırı bu yüzden mümkün hale gelir. Bunun yerine node’lar, farklı node’ların yer aldığı belirli bir gruba dahil edilir. Başarılı bir tutulma saldırısı için gösterilen emek seviyesi değişiklik gösterir ve bu, söz konusu ağın yapısına ya da boyutuna göre değişir.
Kötü niyetli kişiler, tutulma saldırısı esnasında, hedeflenen node’un bütün bağlantılarının, saldırganların kontrolünde olan node’larda olmasını sağlar ve bunun sonrasında saldırgan, kendi IP’leri ile node’un akışını doldurur. Tüm bunlar ardından saldırgan, node’un kötü niyetli node’lara bağlanmasını bekleyecek ve bunu da sağlamak için DDoS (Dağıtılmış Hizmet Reddi) saldırısından yararlanır. Hedeflenen node ele geçirildiğinde, kötü niyetli kişiler tarafından ilgili node’a yanlış veriler sunulur.
Tutulma saldırısının yol açtığı bazı durumlar şu şekilde:
- Çift Harcama
- Madenci Gücü Kesintisi
Çift Harcama
Saldırgan tarafından izole edilmiş bir node, bir işlemi kabul etmesi için yönlendirilebilir ve bu, çift harcamaya ya da geçersiz girişlere neden olur.
Madenci Gücü Kesintisi
Saldırgan, bir bloğun zaten bir madenci tarafından çıkarıldığını gizlemeye çalışır. Saldırgan bunu yaparak, kurbanın işlemci gücünü ve blokları hesaplamak için zaman kaybettirir.
Tutulma Saldırısının Sonuçları Nelerdir?
0-onay çifte harcama
Bir kişi, onay almamış bir işlemi kabul ettiğinde çifte harcama durumuyla karışılabilir. İşlem zaten gerçekleştirilmiş olsa da gönderici başka bir işlem yaratabilir ve fonları tekrardan harcayabilir.
N-onaylı çifte harcama
N-onaylı çifte harcamalar, 0-onay harcamalarına benzese de daha karmaşıklardır. Transferlerin geçerli olarak sayılması için belirli bir sayıda onay alması gerekir ve bu yüzden, güvenlik açığı oluşur. Saldırganlar, madencileri ve kullanıcıları ‘gölgede’ bırakır. Yatırımcılar bir işlem yaptığında, bunu gölgede kalan madencilere iletir. Tüm bunlar, yapılan işlemin yanlış blockchain üzerine kaydedilmesine neden olur.
Tutulma Saldırısı Nasıl Önlenir?
Saldırgan, IP adresleri ile hedeflediği bir node'u izole edebilir. Bu durumun önüne geçebilmek için en bilinen yol bir operatörün iletilen bağlantıları bloklaması ve sadece bazı node'larla bağlantı halinde olunmasıdır. Ancak bu yöntemi bütün kullanıcılar yaparsa, yeni node'lar ağa katılamaz. Tutulma saldırısının önüne geçmek zordur ancak bunun gerçekleşmesini zorlaştıracak bazı faktörler vardır:
- Rastgele düğüm seçimi yapılırsa, saldırganın kurbanı hedeflemek için hangi node’ları oluşturacağını tahmin etmesi zordur.
- IP adresi veye node sayısını sınırlanabilir.
- Node’lar, karşılaştıkları farklı node’lar hakkındaki birçok veriyi barındırır ve bir node ağ üzerinden ayrılıp tekrar katıldığında bu bilgilere hala erişilir.