CVE-2023-42449
Açıklama
Hydra, Cardano için iki katmanlı ölçeklenebilirlik çözümüdür. Versiyon 0.13.0 öncesinde, head token darphane politikasındaki hatalı veri doğrulama mantığı nedeniyle kötü niyetli bir head başlatıcısının, başlattıkları head için bir veya daha fazla PT çıkarması mümkündür; bu durum daha sonra `initial` doğrulayıcısındaki head ST yakma işleminin hatalı kontrol edilmesine yol açar. Bu durum, `HeadTokens.hs` dosyasında `initial` doğrulayıcıdaki çıktıların datumlarının gerçek head ID'ye eşit olduğunun kontrol edilmemesi ve aynı zamanda `off-chain code` içerisinde de kontrol edilmemesi nedeniyle mümkündür. Protokolün `Initial` durumu sırasında, kötü niyetli başlatıcı Hydra scriptlerinden bir PT kaldırırsa, diğer katılımcıların head'e aktarmaya çalıştıkları herhangi bir fonu geri almaları imkansız hale gelir; çünkü bunu yapmak için Abort işlemi head için tüm PT'leri yakmalıdır, ancak saldırganın kontrol ettiği PT'yi yakamazlar ve dolayısıyla bu gereksinimi karşılayamazlar. Bu, başlatıcının diğer katılımcıların taahhüt edilen fonlarını sonsuza kadar veya PT'yi iade etmeyi seçene kadar (fidye) kilitleyebileceği anlamına gelir. Kötü niyetli başlatıcı, head'i `Open` durumuna geçirirken belirli bir TxO taahhüt ettiğine dair yanıltma yapmak için PT'yi kullanabilir. Örneğin, kendi adreslerinde bulunan ve 100 ADA içeren bir TxO taahhüt ettiklerini söyleyebilirler, ancak aslında bu 100 ADA head'e aktarılmamıştır; böylece başka bir katılımcının fanout işlemini gerçekleştirebilmesi için, fanout işlemi tüm taahhüt edilen TxO'ları ödemek zorunda olduğundan (saldırgan o TxO'yu gerçekten taahhüt etmemiş olsa bile), saldırgana kendi fonlarından 100 ADA ödemeye zorlanacaklardır. Bunu, PT'yi istedikleri içerikte iyi biçimlendirilmiş bir `Commit` datumu olan bir UTxO'ya yerleştirip ardından bu UTxO'yu `collectCom` işleminde kullanarak yapabilirler. Bir PT'nin kontrolüne sahip olmanın suistimal edilebileceği başka yollar da olabilir. Versiyon 0.13.0 bu sorunu düzeltmektedir.
Nasıl düzeltilir
- iohk hydra0.13.0 ya da sonraki bir sürüm
Etkilenen ürünler
| Ürün | Etkilenen sürümler | Düzeltildiği sürüm |
|---|---|---|
| iohk hydra | v < 0.13.0 | 0.13.0 |
Sürümünüzü kontrol edin
Ürünü seçin ve kullandığınız sürümü yazın; sürümün etkilenen aralıkta olup olmadığını görün.
Attack Surface Management
Alan adlarınıza bağlı varlıkları, bu varlıklarda çalışan teknolojileri ve bilinen zafiyetleri tek listede görün.