Vitajte na [www.pocitac.win] Pripojiť k domovskej stránke Obľúbené stránky

Domáce Hardware Siete Programovanie Softvér Otázka Systémy

Ako Stop C pretečeniu

pretečeniu vyrovnávacej pamäte spôsobiť neočakávané správanie programu v dôsledku nevhodne prepísanie pamäte . Vyrovnávacia pamäť je súvislý blok pamäti pevnej veľkosti používanej pre ukladanie dát , ako je napríklad reťazec znakov . Programovací jazyk C umožňuje zapísať všetky dáta do vyrovnávacej pamäte , aj keď je to príliš large.In doplnok k tomu , aby program havaroval , útočníci môžu využiť pretečenie zásobníka na spustenie škodlivého kódu na systémoch programu . Cez všetky pokusy o ochranu pred buffer overflow exploitov , to je ešte bežne využívané útok vector.In C , pretečenie zásobníka možno zmierniť pomocou nasledujúcich osvedčených postupov pre bezpečné kódovanie . Pokyny dovolená 1

Vyhnite sa funkcie knižnice C strcpy , strčí , sprtinf , vsprintf , dostane a scanf . Tieto funkcie sú nebezpečné a nemajú vykonávať medze kontroly pred zápisom vstup alebo čítanie z vyrovnávacej pamäti , čo vedie k pretečeniu zásobníka . Kontrola Bounds je spôsob použitia podmienené príkazy - napríklad v prípade , potom - . Skontrolovať, či čítať alebo zapisovať ich do viazanej vyrovnávacej pamäti
2

Zneplatnenie kód vykonaný zo zásobníka . Zásobník je miesto , kde pamäť , ako nárazníky sú uložené , zatiaľ čo vaše aplikácie je vykonávanie . Škodlivý kód sa vykonáva zápis do zásobníka , kde je potom spustený . Hoci implementácia môže byť ťažké , niektoré verzie Linuxu a GNU prekladač jazyka C ( GCC ) , sú k dispozícii , ktoré môžu zabrániť .
3

Použite compilar , ktorý bude kontrolovať potenciálne podmienky buffer overflow . Rozšírenie a opravy sú k dispozícii pre C kompilátory , ako je C , ktoré vás upozorní , keď budete používať nebezpečné funkcie a pokus o vykonanie kontroly hraníc v kóde .
4

Použite voľných programov , ako je Stack štít a Stack guard pre detekciu a ochranu proti pretečeniu zásobníka . ( Viď zdroja . )

Najnovšie články

Copyright © počítačové znalosti Všetky práva vyhradené