Disculpa... solo estaba creando expectacion, nada de quedarme con el secretico...!
Hay varios tipos de ataques, a saber, los Sql Injeccion, los Code/Scripts Injeccion, los Buffer Overrund, etc.. que se valen de que el programador confia en que el usuario/aplicacion esta digitando caracteres validos. Es probable que se haya creado un esquema de validacion de caracteres para las cajitas y de hecho, eso cura en gran medida el mal.
Sin embargo, si la aplicacion es distribuida o es tipo Web, el cliente que usa el usuario NO ES NI TIENE que ser el UNICO cliente posible. O sea, si el codigo de validacion es JavaScript y Ok, se filtran caracteres invalidos. Pero el hacker simplemente analiza hacia donde van los Request de la pagina y coje los QueryString o el Form y manda el mismo la solicitud. Si SOLAMENTE en el cliente se valido, el servidor quedara expuesto... quiere decir, se debe volver a revalidar en el servidor toda entrada que PUEDA ser digitada por un usuario, incluyen las URL, los QueryString, las cajas, combos, etc Y LOS CAMPOS ESCONDIDOS (que aproposito se usan para hacer suplantaciones bien bizarras).
Ahora, estos problemas son mas grandes en las aplicaciones Web y distribuidas, no tanto en las Desktop pero es bueno ir haciendose a la practica