CVE-2026-58176
ŚrednieCVSS 6.5Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 18 - wyżej niż 18% wszystkich znanych CVE
Streszczenie
W systemie RuoYi-Vue-Plus do wersji 5.6.2 (poprawione w commicie 88d03d9) endpointy zarządzania zadaniami przepływu pracy w kontrolerze FlwTaskController nie mają żadnej kontroli uprawnień. Każdy uwierzytelniony użytkownik, niezależnie od roli, może zmieniać przypisanie zadań, przyspieszać je oraz przeglądać wszystkie oczekujące i zakończone zadania.
Ocena ryzyka
Brak kontroli dostępu umożliwia nieuprawnionym użytkownikom manipulację procesem zatwierdzania, co może prowadzić do naruszenia segregacji obowiązków, nieautoryzowanego przepływu dokumentów oraz eskalacji uprawnień w organizacji.
Rekomendacja
Należy natychmiast zaktualizować system do wersji zawierającej commit 88d03d9 lub zastosować łatkę dodającą adnotacje SaCheckPermission do endpointów w FlwTaskController.
Inne podatności w RuoYi-Vue-Plus
Zobacz wszystkie- CVE-2026-88616Nieznane
Problem w RuoYi-Vue-Plus 6.0.0 pozwala zdalnemu atakującemu na wykonanie dowolnego kodu poprzez komponent FlwTaskController.java oraz elementy FlwTaskServiceImpl.completeTask, CompleteExecuteComponent.process, Warm-Flow TaskService.skip, POST /workflow/task/completeTask.
- CVE-2025-66916Krytyczne
Komponent snailjob w RuoYi-Vue-Plus w wersjach 5.5.1 i wcześniejszych, interfejs /snail-job/workflow/check-node-expression, może wykonywać wyrażenia QLExpress, ale nie filtruje danych wejściowych użytkownika, co pozwala atakującym użyć klasy File do dowolnego odczytu i zapisu plików.
Oryginalny opis (angielski, źródło NVD)
RuoYi-Vue-Plus through 5.6.2, fixed in commit 88d03d9, exposes workflow task management endpoints under /workflow/task (FlwTaskController) without any permission check: the controller declares no class-level or method-level authorization annotation, so the endpoints are gated only by global authentication. Any authenticated user, regardless of assigned role, can therefore reassign workflow approval tasks to arbitrary users via updateAssignee (defeating segregation of duties in the approval process), urge arbitrary tasks, and enumerate all pending and finished tasks via the pageByAllTaskWait and pageByAllTaskFinish listing endpoints. The issue was resolved by adding permission identifiers (SaCheckPermission) to these endpoints.

