I was trying to write an exploit for Crossfire (a game on Linux which has BOF vulnerability) to practice for a CTF.
While fuzzing the game, I found out that if you increase the buffer size you send over constant value, the game in the debugger will behave in a way similar to Windows' applications behavior when the buffer writes over SEH. (EIP not being overwritten, register values are corrupted and execution stops)
The solution to this, according to the CTF, is to use a small buffer pointed to by ESP to jump to the rest of the shellcode which resides at the beginning of the buffer.
However, this led me to a question: Does Linux have a similar way to handle exceptions which is exploitable?
P.S. When I tried to google "SEH with Linux", the pages I got where mentioning Linux as the attacking machine, not the victim.