CVE-2024-45389
Təsvir
Tam statik axtarış kitabxanası olan Pagefind, öz dinamik JavaScript və WebAssembly fayllarını istifadəçinin yüklədiyi ilk skriptin yerinə nisbətən başladır. Bu məlumat `document.currentScript.src` dəyərinin yoxlanılması ilə əldə edilir. Pagefind versiya 1.1.1-dən əvvəl səhifədəki zərərsiz HTML vasitəsilə bu yoxlamanı "clobber" etmək mümkündür. Bu, `document.currentScript.src` dəyərinin xarici domen kimi təyin edilməsinə səbəb olacaq və Pagefind asılılıqları yükləmək üçün həmin domendən istifadə edəcəkdir. Bu eksployt yalnız hücum edənin canlı, host edilmiş vebsayta HTML inyeksiya edə bildiyi halda işləyəcəkdir. Belə hallarda bu, hücum edənin mövcud imtiyazlarının yüksəldilməsi üsulu kimi çıxış edir. Burada fərz edilir ki, onların səhifəyə bəzi elementlər əlavə etmək imkanı var (məsələn, `name` atributu olan `img` teqləri), lakin digərləri yoxdur, çünki səhifəyə `script` əlavə etmək artıq saytlararası skriptinq (XSS) vektoru olardı. Pagefind versiya 1.1.1-də mənbənin düzgün skript elementi vasitəsilə yükləndiyini təmin etməklə bu təyinat prosesini daha təhlükəsiz etmişdir. Bunun Pagefind vasitəsilə real mühitdə istismar edildiyinə dair heç bir hesabat yoxdur.
Necə düzəltmək olar
- pagefind pagefind1.1.1 və ya daha yeni versiya
- pagefind1.1.1 və ya daha yeni versiya
- @pagefind/default-ui1.1.1 və ya daha yeni versiya
- @pagefind/modular-ui1.1.1 və ya daha yeni versiya
Təsirlənən məhsullar
| Məhsul | Təsirlənən versiyalar | Düzəldildiyi versiya |
|---|---|---|
| pagefind pagefind | v < 1.1.1, 1.1.1 | 1.1.1 |
| pagefindnpm | v < 1.1.1 | 1.1.1 |
| @pagefind/default-uinpm | v < 1.1.1 | 1.1.1 |
| @pagefind/modular-uinpm | v < 1.1.1 | 1.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.
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.