CRITICAL🇬🇧 English

CVE-2026-24685

OpenProject: command injection w endpoincie diff repozytorium (zapis dowolnych plików)

CVSS 9.4v4.0pub. 2026-01-28upd. 2026-02-09

Wersje OpenProject starsze niż 16.6.6 i 17.0.2 zawierają podatność typu command injection (CWE-77) w endpoincie pobierania diff repozytorium, umożliwiającą zapis dowolnych plików na serwerze. Zagrożenie jest krytyczne, ponieważ atakujący z podstawowymi uprawnieniami do projektu może nadpisać pliki konfiguracyjne lub aplikacyjne, prowadząc do utraty danych i odmowy usługi.

Pokaż oryginał (EN)

OpenProject is an open-source, web-based project management software. Versions prior to 16.6.6 and 17.0.2 have an arbitrary file write vulnerability in OpenProject’s repository diff download endpoint (`/projects/:project_id/repository/diff.diff`) when rendering a single revision via git show. By supplying a specially crafted rev value (for example, `rev=--output=/tmp/poc.txt)`, an attacker can inject git show command-line options. When OpenProject executes the SCM command, Git interprets the attacker-controlled rev as an option and writes the output to an attacker-chosen path. As a result, any user with the `:browse_repository` permission on the project can create or overwrite arbitrary files that the OpenProject process user is permitted to write. The written contents consist of git show output (commit metadata and patch), but overwriting application or configuration files still leads to data loss and denial of service, impacting integrity and availability. The issue has been fixed in OpenProject 17.0.2 and 16.6.6.

🤖 Analiza AI
Jak działa

Endpoint `/projects/:project_id/repository/diff.diff` przekazuje parametr `rev` bezpośrednio do polecenia `git show` bez odpowiedniej sanityzacji. Atakujący może dostarczyć sprytnie spreparowaną wartość parametru `rev`, np. `--output=/tmp/poc.txt`, która zostanie zinterpretowana przez Git jako opcja wiersza poleceń, a nie identyfikator rewizji. W efekcie Git zapisuje dane wyjściowe (metadane commitu i patch) do ścieżki wskazanej przez atakującego. Wystarczy, że atakujący posiada uprawnienie `:browse_repository` w projekcie, aby przeprowadzić atak.

Skutki

Atakujący może tworzyć lub nadpisywać dowolne pliki dostępne dla procesu OpenProject, co może prowadzić do utraty integralności danych, uszkodzenia konfiguracji aplikacji oraz odmowy usługi (DoS). W przypadku nadpisania kluczowych plików konfiguracyjnych lub aplikacyjnych możliwe jest całkowite wyłączenie instancji OpenProject.

Mitygacja

Należy zaktualizować OpenProject do wersji 16.6.6 (dla gałęzi 16.x) lub 17.0.2 (dla gałęzi 17.x), w których podatność została naprawiona. Do czasu aplikacji patcha zaleca się ograniczenie lub odebranie uprawnienia `:browse_repository` nieautoryzowanym użytkownikom oraz wyłączenie funkcji integracji z repozytoriami SCM, jeśli nie jest to krytyczna funkcjonalność.

Kogo dotyczy

OpenProject w wersjach wcześniejszych niż 16.6.6 (seria 16.x) oraz wcześniejszych niż 17.0.2 (seria 17.x) z włączoną obsługą repozytoriów SCM (Git).

Uwagi

Podatność dotyczy wyłącznie instancji OpenProject z aktywną integracją repozytoriów Git. Wpływ na systemy bez skonfigurowanych repozytoriów SCM jest ograniczony. Szczegóły opublikowano w ramach security advisory na GitHub: GHSA-74p5-9pr3-r6pw.

CVSS Vector
CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:H/VA:H/SC:H/SI:H/SA:H/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X
  • Openproject

    APP
    Openproject
    < 16.6.617.0.0 – 17.0.2 (bez)
🔵
ZWERYFIKUJ U PRODUCENTA
Brak jednoznacznych danych o patchu. Sprawdź referencje od producenta.
Tagi
DoS
CWE
Referencje

Powiązane podatności

CVE-2026-34717CRITICAL9.9PL ✓ten sam produkt

SQL Injection w OpenProject — operator =n bez parametryzacji zapytań

CVE-2026-32703CRITICAL9.0PL ✓ten sam produkt

Stored XSS w module Repositories aplikacji OpenProject

CVE-2026-32698CRITICAL9.1PL ✓ten sam produkt

SQL Injection w OpenProject umożliwiający zdalne wykonanie kodu Ruby

CVE-2026-25763CRITICAL9.4PL ✓ten sam produkt

OpenProject: command injection w endpointcie repozytorium prowadzący do RCE

CVE-2026-22600CRITICAL9.1PL ✓ten sam produkt

OpenProject — odczyt lokalnych plików przez SVG/ImageMagick przy eksporcie PDF