Replay Attack nedir?
Replay Attack, bir kişinin geçerli bir kripto işlemini yakalayıp tekrar gönderdiği, böylece ağın bunu yeni bir işlem gibi kabul ettiği durumdur. İmza geçerlidir, zamanlama sinsi. Bunu, imzalı çekinizi başka bir veznede aynı kuralları uygulayan birinin yeniden kullanmasına benzetin.
Replay Attack, özel anahtarınızın çalındığı anlamına gelir. Tam olarak değil. Saldırgan, iki yer aynı şekilde kabul ederse imzaladığınız mesajı anahtarınızı bilmese bile yeniden kullanabilir.
Replay Attack nasıl çalışır
Kafanıza yerleşmesi için kısa bir özet.
- Adım 1: İmzalı bir işlem yayınlarsınız.
- Adım 2: Saldırgan aynı imzalı veriyi birebir kopyalar.
- Adım 3: Bunu hâlâ doğrulayan bir yerde tekrar gönderirler; örneğin bir hard fork sonrasında veya aynı imza kurallarını kabul eden bir zincirde.
- Adım 4: Ağ geçerli imzayı görür ve tekrar işler, böylece değer iki kez aktarılır.
- Adım 5: Bunu yalnızca replay karşıtı kontroller durdurur; örneğin zincir kimlikleri, nonce'lar veya uygulama düzeyinde tek kullanımlık izinler.
İşin tamamı bu. Rahatsız edici, ama çok kolayca önlenebilir.
Replay Attack neden önemli
Replay Attack ile neden ilgilenmelisiniz? Çünkü bir kez yapmak istediğiniz gerçek bir işlemi kopyalayarak ikiye dönüştürebilir.
- Fayda: Riski bilmek, daha güvenli hamleler planlamanıza yardımcı olarak para ve stres tasarrufu sağlar.
- Bakış açısı: Çoklu zincir kullanımı artık yaygın, bu yüzden kopyalanan mesajların yanlış yere düşmesi beklenenden daha sık olur.
- İlgisi: Fonları bir blok zinciri ağı üzerinden taşırken, zincir ayrılmalarında veya uygulamalar için zincir dışı mesaj imzalarken bu terimi göreceksiniz.
Aktif zinciri açıkça gösteren ve zincir kimliklerini doğru ayarlayan bir cüzdan kullanın. Şüphe duyduğunuzda önce küçük bir test gönderin, sonra kalanını gönderin.
Replay Attack'in Temel Özellikleri
Bu işaretlerle deseni çabuk tespit edin:
- Kopyalama: Tam olarak aynı imzalı mesajı, byte byte yeniden kullanır.
- Geçerlilik: İmza gerçektir, bu yüzden replay karşıtı korumalar yoksa düğümler bunu kabul eder.
- Zamanlama: En sık zincir ayrılmaları, köprüler veya uygulamaların nonce kontrollerini atladığı durumlarda görülür.
Çeşitleri
Aynı oyun planı, farklı alanlar:
- Fork: Ayrılan ve aynı imzaları kabul etmeye devam eden iki zincir arasındaki tekrarlar.
- Çapraz zincir: Parametreleri paylaşan veya aynı mesaj formatlarını kabul eden zincirler arasındaki tekrarlar.
- Sözleşme: Uygulamalar içinde tek kullanımlık nonce'ı unutan imzalı izinlerin veya meta işlemlerin tekrarları.
Büyük yükseltmeler veya ayrılmalardan sonra her iki zincirde de işlem geçmişinizi kontrol edin. Eğer bir şey iki kat görünüyorsa, daha fazla göndermeden önce durun.
Örnek
DAO forkundan sonra, Ethereum'da imzalanan bazı çekimler, daha güçlü replay koruması getirilene kadar Ethereum Classic'te yeniden kabul edildi.
İlginç Bilgi
Ethereum, Replay Attack hilelerini durdurmak amacıyla 2016'da EIP155 ile zincir kimliklerini getirdi ve bu tasarım tercihi modern cüzdanların önceden bir zincir seçmenizi istemesini etkiledi.
Özet
Replay Attack tek cümlede: gerçek bir imza, yeniden kullanıldığı yerde veya zamanda kullanılmaması gerekirken yeniden kullanılmış. Bunu çift ücretlendirme gibi düşünün, böylece daha hızlı fark edersiniz.
