CVE-2026-102721
Təsvir
Qısa ERROR paketi ilə cavab verən TFTP serveri, klientin qəbul edilmiş dataqramdan sonrakı 64 bayta qədər məlumat oxumasına səbəb olur. Hər bir qəbul yolu yalnız dataqramın ən azı dörd bayt uzunluğunda olduğunu yoxlayır (nxd_tftp_client.c:1229, 1521, 1984). Opcode NX_TFTP_CODE_ERROR olduqda, mesaj sətiri yalnız hədəf buferi və NUL baytı ilə məhdudlaşan dövr vasitəsilə kopyalanır: ```c /* addons/tftp/nxd_tftp_client.c:1769 */ for (i = 0; (i < (sizeof(tftp_client_ptr -> nx_tftp_client_error_string) - 1)) && (*buffer_ptr); i++) ``` Heç bir yerdə `buffer_ptr` dəyişəni `nx_packet_append_ptr` ilə müqayisə edilmir. Server tərəfindən tam idarə olunan və sonlandırıcı NUL baytı olmayan ERROR paketi, sıfır baytıyla rastlaşana və ya 64 baytlıq hədəfi doldurana qədər paket bitdikdən sonra da dövrü davam etdirir. ``` ERROR: AddressSanitizer: heap-buffer-overflow READ of size 1 at 0x60d0000000c8 thread T4 #0 _nxd_tftp_client_file_read addons/tftp/nxd_tftp_client.c:1769 0x60d0000000c8 is 0 bytes to the right of 136-byte region ``` Açıq yol (open path) :1327 sətirində eyni dövrə malikdir və eyni şəkildə hesabat verir. Oxunan məlumatlar `nx_tftp_client_error_string` dəyişəninə yazılır və tətbiqin bunu göstərməsi və ya loqlaması gözlənilir, buna görə də bitişik paket hovuzu yaddaşı cihazın xəta mətni ilə gördüyü əməliyyata daxil olur. Hər üç yoldakı dövr şərtinə `(buffer_ptr < packet_ptr -> nx_packet_append_ptr)` ifadəsi əlavə edilsin.
Necə düzəltmək olar
Mənbələrdə bu zəiflik üçün düzəldilmiş versiya və ya yamaq keçidi yoxdur.
Təsirlənən məhsullar
| Məhsul | Təsirlənən versiyalar | Düzəldildiyi versiya |
|---|---|---|
| Eclipse Foundation NetX Duo | v ≤ 6.5.1 | — |
Versiyanızı yoxlayın
Məhsulu seçin və istifadə etdiyiniz versiyanı yazın; versiyanın təsirlənən aralıqda olub-olmadığını görün.
Attack Surface Management
Domenlərinizə bağlı aktivləri, onlarda işləyən texnologiyaları və məlum zəiflikləri bir siyahıda görün.