Oldalunkon cookie-kat használunk, hogy még jobban Rád szabhassuk tartalmainkat, karrierlehetőségeinket. Részleteket itt olvashatsz.
Amerikai kutatóknak sikerült feltalálniuk a futásidejű típusellenőrzést a C++ számára - kb. így lehetne sommázni a Georgiai Egyetem legújabb közleményét.
A kutatók egy olyan módszert találtak ki, ami az alapból statikus cast-ok a fordító szintjén dinamikusra cserélésével segít feltárni a programozási hibákat a C++ nyelven írt programokban.
Az egyetem hallgatói az LLVM fordítóját módosították úgy, hogy egy bizonyos flag megadása esetén a static_cast műveleteket futásidejű ellenőrzést is magában foglaló dinamikus párjára cserélje le a forráskód módosítása nélkül. Ez természetesen lassítja a programok futását, viszont cserébe lehetővé teszi a hibás, potenciálisan biztonsági rést nyitó castolások felderítését bennük.
A módszerrel több programban, köztük például a Chrome-ban, a Firefox-ban, sőt, a GNU libstd+++ könyvtárában is több sebezhetőséget sikerült azonosítani. Érdekesség, hogy míg a Chrome futása csak pár százalékkal lassult be a dinamikussá váló castok miatt, a Firefox több mint másfélszer lett lassabb - a castok sokkal intenzívebb alkalmazása miatt.
A teljes cikket a prog.hu oldalán olvashatjátok el.