Wiele przepełnień liczby całkowitej (integer overflow) w funkcji process_bin_update w Memcached pozwala atakującemu zdalnie wykonać dowolny kod. Podatność jest krytyczna, ponieważ nie wymaga żadnego uwierzytelnienia ani interakcji użytkownika.
▸ Pokaż oryginał (EN)
Multiple integer overflows in process_bin_update function in Memcached, which is responsible for processing multiple commands of Memcached binary protocol, can be abused to cause heap overflow and lead to remote code execution.
Funkcja process_bin_update odpowiedzialna za obsługę wielu poleceń binarnego protokołu Memcached zawiera wiele błędów typu integer overflow (CWE-190). Przepełnienia te można wykorzystać do wywołania przepełnienia sterty (heap overflow). Poprzez odpowiednio spreparowane żądania binarne atakujący może nadpisać struktury pamięci i przejąć kontrolę nad przepływem wykonania procesu, co prowadzi do RCE.
Atakujący może zdalnie wykonać dowolny kod w kontekście procesu Memcached, co może prowadzić do pełnego przejęcia kontroli nad systemem, ujawnienia przechowywanych danych oraz naruszenia ich integralności.
Należy zastosować patche dostępne u producenta zgodnie z referencjami. Dla Red Hat Linux dostępne są errata RHSA-2016-2819 oraz RHSA-2016-2820, dla Debian — aktualizacja DSA-3704. Zaleca się również ograniczenie dostępu do portu Memcached wyłącznie do zaufanych hostów za pomocą firewalla oraz wyłączenie binarnego protokołu Memcached, jeśli nie jest wymagany.
Memcached — wersje wskazane w referencjach producenta (patche dostępne m.in. w Red Hat Enterprise Linux poprzez errata RHSA-2016-2819 i RHSA-2016-2820 oraz Debian poprzez DSA-3704)
CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:HMemcached
APPMemcached≤ 1.4.31
Powiązane podatności
Błąd off-by-one w Memcached przy obsłudze proxy (przed 1.6.22)
Integer overflow w Memcached prowadzący do RCE przez heap overflow
In memcached before 1.6.42, username data for SASL password database authentication has a timing side channel ...
In memcached before 1.6.42, password data for SASL password database authentication has a timing side channel ...
In Memcached before 1.6.22, a buffer overflow exists when processing multiget requests in proxy mode, if there...