CVE-2026-73829
Açıklama
ZenHive mpp bileşenindeki Time-of-check Time-of-use (TOCTOU) Yarış Durumu (Race Condition), kimliği doğrulanmamış uzak bir istemcinin, zincir üzerinde onaylanmış tek bir ödemeyi birden fazla ücretli kaynak erişimi için kullanmasına olanak tanır. MPP.Methods.Tempo.verify/2 içerisindeki type="hash" kimlik bilgisi yolu, atomik olmayan bir kontrol-et-ve-işaretle dizisi ile yeniden oynatma saldırılarına karşı koruma sağlar: check_hash_unused/2 dedup deposunu okur, bir eth_getTransactionReceipt gidiş-dönüş işlemi ödemeyi zincir üzerinde doğrular ve ancak ondan sonra mark_hash_used/2 işareti yazar. Aynı kesinleşmiş ödeme özetini taşıyan eşzamanlı isteklerin tamamı, herhangi biri yazma işlemini gerçekleştirmeden önce okuma aşamasını geçer, böylece her birine makbuz düzenlenir. Deponun atomik check_and_mark/2 primitifi mevcuttur ve type="transaction" yolu tarafından kullanılır, ancak hash yolu, yapılandırılan depo bunu desteklese bile düz get ve put fonksiyonlarını çağırır. İstismar edilmesi için bir dedup deposunun yapılandırılmış olması gerekir; varsayılan nil deposu durumsuzdur ve hiçbir yeniden oynatma koruması sunmadığı belgelenmiştir. Bu sorun mpp: 0.2.0 sürümünden 0.6.1 öncesine kadar olan sürümleri etkilemektedir.
Nasıl düzeltilir
- zenhive machine_payments_protocol0.6.1 ya da sonraki bir sürüm
Etkilenen ürünler
| Ürün | Etkilenen sürümler | Düzeltildiği sürüm |
|---|---|---|
| zenhive machine_payments_protocol | 0.2.0 ≤ v < 0.6.1 | 0.6.1 |
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.