Cisco sikkerhedsforskere
Sårbarheden kan udnyttes til at eksekvere kode i en situation, hvor angriberen kan organisere dannelsen af en negativ værdi af den variabel, hvorigennem størrelsen af de kopierede data overføres (for eksempel vil den blive negativ, når der overføres mere end 2 GB af data, men under angrebet skal du overføre mindst 4 GB for at gå ud over buffergrænserne). Funktionen memcpy() er meget udbredt i applikationer, og ARMv7-processorer er almindelige i bilsystemer, mobil-, industri-, forbruger-, kommunikations- og indlejrede enheder, som potentielt er udsat for angreb ved hjælp af Bluetooth, HD Radio/DAB, USB, CAN-bus, Wi-Fi Fi og andre eksterne datakilder (f.eks. tjenester og applikationer, der er tilgængelige via netværket, og som accepterer inputdata uden størrelsesbegrænsninger, kan blive angrebet).
Et eksempel er oprettelsen af en fungerende udnyttelse til at angribe en HTTP-server, der er indbygget i bilinformationssystemer, tilgængelig via bilens Wi-Fi-netværk. En ekstern angriber kan udnytte en memcpy-sårbarhed på denne server ved at sende en meget stor GET-anmodning og få root-adgang til systemet.
På 32-bit x86-systemer vises problemet ikke, da memcpy-implementeringen for denne arkitektur korrekt fortolker størrelsesvariablen som en heltalsværdi uden fortegn af typen size_t (i assemblersprog)
Rettelsen går ud på at erstatte brugen af samlevejledninger, der fungerer på signerede operander (bge og blt) med usignerede modstykker (blo og bhs).
Problemet er endnu ikke løst
Kilde: opennet.ru