CRITICAL🇬🇧 English

CVE-2017-16931

Błędna obsługa odwołań do encji parametrycznych w libxml2 (RCE)

CVSS 9.8v3.0pub. 2017-11-23upd. 2026-05-13

Biblioteka libxml2 w wersjach przed 2.9.5 nieprawidłowo obsługuje odwołania do encji parametrycznych w plikach DTD, co może prowadzić do krytycznych błędów pamięci. Podatność sklasyfikowana jest jako CRITICAL z wynikiem CVSS 9.8, co oznacza możliwość zdalnego wykonania kodu bez uwierzytelnienia.

Pokaż oryginał (EN)

parser.c in libxml2 before 2.9.5 mishandles parameter-entity references because the NEXTL macro calls the xmlParserHandlePEReference function in the case of a '%' character in a DTD name.

🤖 Analiza AI
Jak działa

Problem tkwi w pliku parser.c, gdzie makro NEXTL nieprawidłowo wywołuje funkcję xmlParserHandlePEReference w momencie napotkania znaku '%' w nazwie DTD. Błędna obsługa odwołań do encji parametrycznych powoduje naruszenie zasad zarządzania pamięcią (CWE-119 — nieprawidłowe ograniczenia operacji na buforze pamięci). Atakujący może dostarczyć specjalnie spreparowany plik XML lub DTD, który wyzwoli wadliwy kod ścieżki parsowania.

Skutki

Skuteczne wykorzystanie podatności może pozwolić atakującemu na zdalne wykonanie kodu (RCE), ujawnienie poufnych danych lub spowodowanie niedostępności aplikacji — wszystko bez konieczności posiadania jakichkolwiek uprawnień.

Mitygacja

Należy zaktualizować bibliotekę libxml2 do wersji 2.9.5 lub nowszej. Administratorzy systemów Debian powinni zastosować poprawki ogłoszone w debian-lts-announce z listopada 2017 r. Użytkownicy produktów Oracle powinni zapoznać się z odpowiednim CPU (Critical Patch Update) i zastosować dostępne patche.

Kogo dotyczy

Xmlsoft libxml2 w wersjach przed 2.9.5. Podatność dotyczy wszystkich aplikacji i systemów korzystających z tej biblioteki do parsowania XML (m.in. pakiety Debian LTS oraz produkty Oracle wskazane w referencjach).

Uwagi

Poprawka dostępna jest w repozytorium GNOME pod commitem e26630548e7d138d2c560844c43820b6767251e3. Podatność pierwotnie zgłoszona w Bugzilla GNOME jako błąd nr 766956.

CVSS Vector
CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
  • Xmlsoft Libxml2

    APP
    Xmlsoft
    ≤ 2.9.4
🔵
ZWERYFIKUJ U PRODUCENTA
Brak jednoznacznych danych o patchu. Sprawdź referencje od producenta.
CWE
Referencje

Powiązane podatności

CVE-2024-40896CRITICAL9.1PL ✓ten sam produkt

XXE w bibliotece libxml2 — obejście niestandardowych handlerów SAX

CVE-2017-7376CRITICAL9.8PL ✓ten sam produkt

Buffer overflow w libxml2 umożliwiający zdalne wykonanie kodu przez błędną obsługę portów przy przekierowaniac...

CVE-2017-7375CRITICAL9.8PL ✓ten sam produkt

Libxml2: nieautoryzowane dołączanie zewnętrznych encji XML (XXE)

CVE-2017-8872CRITICAL9.1PL ✓ten sam produkt

Buffer over-read w libxml2 — DoS i ujawnienie informacji

CVE-2016-4658CRITICAL9.8PL ✓ten sam produkt

RCE i DoS w libxml2 — błąd use-after-free w obsłudze XPointer