[Ossm-members] Сигурност

Дамјан penguinista at mail.net.mk
Tue Nov 23 13:43:24 UTC 2004


> Spored mene, ova e malku glupa situacija bidejki :
>  - Ako nastane overflow vo dinamicki alociran bafer, avtomatski
> dobivas SegFault => kodot ne se izvrsuva, NX e odvisen. (hipoteticka
> situacija : koga memoriskiot chunk koj sledi posle "povredeniot"
> pripagja na istiot proces, togas nema segfault - ovde NX bi mozel da
> zavrsi rabota).

тоа е честа ситуација, пошто процесот од кернелот ја алоцира меморијата во 
страни (page) од по 4kb (8кб кај Алфа, но може и поголеми кај некои 
архитектури). Ако buffer-от ти е 200 byte-и, overflow од 1kb најверојатно 
сеуште е во истата страна. Тек ако overflow-от излезе од мемориските рамки на 
процесот ќе добиеш segfault.
NX помага да не може да се изврши некоја рутина која била убацена во дата 
buffer-от.

>  - Problemot e ako baferot e staticki alociran na stek, kako lokalna
> promenliva. Togas ne dobivas segfault i so overflow moze da se izmeni
> povratnata adresa na stekot koja bi pokazuvala na sosema druga rutina,
> po pretpostavka na "zlobniot" kod. Ovde NX ne pomaga.

пошто обично и злобниот код е претходно убацен во стекот (предпоставката е 
дека злобниот код не го имаш цело време на компјутерот), сепак NX помага.


-- 
дамјан

   "One world, one web, one program"  -- Microsoft promotional ad
         "Ein Volk, ein Reich, ein Fuehrer"  -- Adolf Hitler



More information about the Ossm-members mailing list