CVE-2025-34434
KrytyczneStreszczenie
AVideo w wersjach przed 20.1 z włączoną wtyczką ImageGallery jest podatny na nieuwierzytelnione przesyłanie i usuwanie plików. Punkty końcowe wtyczki odpowiedzialne za zarządzanie obrazami galerii nie egzekwują kontroli uwierzytelniania i nie walidują własności, co pozwala nieuwierzytelnionym atakującym na przesyłanie lub usuwanie obrazów związanych z dowolnym wideo opartym na obrazach.
Ocena ryzyka
Ryzyko obejmuje możliwość nieautoryzowanego przesyłania i usuwania plików, co może prowadzić do naruszenia integralności treści i potencjalnie do dalszych ataków.
Rekomendacja
Zaleca się aktualizację AVideo do wersji 20.1 lub nowszej oraz wyłączenie wtyczki ImageGallery, jeśli nie jest niezbędna, do czasu zastosowania poprawek.
Inne podatności w AVideo
Zobacz wszystkie- CVE-2026-92913Wysokie
AVideo do commita c3edcc274c389816d434acadac07ee78eaf330c1 używa kryptograficznie słabego generatora liczb pseudolosowych do tworzenia kodów aktywacji konta i parowania logowania. getRandomCode() w objects/functions.php opiera się głównie na uniqid(), co ogranicza przestrzeń kodów do około 36 x 10^6 wartości dla znanej sekundy generacji, a nieuwierzytelniony atakujący może odgadnąć ważny kod i uzyskać dostęp do konta.
- CVE-2026-92586Średnie
AVideo do wersji 29.0 nie weryfikuje uprawnień dostępu do wideo w funkcji set_api_comment, co pozwala uwierzytelnionym użytkownikom dodawać komentarze do filmów chronionych hasłem lub ograniczonych dla grup. Atakujący mogą wysyłać żądania POST do punktu końcowego API komentarzy z dowolnymi identyfikatorami wideo.
- CVE-2026-92584Średnie
AVideo do wersji 29.0 zawiera podatność na trwały cross-site scripting (XSS). Nieuwierzytelniony punkt końcowy zliczania wyświetleń zapisuje User-Agent atakującego bezpośrednio do bazy danych, a następnie jest on renderowany bez escapowania na stronie statystyk właściciela wideo i administratora, co pozwala na wykonanie złośliwego kodu w ich sesjach.
- CVE-2026-92583Średnie
AVideo do wersji 29.0 zawiera wyścig w funkcji enforceRateLimit(), która nie atomowo zwiększa liczników ograniczeń, co pozwala atakującym ominąć wszystkie limity, w tym ochronę przed brute-force na logowanie, poprzez wysyłanie równoczesnych żądań. Atakujący mogą przekroczyć limit 30 prób na 5 minut dowolną liczbę razy.
- CVE-2026-92581Średnie
W AVideo do wersji 29.0, konstruktor Like::__construct() wykonuje operacje arytmetyczne na surowych wartościach żądań przed walidacją, co pozwala na desynchronizację przechowywanych głosów od liczników. Uwierzytelnieni atakujący mogą wysyłać parametry typu tablicowego, aby doprowadzić liczniki polubień do dowolnie niskich wartości, a uszkodzenie utrzymuje się do ręcznej naprawy.
- CVE-2026-92578Wysokie
WWBN AVideo do wersji 29.0 zawiera podatność obejścia uwierzytelniania, w której przechowywany hash hasła jest akceptowany jako prawidłowe poświadczenie logowania przez dwie niezależne ścieżki kodu w loginFromRequest() i encryptPasswordVerify(). Atakujący, który uzyska wartość przechowywanego hasha users.password, może uwierzytelnić się jako dowolny użytkownik, przesyłając hash bezpośrednio do endpointów logowania, całkowicie omijając weryfikację hasła.
- CVE-2026-92577Wysokie
W AVideo do wersji 29.0 endpoint API get_api_video zawiera podatność złamanej kontroli dostępu w gałęzi clean_title, która zwraca filmy ograniczone do grup użytkowników wraz z danymi osobowymi właściciela anonimowym wywołującym. Atakujący mogą odpytywać filmy po ich publicznym slug, aby obejść ograniczenia grupowe i uzyskać wrażliwe pola użytkownika, w tym email, telefon, adres, datę urodzenia i status administratora.
- CVE-2026-89255Wysokie
AVideo do commita c3edcc274c389816d434acadac07ee78eaf330c1 zawiera podatność stored cross-site scripting w pluginie LoginControl, który nie koduje w HTML kluczy publicznych PGP wyświetlanych w elemencie textarea. Uwierzytelniony atakujący może wstrzyknąć złośliwy JavaScript, przesyłając spreparowany klucz publiczny, który wykonuje się w sesji administratora podczas przeglądania zakładki profilu użytkownika.
- CVE-2026-89253Wysokie
WWBN AVideo do commita c3edcc274c389816d434acadac07ee78eaf330c1 zawiera podatność stored cross-site scripting w polu profilu użytkownika 'donationLink'. Funkcja User::setDonationLink() przechowuje wartość, a save() waliduje ją tylko przez filter_var(..., FILTER_VALIDATE_URL), co akceptuje ciągi takie jak http://evil.example/"onmouseover=alert(document.domain)//, podczas gdy getDonationLink() stosuje jedynie strip_tags() i nie koduje cudzysłowów. Uwierzytelniony użytkownik aktualizujący własny profil może przerwać atrybut href i wstrzyknąć obsługę zdarzeń wykonującą JavaScript w przeglądarce każdego odwiedzającego, w tym administratora.
- CVE-2026-89250Wysokie
WWBN AVideo do commita c3edcc274c389816d434acadac07ee78eaf330c1 zawiera nieuwierzytelnioną podatność odczytu plików w endpointcie getRecordedFile.php, który strumieniuje nagrane pliki FLV z katalogu tymczasowego. Atakujący mogą wywołać endpoint ze znanym lub odgadniętym kluczem strumienia, aby pobrać nagrane pliki wideo na żywo bez uwierzytelnienia i kontroli autoryzacji.
Oryginalny opis (angielski, źródło NVD)
AVideo versions prior to 20.1 with the ImageGallery plugin enabled is vulnerable to unauthenticated file upload and deletion. Plugin endpoints responsible for managing gallery images fail to enforce authentication checks and do not validate ownership, allowing unauthenticated attackers to upload or delete images associated with any image-based video.

