Katalog CVE

CVE-2018-7166

WysokieCVSS 7.5
Opublikowano: Zaktualizowano: Przetłumaczono: NVD NIST

Prawdopodobieństwo exploitacji (EPSS)

Wysokie ryzyko
2.79%

Percentyl 86 - wyżej niż 86% wszystkich znanych CVE

Streszczenie

We wszystkich wersjach Node.js 10 przed 10.9.0 występuje błąd przetwarzania argumentów, który może spowodować, że Buffer.alloc() zwróci niezainicjowaną pamięć. Metoda ta powinna zwracać tylko zainicjowaną lub wyczyszczoną pamięć. Trzeci argument określający 'encoding' może być przekazany jako liczba, co jest błędnie interpretowane przez wewnętrzną metodę 'fill' jako 'start' operacji wypełniania. Błąd ten może być wykorzystany, gdy argumenty Buffer.alloc() pochodzą z danych wejściowych użytkownika, aby zwrócić nieczyste bloki pamięci zawierające poufne informacje.

Ocena ryzyka

Może prowadzić do wycieku poufnych informacji z pamięci, co stanowi poważne ryzyko dla poufności danych. Aplikacje Node.js przetwarzające dane wejściowe użytkownika są narażone.

Rekomendacja

Zaktualizuj Node.js do wersji 10.9.0 lub nowszej. Unikaj przekazywania niezaufanych danych jako argumentów do Buffer.alloc().

Inne podatności w Node.js

Zobacz wszystkie
Oryginalny opis (angielski, źródło NVD)

In all versions of Node.js 10 prior to 10.9.0, an argument processing flaw can cause `Buffer.alloc()` to return uninitialized memory. This method is intended to be safe and only return initialized, or cleared, memory. The third argument specifying `encoding` can be passed as a number, this is misinterpreted by `Buffer's` internal "fill" method as the `start` to a fill operation. This flaw may be abused where `Buffer.alloc()` arguments are derived from user input to return uncleared memory blocks that may contain sensitive information.

Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS