Cisco Security Researchers
A vulnerabilità pò esse sfruttata per eseguisce u codice in una situazione induve l'attaccante pò urganizà a furmazione di un valore negativu di a variàbile per mezu di quale a dimensione di e dati copiati hè trasmessa (per esempiu, andarà negativu quandu si trasferisce più di 2 GB di dati, ma durante l'attaccu, per andà oltre i limiti di u buffer, avete bisognu di trasfiriri almenu 4GB). A funzione memcpy () hè largamente usata in l'applicazioni, è i prucessori ARMv7 sò cumuni in sistemi di l'automobile, mobili, industriali, cunsumatori, cumunicazioni è dispusitivi integrati, chì sò potenzialmente sottumessi à attacchi cù Bluetooth, HD Radio / DAB, USB, CAN bus, Wi-Fi Fi è altre fonti di dati esterni (per esempiu, i servizii è l'applicazioni accessibili nantu à a reta chì accettanu dati di input senza restrizioni di dimensione ponu esse attaccati).
Un esempiu hè a creazione di un sfruttamentu di travagliu per attaccà un servitore HTTP integratu in sistemi d'infurmazione di l'automobile, accessibile via a rete Wi-Fi di l'automobile. Un attaccu esterno puderia sfruttà una vulnerabilità memcpy in stu servitore mandendu una dumanda GET assai grande è acquistà l'accessu root à u sistema.
Nantu à i sistemi x32 86-bit, u prublema ùn appare micca, postu chì l'implementazione memcpy per questa architettura interpreta currettamente a variabile di dimensione cum'è un valore interu senza signu di tipu size_t (in lingua assemblea).
A correzione si riduce à rimpiazzà l'usu di struzzioni di assemblea chì operanu nantu à l'operandi firmati (bge è blt) cù contraparti senza firma (blo è bhs).
U prublema ùn hè ancu risolta
Source: opennet.ru