CVE-2026-26267

Yüksək

Təsvir

soroban-sdk, Soroban kontraktları üçün Rust SDK-dır. 22.0.10, 23.5.2 və 25.1.1 versiyalarından əvvəl `#[contractimpl]` makrosunda funksiya çağırışlarının qurulma qaydasında xəta mövcuddur. `#[contractimpl]`, trayt (trait) versiyasını emal etdiyi zaman belə `MyContract::value()` üslublu çağırışlardan istifadə edən kod generasiya edir. Bu o deməkdir ki, əgər eyni adla daxili (inherent) funksiya da təyin edilibsə, trayt funksiyası əvəzinə daxili funksiya çağırılır. Nəticədə, iki şərt eyni anda ödənildikdə Wasm-export edilmiş giriş nöqtəsi səssiz şəkildə yanlış funksiyanı çağırır: Birincisi, bir və ya daha çox funksiyadan ibarət olan və `#[contractimpl]` tətbiq edilmiş `impl Trait for MyContract` bloku təyin edilib. İkincisi, `#[contractimpl]` tətbiq edilmədən, biri və ya bir neçə eyniadlı funksiyaya malik `impl MyContract` bloku təyin edilib. Əgər trayt versiyası, daxili versiyada olmayan çağıranın səlahiyyətli olduğunun yoxlanılması kimi vacib təhlükəsizlik yoxlamalarını ehtiva edirsə, həmin yoxlamalardan yan keçilir. Kontraktla ictimai interfeys vasitəsilə qarşılıqlı əlaqədə olan hər kəs yanlış funksiyanı çağıracaqdır. Problem `soroban-sdk-macros` versiyaları 22.0.10, 23.5.2 və 25.1.1-də düzəldilmişdir. Düzəliş, trayt implementasiyalarını emal edərkən generatsiya olunan çağırışı `<Type>::func()` formasından `<Type as Trait>::func()` formasına dəyişir və bununla da eyni adlı daxili funksiyanın mövcudluğundan asılı olmayaraq Rust-ın trayt ilə əlaqəli funksiyanı seçməsini təmin edir. İstifadəçilər `soroban-sdk-macros` 22.0.10, 23.5.2 və ya 25.1.1 versiyalarına yüksəltmə etməli və kontraktlarını yenidən kompilyasiya etməlidirlər. Yüksəltmə dərhal mümkün deyilsə, kontrakt tərtibatçıları kontrakt tipindəki heç bir daxili əlaqəli funksiyanın trayt implementasiyasındakı hər hansı bir funksiya ilə eyni ada malik olmadığını təmin etməklə bu problemdən yayın bilərlər. Ziddiyyət təşkil edən daxili funksiyanın adının dəyişdirilməsi və ya silinməsi qeyri-müəyyənliyi aradan qaldırır və makro tərəfindən generatsiya edilmiş kodun düzgün şəkildə trayt funksiyasına yönlənməsini təmin edir.

CiddilikYüksək
CVSS7.5
İstismar ehtimalı—
MəhsulStellar Rs-soroban-sdk
Dərc19 fev 2026
İlk görülmə19 fev 2026
Zəiflik növüCWE-670CWE-670

Necə düzəltmək olar

Yeniləyin
  • stellar rs-soroban-sdk22.0.10, 23.5.2, 25.1.1 və ya daha yeni versiya

Təsirlənən məhsullar

MəhsulTəsirlənən versiyalarDüzəldildiyi versiya
stellar rs-soroban-sdkv < 22.0.10, 23.0.0 ≤ v < 23.5.2, 25.0.0 ≤ v < 25.1.122.0.10, 23.5.2, 25.1.1

Versiyanızı yoxlayın

Məhsulu seçin və istifadə etdiyiniz versiyanı yazın; versiyanın təsirlənən aralıqda olub-olmadığını görün.

Intelligence 360 paketində

Attack Surface Management

Domenlərinizə bağlı aktivləri, onlarda işləyən texnologiyaları və məlum zəiflikləri bir siyahıda görün.