Cita: Podrías decirme (en forma de ayuda) cómo harías tu para hacerlo mas seguro? osea, como protegerlo contra XSS, SQL Inyection? Bueno debo confesar que lo hice en casi una hora de trabajo, claro que no justifica las vulnerabilidades que no sé corregir (por ahora)
Usa
mysql_real_escape_string() para evitar SQL Injection, valida los datos usando expresiones regulares para solamente permitir caracteres alfanumericos, guiones y unos cuantos mas.
Nunca puedes confiar en los datos que el usuario introducira.
Unos cuantos IF bastaran para solucionarlo y otras funciones mas puedes solucionarlo. addslashes(), trim(), stripslashes(), htmlentities(), etc...
Usa algun algoritmo de Hash para encriptar las contraseñas al guardarlas en la base de datos como md5 o sha1.
Y ya que cuando sucede un error redireccionas a la pagina de login, seria bueno que recojas el querystring que envias y dependiendo de este, mostrar un mensaje de error. Asi el usuario esta al tanto de que sucede.