Podatność typu buffer overflow (CWE-121: stack-based buffer overflow) w systemie Open Vehicle Monitoring System 3 (OVMS3) w wersji 3.3.005 pozwala zdalnemu atakującemu bez uwierzytelnienia na wywołanie odmowy usługi lub wykonanie dowolnego kodu. Podatność uzyskała maksymalny wynik CVSS 10.0, co czyni ją krytycznym zagrożeniem.
▸ Pokaż oryginał (EN)
Buffer overflow vulnerability in Open Vehicle Monitoring System 3 (OVMS3) 3.3.005. In canformat_gvret.cpp, the length field in GVRET binary data is not properly validated, allowing remote attackers to cause a denial of service or possibly execute arbitrary code via crafted GVRET frames.
Problem znajduje się w pliku canformat_gvret.cpp, który odpowiada za przetwarzanie binarnych danych protokołu GVRET. Pole długości (length field) w odbieranych ramkach GVRET nie jest prawidłowo walidowane przed użyciem. Atakujący może przesłać specjalnie spreparowane ramki GVRET zawierające nieprawidłową wartość pola długości, co prowadzi do przepełnienia bufora na stosie. Atak nie wymaga uwierzytelnienia, interakcji użytkownika ani szczególnych warunków sieciowych (sieć publiczna, niska złożoność).
Atakujący może doprowadzić do awarii systemu (DoS) lub — w bardziej zaawansowanym scenariuszu — wykonać dowolny kod na urządzeniu z uprawnieniami procesu obsługującego ramki GVRET. Ze względu na wektor ataku (sieć, bez uwierzytelnienia, zakres zmieniony) kompromitacja może objąć zasoby wykraczające poza bezpośrednio podatny komponent.
Należy zastosować patche dostępne u producenta zgodnie z referencjami. Kod źródłowy projektu dostępny jest pod adresem https://github.com/openvehicles/Open-Vehicle-Monitoring-System-3. Do czasu zastosowania aktualizacji zaleca się ograniczenie dostępu sieciowego do urządzeń OVMS3 za pomocą firewall oraz segmentację sieci uniemożliwiającą nieautoryzowane przesyłanie ramek GVRET.
Open Vehicle Monitoring System 3 (OVMS3) w wersji 3.3.005.
Dostępny jest publiczny proof-of-concept opisujący podatność pod adresem https://gist.github.com/sgInnora/f4ac66faeefe07a653ceeb3f58cdc381. Pomimo CVSS 10.0 podatność nie figuruje w katalogu CISA KEV na dzień publikacji.
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:HOpenvehicles Open Vehicle Monitoring System
HWOpenvehicleswszystkie wersjeOpenvehicles Open Vehicle Monitoring System Firmware
OSOpenvehicles3.3.005