Por lo que entiendo, usar GET para enviar nombres de usuario / contraseñas es un problema de seguridad porque el nombre de usuario / contraseña son parte de la URL que puede aparecer en el historial del navegador.
Ese no es el único problema. El uso de GET para situaciones donde el usuario está enviando datos abre su aplicación a las vulnerabilidades CSRF .
Por ejemplo, podría insertar <img src="http://yoursite.com/login?username=something&password=somethingelse">
, lo que puede registrar a los visitantes en mi fuera de su sitio debido a la llamada al controlador de inicio de sesión. Este ejemplo específico depende de la implementación, pero se pueden realizar otros ataques. Puede haber casos en que un atacante quiera que los usuarios inicien sesión en su cuenta.
Además de eso, otros registradores en camino (su ISP, etc.) pueden registrar esto por un período de tiempo prolongado. Por supuesto, se puede decir lo mismo acerca de la solicitud POST, pero por lo general no se mantendrán los datos completos de solicitud por mucho tiempo.