CVE-2026-94620
KrytyczneCVSS 9.4Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 34 - wyżej niż 34% wszystkich znanych CVE
Streszczenie
Narzędzie Classroom 50 w wersjach przed 1.11.0 podczas wykonywania `gh teacher download` klonuje repozytoria zadań studentów, a następnie zapisuje artefakty autograde (`result.json` i `results.json`) do sklonowanego katalogu. Zapis podążał za dowiązaniami symbolicznymi, więc student, który zatwierdził `result.json` lub `results.json` jako symlink, mógł przekierować zapis nauczyciela do dowolnej ścieżki (np. `~/.zshrc`, `~/.ssh/authorized_keys`, plik cron lub hook gita), a zapisywane dane były kontrolowane przez atakującego. Prowadzi to do dowolnego zapisu plików i wykonania kodu z uprawnieniami nauczyciela, którego token `gh` ma uprawnienia `admin:org`, `repo` i `workflow` w całej organizacji.
Ocena ryzyka
Student może doprowadzić do wykonania dowolnego kodu na stacji nauczyciela i przejąć token GitHub z szerokimi uprawnieniami administracyjnymi do całej organizacji classroom, co grozi kompromitacją wszystkich repozytoriów i workflow.
Rekomendacja
Zaktualizuj Classroom 50 do wersji 1.11.0 lub nowszej; do czasu aktualizacji unikaj uruchamiania `gh teacher download` na niezaufanych repozytoriach studentów lub uruchamiaj je w jednorazowym sandboxie bez dostępu do wrażliwych plików i poświadczeń.
Powiązane podatności
- CVE-2026-54384Krytyczne
API chmurowe VitaFit w wersji przed 2026-10-30 zawierało podatność omijania uwierzytelniania, pozwalającą zdalnym atakującym uzyskać pełną sesję konta ofiary poprzez przesłanie identyfikatora powiązanego konta Google lub Facebook do punktu końcowego POST /front/login/sns/ bez dowodu własności od dostawcy tożsamości. Atakujący może sfałszować logowanie przy użyciu identyfikatora ujawnionego przez enumerację kont, aby odczytać i zmodyfikować profil ofiary oraz usunąć rekord uwierzytelniania konta.
- CVE-2026-52848Krytyczne
GLPI to darmowy pakiet oprogramowania do zarządzania zasobami i IT. W wersjach od 11.0.0 do 11.0.8 nieuwierzytelniony użytkownik mógł użyć spreparowanego adresu URL, aby pominąć weryfikację hasła jednorazowego podczas logowania, obchodząc uwierzytelnianie dwuskładnikowe. Problem naprawiono w wersji 11.0.8.
- CVE-2026-115770Krytyczne
Pocket ID to dostawca OIDC umożliwiający logowanie za pomocą passkeys. W wersjach od 2.2.0 do 2.12.0 funkcja SendEmailVerification wiąże token weryfikacji e-mail tylko z identyfikatorem użytkownika, podczas gdy UpdateUser może zmienić adres e-mail bez unieważnienia tokenu, a VerifyEmail oznacza bieżący adres jako zweryfikowany. Zwykły użytkownik może zażądać tokenu dla kontrolowanego adresu, zmienić konto na dowolny nieużywany adres i wykorzystać stary token, aby Pocket ID opublikował nowy adres z email_verified ustawionym na true.
- CVE-2026-97693Krytyczne
Platforma Yuxi w wersjach od 0.6.0.beta1 do 0.7.1 ma niewystarczającą izolację między sandboxami Docker a zaufanymi usługami aplikacji. Uwierzytelniony użytkownik o niskich uprawnieniach może uzyskać dostęp do API sandboxów innych najemców, ich plików i sekretów, a także wykonywać polecenia i zarządzać sandboxami bez znajomości poświadczeń administratora.
- CVE-2026-57566Krytyczne
Czytnik ebooków Readest przed wersją 0.11.10 zawiera nieuwierzytelnioną trasę /api/opds/proxy, która pobiera kontrolowany przez atakującego URL po stronie serwera bez ograniczeń schematu, blokowania prywatnych i lokalnych adresów oraz ponownej walidacji przekierowań. Trasa akceptuje również nagłówki wychodzące i wartości Authorization od wywołującego oraz odzwierciedla status i treść odpowiedzi serwera źródłowego.
- CVE-2026-54378Krytyczne
API chmurowe VitaFit przed 2026-10-30 zawierało podatność polegającą na błędnej kontroli dostępu, która pozwala każdemu uwierzytelnionemu użytkownikowi uzyskać tymczasowe poświadczenia AWS poprzez wywołanie endpointu POST /front/user/s3/token/. Atakujący może użyć tych niewłaściwie ograniczonych poświadczeń do listowania współdzielonego bucketa i odczytu lub nadpisania plików innych użytkowników.
- CVE-2026-102895Krytyczne
GPUStack przed wersją 2.2.0 traktował żądania pochodzące z pętli zwrotnej jako pochodzące od wbudowanego administratora, gdy force_auth_localhost było wyłączone (domyślnie). Zdalne żądanie mogło wyglądać na pochodzące z 127.0.0.1, co pozwalało na nieuwierzytelniony dostęp administracyjny, w tym zmianę użytkowników i modeli, tworzenie trwałych kluczy API administratora, ujawnianie sekretów oraz wykonanie kodu.
- CVE-2026-102894Krytyczne
GPUStack w wersjach od 0.7.1 do 2.2.2 zawiera endpoint /auth/saml/callback, który dekoduje XML SAML i używa NameID oraz atrybutów do uwierzytelnienia lub utworzenia użytkownika bez weryfikacji podpisu, wystawcy, odbiorcy, miejsca docelowego ani warunków czasowych. Dowolny klient sieciowy może podszyć się pod istniejącego użytkownika, w tym administratora, lub utworzyć nowe konto, nawet gdy SAML nie jest skonfigurowany.
- CVE-2026-82418Krytyczne
IBM Watson Speech Services Cartridge w wersjach od 4.0.0 do 5.4.0 zawiera podatność use-after-free, która może pozwolić zdalnemu atakującemu na wykonanie dowolnego kodu.
- CVE-2026-122013Krytyczne
W urządzeniu Comfast CF-WR632AX 2.6.0.1 wykryto podatność w nieznanej funkcjonalności pliku /usr/bin/webmgnt w komponencie Multipart Parser. Manipulacja argumentem filename prowadzi do path traversal, a atak można przeprowadzić zdalnie; exploit jest publicznie dostępny, a producent nie odpowiedział na zgłoszenie.
Oryginalny opis (angielski, źródło NVD)
Classroom 50 is a free and open-source tool for managing and grading programming assignments via GitHub. Prior to version 1.11.0, `gh teacher download` clones each student's assignment repository and then writes autograde artifacts (`result.json` and `results.json`) into the just-cloned working tree. The write followed symlinks, so a student who committed `result.json` or `results.json` as a **symlink** (materialized verbatim by `git clone`) could redirect the teacher's write to an arbitrary path — e.g. `~/.zshrc`, `~/.ssh/authorized_keys`, a cron file, or an in-clone `.git/hooks/*` file that git subsequently executes. The written bytes are attacker-controlled (the student's uploaded release asset for `result.json`; student-chosen submit-tag names for `results.json`). This is an arbitrary file write leading to code execution as the teacher, whose `gh` token carries `admin:org`, `repo`, and `workflow` across the entire classroom organization. Version 1.11.0 contains a patch. Some workarounds are available. Avoid running `gh teacher download` against untrusted student repositories, or run it inside a disposable sandbox / container with no access to sensitive host files or credentials. Inspect cloned trees for symlinked, hardlinked, or special (`result.json`/`results.json`) entries before allowing the artifact-refresh step to run.
Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS

