Esploristoj pri Sekurecaj Cisco
La vundebleco povas esti ekspluatata por ekzekuti kodon en situacio kie la atakanto povas organizi la formadon de negativa valoro de la variablo tra kiu la grandeco de la kopiitaj datumoj estas transdonita (ekzemple, ĝi estos negativa kiam transdono de pli ol 2 GB de datumoj, sed dum la atako, por iri preter la bufrolimoj, vi devas translokigi almenaŭ 4GB). La memcpy() funkcio estas vaste uzata en aplikoj, kaj ARMv7-procesoroj estas oftaj en aŭtaj sistemoj, poŝtelefonaj, industriaj, konsumantoj, komunikadoj kaj enkonstruitaj aparatoj, kiuj eble estas submetataj al atakoj per Bluetooth, HD Radio/DAB, USB, CAN-buso, Wi-Fi Fi kaj aliaj eksteraj datumfontoj (ekzemple, servoj kaj aplikoj alireblaj tra la reto, kiuj akceptas enigajn datumojn sen grandecaj limigoj, povas esti atakitaj).
Ekzemplo estas la kreado de funkcianta ekspluato por ataki HTTP-servilon konstruitan en aŭtajn informsistemojn, alireblajn per la aŭtomobila WiFi-reto. Ekstera atakanto povus ekspluati memcpy-vunereblecon sur ĉi tiu servilo sendante tre grandan GET-peton kaj akiri radikan aliron al la sistemo.
Sur 32-bitaj x86-sistemoj, la problemo ne aperas, ĉar la memcpy-efektivigo por ĉi tiu arkitekturo ĝuste interpretas la grandvariablon kiel sensigna entjera valoro de tipo size_t (en asembla lingvo
La riparo konsistas en anstataŭigi la uzon de asembleaj instrukcioj kiuj funkcias sur subskribitaj operandoj (bge kaj blt) kun nesubskribitaj ekvivalentoj (blo kaj bhs).
La problemo ankoraŭ ne estis solvita
fonto: opennet.ru