CVE-2026-55585
WysokieCVSS 8.8Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 37 - wyżej niż 37% wszystkich znanych CVE
Streszczenie
QWED przed wersją 5.1.2 przekazuje wyrażenia matematyczne sterowane przez wywołującego bezpośrednio do funkcji parse_expr() biblioteki SymPy bez ograniczonych przestrzeni nazw global_dict i local_dict, co pozwala na wykonanie dowolnego kodu Pythona w procesie serwera API. Podatne są ścieżki POST /verify/math i POST /verify/batch, które są chronione tylko przez klucz API dzierżawcy, a rejestracja konta jest domyślnie otwarta. Problem naprawiono w wersji 5.1.2.
Ocena ryzyka
Atakujący z ważnym kluczem API może wykonać dowolny kod Pythona na serwerze, co może prowadzić do odczytu/zapisu plików, modyfikacji danych, wykonania poleceń systemowych, zatrzymania usługi oraz naruszenia innych dzierżawców we wspólnym wdrożeniu.
Rekomendacja
Zaleca się natychmiastową aktualizację QWED do wersji 5.1.2. Należy również ograniczyć dostęp do rejestracji kont i kluczy API oraz monitorować ruch pod kątem podejrzanych żądań do /verify/math i /verify/batch.
Powiązane podatności
- CVE-2026-82592Krytyczne
Wykryto podatność w routerze D-Link DIR-825M w wersji 1.1.8. Dotyczy ona funkcji sub_46725C w pliku /boafrm/formDiskFormat w komponencie Disk Formatting Handler Endpoint. Manipulacja argumentem partition prowadzi do przepełnienia bufora na stosie. Atak może być wykonany zdalnie, a exploit jest publiczny.
- CVE-2026-82542Krytyczne
Podatność w Tenda HG10 300001138 dotyczy funkcji formIPv6Routing w pliku /boaform/admin/formIPv6Routing w komponencie Boa Web Server. Manipulacja argumentem destNet powoduje przepełnienie bufora. Atak może być przeprowadzony zdalnie, a exploit jest publicznie dostępny.
- CVE-2026-82539Krytyczne
W TOTOLINK A720R w wersji 4.1.5cu.630_B20250509 wykryto podatność w funkcji setMacFilterRules pliku cstecgi.cgi komponentu MAC Filtering. Manipulacja argumentem desc może prowadzić do uszkodzenia pamięci. Atak może być przeprowadzony zdalnie, a exploit został publicznie ujawniony.
- CVE-2026-15980Krytyczne
Wtyczka MyHome Core dla WordPressa do wersji 4.4.5 włącznie zawiera podatność umożliwiającą ominięcie uwierzytelniania. Wynika to z braku autoryzacji w handlerze AJAX send_link() oraz nieprawidłowej walidacji tokenów w funkcji activate(). Pozwala to nieuwierzytelnionemu atakującemu wygenerować token aktywacyjny dla niepotwierdzonego konta użytkownika i uzyskać ważny cookie uwierzytelniające dla tego konta, w tym dla administratorów.
- CVE-2026-15369Krytyczne
Wtyczka Custom User Registration Fields for WooCommerce do WordPressa w wersjach do 2.2.3 włącznie jest podatna na eskalację uprawnień. Podatność wynika z akceptowania przez wtyczkę wartości afreg_select_user_role kontrolowanej przez atakującego z nieuwierzytelnionego żądania WooCommerce Store API /wc/store/v1/checkout, zapisywania jej w metadanych zamówienia i przekazywania bezpośrednio do WP_User::add_role() bez walidacji względem listy dozwolonych ról skonfigurowanej przez administratora. Umożliwia to nieuwierzytelnionym atakującym podniesienie uprawnień do administratora poprzez utworzenie konta podczas realizacji zamówienia ze zmodyfikowanym ciałem JSON określającym rolę administratora.
- CVE-2026-82460Krytyczne
Cloud Commander przed wersją 19.20.2 zawiera podatność na przechodzenie po katalogach w operacjach plikowych REST i endpointach markdown, która nieprawidłowo waliduje normalizację ścieżek. Atakujący mogą użyć sekwencji przechodzenia po katalogach do odczytu, zapisu, przenoszenia lub kopiowania plików poza skonfigurowanym katalogiem głównym.
- CVE-2026-82456Krytyczne
argocd-mcp 0.8.0 wiąże swój transport HTTP ze wszystkimi interfejsami sieciowymi i akceptuje sesje MCP bez wymagania poświadczeń wywołującego, gdy skonfigurowano ARGOCD_API_TOKEN. Atakujący, którzy mogą dotrzeć do nasłuchiwacza, mogą wywołać pełną powierzchnię narzędzi, używając przechowywanego tokena operatora, aby tworzyć aplikacje, żądać synchronizacji i modyfikować zasoby Argo CD.
- CVE-2026-82454Krytyczne
API Omnivore (packages/api) przed poprawką w commicie abf53d6 zawiera ominięcie uwierzytelniania w weryfikacji tokenów logowania przez Apple. Funkcja decodeAppleToken pobierała pole 'alg' z nagłówka JWT dostarczonego przez atakującego i przekazywała je jako jedyny dozwolony algorytm do jwt.verify(). Używając jsonwebtoken v8 (który nie weryfikuje zgodności klucza/algorytmu), atakujący może ustawić alg=HS256 i podpisać sfałszowany token, używając publicznego klucza RSA Apple jako sekretu HMAC, omijając weryfikację podpisu i podszywając się pod dowolne konto powiązane z Apple.
- CVE-2026-82452Krytyczne
rust-iot-platform do commita 5df942ab zawiera podatność na ominięcie uwierzytelniania, gdzie większość tras API REST nie ma zabezpieczeń uwierzytelniających w sygnaturach handlerów. Nieuwierzytelnieni atakujący mogą tworzyć, aktualizować, listować, pobierać i usuwać konta użytkowników, bezpośrednio uzyskując dostęp do niezabezpieczonych endpointów bez podawania prawidłowych poświadczeń.
- CVE-2026-82448Krytyczne
Shinobi przed commitem 5a76c74f zawiera zakodowany na stałe klucz połączenia w usłudze węzła podrzędnego, który pozwala nieuwierzytelnionym atakującym na wykonywanie dowolnych zapytań do bazy danych. Atakujący, którzy dotrą do portu węzła podrzędnego, mogą przedstawić zakodowany klucz podczas uzgadniania WebSocket, a następnie wysyłać zapytania SQL przez handler onWebSocketDataFromChildNode, aby odczytywać i modyfikować rekordy użytkowników oraz konfigurację kamer.
Oryginalny opis (angielski, źródło NVD)
QWED is open-source AI verification infrastructure for deterministic verification of LLM outputs, tool calls, code, schemas, and agent state before production execution. Prior to 5.1.2, the qwed package passes caller-controlled math expressions directly to SymPy parse_expr() without restricted global_dict and local_dict namespaces, allowing Python eval() to resolve builtins and execute arbitrary Python code in the API server process. In src/qwed_new/api/main.py, POST /verify/math is protected by get_current_tenant but accepts any valid tenant API key, reads the expression field, applies only a cosmetic re.sub(r'(\d)(()', r'\1*\2', expression) normalization, and passes the result to parse_expr(). In src/qwed_new/core/batch.py, POST /verify/batch sends math items through batch_service.create_job(), stores item.query verbatim, and _verify_item() passes VerificationType.MATH input to parse_expr() without sanitization. The default-enabled POST /auth/signup endpoint allows anyone to create a standard tenant account, POST /auth/api-keys issues an x-api-key, and either vulnerable path can then be used to read or write files, modify data, execute operating system commands, terminate the service, and compromise other tenants in a shared deployment. This issue is fixed in version 5.1.2.

