CVE-2026-114515
ŚrednieCVSS 6.5Streszczenie
OCO-Server przed wersją 1.2.3 pozwala użytkownikowi Self-Service Portal z uprawnieniami do tworzenia kontenerów zadań i odczytu komputera oraz pakietu na zakolejkowanie zadania odinstalowania bez uprawnień do wdrożenia. Pętla sprawdzania uprawnień nie usuwa odrzuconych identyfikatorów, a następnie przekazuje oryginalną listę do funkcji odinstalowania, która jest wykonywana w kontekście systemowym.
Ocena ryzyka
Atakujący może zlecić nieautoryzowane usunięcie oprogramowania na komputerach widocznych dla jego roli, w tym na komputerach innych użytkowników. Może to prowadzić do przerw w działaniu i utraty danych.
Rekomendacja
Zaktualizuj OCO-Server do wersji 1.2.3 lub nowszej. Dodatkowo rozważ ograniczenie uprawnień użytkowników Self-Service Portal.
Inne podatności w OCO-Server
Zobacz wszystkie- CVE-2026-61791Wysokie
OCO-Server w wersjach przed 1.2.1 zawiera podatność, w której Html::commandButton() w lib/Html.class.php osadza URL akcji zawierający przechowywaną nazwę hosta komputera w łańcuchu JavaScript w obsłudze onclick, używając htmlspecialchars(ENT_QUOTES) tylko do escapowania HTML. Przeglądarki dekodują encje HTML przed interpretacją obsługi jako JavaScript, więc spreparowana nazwa hosta może uciec z łańcucha i wykonać skrypt w uwierzytelnionej sesji administratora po aktywowaniu przycisku polecenia. Zdalny atakujący posiadający współdzielony agent-registration-key może zapisać niekontrolowaną nazwę hosta przez oco.agent.hello, gdy włączona jest samorejestracja agenta (domyślnie wyłączona). Problem naprawiono w wersji 1.2.1.
- CVE-2026-114611Krytyczne
W OCO-Server przed wersją 1.2.3 endpoint rejestracji Apple MDM (frontend/api-mdm.php) weryfikuje podpisany plist żądania rejestracji z flagą PKCS7_NOVERIFY, co wyłącza walidację łańcucha certyfikatów i zaufania. W efekcie atakujący może podpisać sfałszowany plist dowolnym certyfikatem self-signed, podając numer seryjny znanego urządzenia, i nieuwierzytelnionym żądaniem uzyskać tożsamość MDM ofiary (certyfikat i klucz prywatny) oraz nadpisać rekord urządzenia w bazie.
Oryginalny opis (angielski, źródło NVD)
OCO-Server is a self-hosted endpoint management application for computer inventory, software deployment, and mobile device management. Prior to 1.2.3, a valid Self-Service Portal user with permission to create job containers and read visibility on a computer and package can queue an uninstall job without deploy permission for those resources. Requests to `self-service/ajax-handler/job-containers.php` pass `uninstall_package_assignment_id[]` values to `lib/SelfService/CoreLogic.class.php::uninstallSelfService()`. Its permission-check loop continues after denied `METHOD_DEPLOY` checks without removing rejected IDs from `$installationIds`, then passes the original list to `lib/CoreLogic.class.php::uninstall()`. The CoreLogic object is constructed with a null SystemUser, causing `lib/CoreLogic.class.php::checkPermission()` to treat the operation as system context and unconditionally permit it. Enumerable `computer_package.id` values allow selection of readable installed-package assignments, including those on other users' computers. The `deploySelfService()` install path instead aborts on denied deployment permission, and resources lacking read permission remain blocked. This permits unauthorized software-removal jobs across resources visible to the acting user's role. This issue is fixed in version 1.2.3.
Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS

