CRITICAL🇬🇧 English

CVE-2021-21242

OneDev: Pre-auth RCE przez deserializację w AttachmentUploadServlet

CVSS 10.0v3.1pub. 2021-01-15upd. 2024-11-21

OneDev w wersjach przed 4.0.3 zawiera krytyczną podatność umożliwiającą zdalne wykonanie kodu bez uwierzytelnienia (pre-auth RCE). Luka wynika z niebezpiecznej deserializacji niezaufanych danych przyjmowanych przez serwlet odpowiedzialny za przesyłanie załączników.

Pokaż oryginał (EN)

OneDev is an all-in-one devops platform. In OneDev before version 4.0.3, there is a critical vulnerability which can lead to pre-auth remote code execution. AttachmentUploadServlet deserializes untrusted data from the `Attachment-Support` header. This Servlet does not enforce any authentication or authorization checks. This issue may lead to pre-auth remote code execution. This issue was fixed in 4.0.3 by removing AttachmentUploadServlet and not using deserialization

🤖 Analiza AI
Jak działa

Komponent AttachmentUploadServlet deserializuje dane przekazywane w nagłówku HTTP `Attachment-Support` bez jakiejkolwiek weryfikacji tożsamości lub uprawnień wywołującego. Atakujący może skonstruować złośliwy payload i przesłać go w tym nagłówku do podatnego endpointu. Ponieważ serwlet nie wymaga uwierzytelnienia, exploit jest dostępny dla każdego, kto ma dostęp sieciowy do instancji OneDev. Podatność została usunięta w wersji 4.0.3 poprzez całkowite usunięcie AttachmentUploadServlet i rezygnację z deserializacji.

Skutki

Atakujący nieposiadający żadnych uprawnień może zdalnie wykonać dowolny kod na serwerze (RCE), co prowadzi do pełnego przejęcia kontroli nad instancją OneDev oraz potencjalnie całą infrastrukturą, na której działa platforma.

Mitygacja

Należy niezwłocznie zaktualizować OneDev do wersji 4.0.3 lub nowszej. W wersji 4.0.3 producent usunął podatny komponent AttachmentUploadServlet i wyeliminował użycie deserializacji. Do czasu wdrożenia patcha zaleca się ograniczenie dostępu sieciowego do instancji OneDev wyłącznie do zaufanych adresów IP.

Kogo dotyczy

OneDev (Onedev Project) we wszystkich wersjach przed 4.0.3

Uwagi

Podatność dotyczy endpointu niewymagającego żadnego uwierzytelnienia (pre-auth), co czyni ją szczególnie groźną dla instancji OneDev wystawionych publicznie w Internecie. Poprawka dostępna w repozytorium GitHub pod wskazanym commitem.

CVSS Vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:N
  • Onedev Project Onedev

    APP
    Onedev Project
    < 4.0.3
🔵
ZWERYFIKUJ U PRODUCENTA
Brak jednoznacznych danych o patchu. Sprawdź referencje od producenta.
Tagi
RCEDeserialization
CWE
Referencje

Powiązane podatności

CVE-2022-39206CRITICAL9.9PL ✓ten sam produkt

OneDev: ucieczka z kontenera Docker i przejęcie hosta przez CI/CD

CVE-2022-39205CRITICAL9.0PL ✓ten sam produkt

OneDev: Pominięcie uwierzytelnienia prowadzące do RCE przez endpoint git callback

CVE-2021-21245CRITICAL10.0PL ✓ten sam produkt

OneDev: Dowolne przesyłanie plików przez AttachmentUploadServlet

CVE-2021-21247CRITICAL9.6PL ✓ten sam produkt

OneDev — zdalne wykonanie kodu przez deserializację danych AJAX (post-auth RCE)

CVE-2021-21244CRITICAL10.0PL ✓ten sam produkt

Pre-auth Server Side Template Injection w OneDev (przed 4.0.3)