Přidat otázku mezi oblíbenéZasílat nové odpovědi e-mailem buffer overflow

Cisto zo zvedavosti som si chcel vyskusat "naprogramovat" buffer overflow a nasledne ziskat rootvske prava 8-) (na mojom pc pochopitelne). Postupoval som podla nejakych prikladov kde sa vytvorili 2 programy. Prvy vyzeral v skratke takto:

char buffer[500];
strcmp(buffer, argv[1]);
Druhy program mal vytvoril len "specialny" retazec dlhsi ako 500 bytov a nasledne spustit prvy program s argumentom=retazcom. Tento retaz bol dlhy 600 bytov a hned som si myslel ze to musi spravit segmentation fault - tak sa aj stalo.
Lenze ku podivu mi uvedeny prvy program sposobi segmentation fault uz pri argumente dlhom 501 bytov::).
Otazka: Zalezi to od architektury alebo od operacneho systemu alebo od verzie gcc (tym som to kompiloval) alebo od coho? Myslim ze o par bytov viac by este nemalo "nic spravit". Dufam ze niekto vie o com pisem.....:-/

Odpověď na otázku

1 Zadajte svou přezdívku:
2 Napište svou odpověď:
3 Pokud chcete dostat ban, zadejte libovolný text:

Zpět do poradny