Új hozzászólás Aktív témák

  • dabadab

    titán

    válasz Gabás #42 üzenetére

    "Miért hajtana végre egy lejátszóprogram bármilyen más kódot a feliratfájlban,"

    Nem direkt hajta végre, de végrehajtja, ha olyan.

    A buffer overflow móka arról szól, hogy az adatfeldolgozásban keresnek olyan hibákat, ahol lehetséges túl hosszú adatot beadni - olyat, ami túllóg a neki szánt helyen és felülír mást is a memóriában, pl a függvény visszatérési értékét, így el lehet téríteni a programot - és ha már úgyis bement oda valamilyen adat, akkor abban benne lehet a kód is, amit végrehajt, innentől kezdve meg szabad a pálya.

    Ha egy elsős informatikus a kilencvenes években megírt C-ben egy olyan programot, ami megkérdezte a usertől a nevét és utána kiírta, hogy "Hello Pista!" (vagy ami a neve volt), akkor abban a programban jó eséllyel volt egy gets() függvény, ami potenciális buffer overflow és ha az ember nem azt írta be, hogy "Pista", hanem azt, hogy "01234567890123456789fealrkjm,EWRTEWTjikl", akkor annak az lett a vége, hogy a program a beírt nevet végrehajtotta.

    (#47) borg25: MOS 4eva! :DDD

    [ Szerkesztve ]

    DRM is theft

Új hozzászólás Aktív témák