Se avessi una funzione molto complessa e importante in C che volevi proteggere, varrebbe la pena mettere un buffer da 65K in cima allo stack per proteggerlo dagli overflow del buffer? Dovresti mettere i tuoi buffer importanti sotto il buffer da 65K in modo che lo stack assomigli a questo:
[Saved EIP] // higher adddresses
[ ... ]
[ 65K ]
[ ... ] // other stack variables and buffers
In questo modo se si verificava un overflow del buffer al di sotto del 65K, si riversava nel buffer da 65 K e non raggiungeva le variabili dello stack.
Questa è una difesa fattibile contro i buffer overflow?