Estaba intentando escribir un exploit para Crossfire (un juego en Linux que tiene vulnerabilidad BOF) para practicar con un CTF.
Mientras se borraba el juego, descubrí que si aumentas el tamaño del búfer que envías sobre un valor constante, el juego en el depurador se comportará de una manera similar al comportamiento de las aplicaciones de Windows cuando el búfer escribe sobre SEH. (El EIP no se sobrescribe, los valores de registro están dañados y la ejecución se detiene)
La solución a esto, según el CTF, es usar un pequeño búfer apuntado por ESP para saltar al resto del código de shell que se encuentra al comienzo del búfer.
Sin embargo, esto me llevó a una pregunta: ¿Linux tiene una forma similar de manejar las excepciones que es explotable?
P.S. Cuando intenté buscar en Google "SEH con Linux", las páginas que obtuve mencionaban a Linux como la máquina atacante, no a la víctima.