Por que las variables muchas veces pueden ser explotadas cambiándolas de lugar, o en dado caso existen condicionales, los cuales no están protegidos de una manera correcta, por tanto al momento de ingresar un codigo puede ser aceptado y procesado por el server atacado, en muchos casos existen diferentes tipos de exploits dependiendo el efecto que se quiera causar, desde un Owerflow, un Injection SQL, RFI, LFI, o incluso algunos XSS, pero eso depende de la web o server, la versión de la misma, y el ataque que se quiera realizar.
Si. y también decir que no toda vulnerabilidad tiene exploit.