Vista

Vista oferuje zestaw zabezpieczeń przed wykorzystywaniem błedów przepełnienia bufora.

Address space layout randomization

Aby zapobiec atakom return to libc Vista oferuje randomizacje lokacji ładowania bibliotek systemowych. Przy starcie systemu wybierana jest dla każdej z nich jedna z 256 możliwych lokalizacji. Zmiejsza to szansę atakującego na trafienie na właściwą funkcję przy return to libc.

/GS

Jest to opcja kompilacji VC++ (domyślnie włączona) zabezpiecza ona adres powrotu na stosie. Kompilator umieszcza dodatkowe zmienne przed (w sensie wzrotsu tablic) adresem powrotu z procedury w razie zmiany warotści tej zmiennej program zamiast wychodzić z procedury (albo raczej skakać do miejsca wybranego przez hakera). Program kończy działanie.

Ochrona danych przed wykonaniem (NX)

Vista wspiera również bit nie wykonywanego kodu. Zapobiega on wykonywaniu danych, co uniemożliwia wykonanie kodu wprawadzonego przez hakera.

Linki