CVE-2026-86745
ŚrednieCVSS 6.5Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 38 - wyżej niż 38% wszystkich znanych CVE
Streszczenie
W wersjach Snipe-IT po 8.6.3 (z gałęzi master, nie wydanych w żadnym tagu) eksport raportu o niezgodnościach zakresu FMCS nie stosuje zabezpieczeń przed formułami CSV, w przeciwieństwie do innych eksportów. Uwierzytelniony użytkownik może umieścić formułę w polach tekstowych, która zostanie wykonana po otwarciu pliku CSV w programach arkuszowych.
Ocena ryzyka
Ryzyko obejmuje wykonanie złośliwych formuł w kontekście arkusza kalkulacyjnego pobierającego, co może prowadzić do eksfiltracji danych lub wykonania poleceń na komputerze ofiary.
Rekomendacja
Zaleca się aktualizację do wersji 8.7.0, która zawiera poprawkę, oraz edukację użytkowników o ryzyku otwierania plików CSV z niezaufanych źródeł.
Inne podatności w Snipe-IT
Zobacz wszystkie- CVE-2026-116201Wysokie
Snipe-IT przed wersją 8.5.0 zawiera podatność powtórzenia asercji SAML, która pozwala atakującym na ponowne użycie przechwyconych asercji poprzez wykorzystanie nieatomowego sprawdzania nonce w obsłudze SAML acs. Atakujący mogą wysłać równoległe żądania POST do /saml/acs z jedną przechwyconą asercją, aby uzyskać wiele uwierzytelnionych sesji ofiary.
- CVE-2026-116200Średnie
Snipe-IT przed wersją 8.6.3 ignoruje wartość zwracaną przez ldap_start_tls() w Ldap::connectToLdap(), co pozwala atakującym w ścieżce sieciowej wymusić jawne powiązania LDAP. Atakujący mogą odpowiedzieć na żądanie StartTLS błędem protokołu, aby przechwycić poświadczenia konta usługi i hasła logowania użytkowników końcowych.
- CVE-2026-116199Wysokie
Snipe-IT przed wersją 8.6.3 zawiera obejście uwierzytelniania w GoogleAuthController::handleGoogleCallback, które loguje użytkownika o nazwie zgodnej z adresem e-mail konta Google bez wymuszania flagi aktywacji. Dezaktywowani użytkownicy z nazwami w formie e-mail i aktywnymi tożsamościami Google mogą zalogować się przez Google SSO i odzyskać sesje na pierwotnym poziomie uprawnień, w tym administratora.
- CVE-2026-116198Średnie
Snipe-IT przed wersją 8.7.0 zawiera podatność polegającą na braku szyfrowania w Api\AssetsController::store, która zapisuje dane w postaci jawnej do kolumn niestandardowych pól oznaczonych jako szyfrowane, gdy wywołujący nie mają uprawnienia assets.view.encrypted_custom_fields. Uwierzytelnieni użytkownicy API bez tego uprawnienia mogą tworzyć zasoby, których wrażliwe wartości niestandardowych pól są przechowywane w bazie danych bez szyfrowania, co naraża je poprzez kopie zapasowe, repliki lub bezpośredni dostęp do bazy danych.
- CVE-2026-114064Średnie
Snipe-IT w wersjach przed 8.7.0 zawiera podatność typu server-side request forgery w funkcji testowania webhooków, która pozwala użytkownikom z uprawnieniami super-administratora na sondowanie wewnętrznych adresów sieciowych, w tym zakresów loopback i RFC1918. Atakujący mogą kierować webhooki na wewnętrzne hosty i porty, a następnie porównywać odpowiedzi 4xx i 5xx z Test Webhooks, aby mapować otwarte porty i aktywne hosty.
- CVE-2026-63498Wysokie
Snipe-IT przed wersją 8.7.0 pozwala uwierzytelnionemu użytkownikowi z uprawnieniami do zarządzania plikami na przesyłanie załączników XML i XSLT oraz żądanie ich z parametrem inline=true. Przeglądarka może przetworzyć odniesienie xml-stylesheet i wykonać JavaScript wygenerowany przez arkusz stylów w kontekście Snipe-IT. Ofiara musi otworzyć URL załącznika, po czym skrypt może czytać dane samego pochodzenia i wykonywać uwierzytelnione działania z uprawnieniami ofiary.
- CVE-2026-63493Wysokie
Snipe-IT przed wersją 8.7.0 pozwala sesji uwierzytelnionej hasłem dla konta z uprawnieniem self.api na dostęp do API tokenów osobistych przed ukończeniem wyzwania drugiego czynnika, ponieważ CheckForTwoFactor jest egzekwowane w grupie middleware web, ale nie w grupie API. Token może czytać i modyfikować zasoby z uprawnieniami ofiary, a dla administratora może dotrzeć do punktu końcowego users/two_factor_reset, co umożliwia przejęcie konta administratora.
- CVE-2026-62368Wysokie
Snipe-IT przed wersją 8.7.0 pozwala użytkownikowi z uprawnieniem customfields.create na przechowywanie znaczników w CustomField.name, które są przypisywane jako nieucieczkowy tytuł nagłówka bootstrap-table. Gdy inny użytkownik otworzy stronę listy zasobów, przechowywane znaczniki wykonują się na stronie w sesji ofiary, co może ujawnić dane samego pochodzenia i wykonać uwierzytelnione działania, w tym eskalację uprawnień.
- CVE-2026-88894Średnie
Ścieżka realizacji predefiniowanych zestawów (kit checkout) w Snipe-IT nie egzekwuje izolacji dzierżawców Full Multiple Company Support (FMCS) na celu realizacji. W przeciwieństwie do innych ścieżek realizacji, App\Services\PredefinedKitCheckoutService nigdy nie wywołuje $item->canCheckoutTo($target); wykonuje jedynie sprawdzenie polityki aktor-vs-element oraz sprawdzenie dostępności przed zapisaniem realizacji. Przy włączonym FMCS użytkownik niebędący superużytkownikiem, należący do co najmniej dwóch firm i posiadający uprawnienie assets.checkout, może wysłać żądanie POST do /kits/{kit}/checkout z user_id należącym tylko do firmy B i przypisać temu użytkownikowi zasób firmy A (podobnie licencje, materiały eksploatacyjne i akcesoria zestawu), omijając sprawdzenie niezgodności firm. Problem naprawiono w Snipe-IT 8.7.2.
- CVE-2026-86774Średnie
Snipe-IT przed wersją 8.7.0 zawiera podatność polegającą na uszkodzonej kontroli dostępu w AssetModelPolicy, gdzie metoda files() kaskaduje z uprawnienia assets.files, umożliwiając uwierzytelnionym użytkownikom przesyłanie i usuwanie załączników w rekordach Asset Model bez wymaganego uprawnienia models.files. Atakujący posiadający tylko uprawnienie assets.files mogą modyfikować współdzielone załączniki modeli ponad granicami firm i ominąć dedykowane uprawnienie models.files, które ma ograniczać zarządzanie plikami we wspólnym katalogu Asset Model.
Oryginalny opis (angielski, źródło NVD)
Snipe-IT is an IT asset management application. In Snipe-IT master-branch builds after 8.6.3 (the code was never included in a tagged release), SettingsController::downloadLocationScopingReport streams the FMCS location-scoping mismatch report (GET /admin/settings/location-scoping-report.csv) through a bare fputcsv() call without applying League\Csv\EscapeFormula, unlike the other CSV exports which honor config('app.escape_formulas'). An authenticated user with ordinary create/edit rights can place a spreadsheet formula in free-text fields that appear in the report (item name, asset tag, serial, item or location company name, location name) and arrange for the record to be FMCS-mismatched so it is included in the export. When a superuser downloads the report and opens it in Excel, LibreOffice Calc, or Google Sheets with formula evaluation enabled and external-content warnings dismissed or disabled, cells beginning with =, +, -, @, tab, or CR are executed in the victim's spreadsheet context, enabling data exfiltration (e.g., HYPERLINK/WEBSERVICE) or, on Windows Excel, legacy DDE command execution. This issue is fixed in version 8.7.0.
Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS

