I have been implementing server-sent shaders using OpenGL for a game (GLSL version 1.20.8).
Executing server-sent shaders on the client obviously is remote code execution, which tends to be a bad thing. But shaders are fairly constrained - they have well-defined outputs and inputs, which are both controlled by the client over which the server has limited control. The server should also not get any of the output, as that goes to the screen in the end and should not be read by the application or sent back to the server.
What is the range of known shader exploits (due to e.g. graphics card bugs), what would be the worst case? And how can I secure the application?