Estoy trabajando en una aplicación node.js que permite a los usuarios registrarse en cuentas a través de las redes sociales. Cuando lo hacen, se crea una entrada en nuestra base de datos con su dirección de correo electrónico y una contraseña en blanco.
Cuando vi esto, me preocupé de que alguien simplemente pudiera proporcionar una dirección de correo electrónico y una contraseña en blanco para iniciar sesión como cualquier persona que tuviera una cuenta de redes sociales. Después de algunas pruebas rápidas, parece que hay una línea en el código de autenticación que arroja un error si hay una contraseña de longitud cero. La línea está abajo:
if (!username || !password) { ...
Lo único que se me ocurrió al intentar hacer esto fue pasar un carácter DEL codificado en la URL ( %7F
) pero esto tampoco se saltó.
Tengo curiosidad por saber si estoy a salvo con lo anterior o si hay algún carácter que podría pasarse y que podría pasar el cheque anterior.