solucion
  • 0
  • 4 RepliesReplies
  • 4821 ReadTimes Read
  • 0 PointsPoints

Topic: ¿Cómo encripta las contraseñas SMF?

Usuario: Príncipe_Azul
Rango: Nuevo Usuario
Mensajes: 294
Points: 12
Perfil: View Profile
Pais:
ar
¿Cómo encripta las contraseñas SMF?
March 02, 2016 - 03:44 03:44
¿Cómo encripta las contraseñas SMF?

Datos importantes:
Url del foro: http://www.argentinairc.net/Foro/
Version de SMF: 2.0.11
Theme del foro: CleanTek
Cuenta demo: User: usuario pass: 22962296

Descripcion del problema:
Hola amigos!! :)

Tengo una duda, quisiera saber como hace SMF para encriptar las contraseñas de los usuarios, es decir, cuando una persona se loguea en el foro, su contraseña es encriptada, he ido haciendo pruebas y mirando con diferentes programas, que la contraseña la encripta el navegador y no el servidor.

Ya tengo la base que es saber que SMF utiliza el método de cifrado SHA1, perfecto, hasta ahí bien, el tema que yo cuando logro saber una clave encriptada por ejemplo de una cuenta demo mía, esa clave encriptada en SHA1 es diferente a la que yo encriptaría de forma manual usando algún programa o alguna página web que brinde el servicio de encriptación online.

Para que se entienda mejor, supongamos que yo tengo la cuenta "Felipe" con la contraseña "elbailarinargentino" y al loguearme en SMF poniendo mi contraseña "elbailarinargentino", al chequear la contraseña encriptada sale así:

rrab6a6wcxio3n83q7albqv2ofyp4q

ok todo perfecto hasta justo ahí.
Ahora quisiera usar un programa, un código o una página web que brinde el servicio para encriptar una clave en texto plato y pasarla a SHA1, entónces pondría la clave "elbailarinargentino", pero cuando hago la conversión en vez de salir así:

rrab6a6wcxio3n83q7albqv2ofyp4q

sale así:

s2fd3hjdzd37wn9lfwcaiekviy6fzi

y no entiendo porque las claves son distintas siendo que la contraseña es exactamente la misma, además son todos números los que estoy probando con una cuenta de usuario.
Lo que deduzco de esto, es que SMF algo le debe agregar a la contraseña y ese "algo" es lo que no se qué es.

¿Alguien podría decirme porque pasa esto y cómo solucionarlo?


Muchas gracias a todos desde ya!!
Usuario: Papá distante
Rango: Moderador Global
Mensajes: 3504
Points: 168
Perfil: View Profile
Pais:
de
Re:¿Cómo encripta las contraseñas SMF?
Reply #1 March 02, 2016 - 01:24 13:24
Hasta donde sé incluye el nombre de usuario dentro del hash de password así:

Usuario: Felipe
Password: elbailarinargentino

1. Convertir el usuario a minúsculas: felipe
2. palabra a encriptar: felipeelbailarinargentino


pd: No se donde estás revisando el SHA-1 porque a mi me muestra otra cosa >esta página<

La función está en el  LogInOut.php

Code: [Select]
$hash = sha1(strtolower($username) . $password);
Usuario: Príncipe_Azul
Rango: Nuevo Usuario
Mensajes: 294
Points: 12
Perfil: View Profile
Pais:
ar
Re:¿Cómo encripta las contraseñas SMF?
Reply #2 March 03, 2016 - 07:42 07:42
Muchísimas gracias estimado Papá distante!


Quote
Hasta donde sé incluye el nombre de usuario dentro del hash de password así:

Usuario: Felipe
Password: elbailarinargentino

1. Convertir el usuario a minúsculas: felipe
2. palabra a encriptar: felipeelbailarinargentino

Perfecto! eso era lo que no sabía, en la función que has dejado, me di cuenta también de que hace eso mismo que me comentas :)


Quote
pd: No se donde estás revisando el SHA-1 porque a mi me muestra otra cosa >esta página<

Es que lo que dejé fué un ejemplo, ni siquiera era en SHA1 esa enciptación.
Sin embargo después de tu explicación me sigue fallando la encriptación de la clave...
La verdad no se donde está mi error...

Te dejo los datos correctos:

Nombre de usuario: usuario
Clave: holaamigo

el nombre de usuario se escribe tál cuál "usuario" en minúscula y la contraseña también en minúscula, cuando uno/junto esas 2 cosas, me sale este hash:

6064820da0276175d4350962f14a6c78df7f102e

ok, todo bien, pero cuando miro en Firefox veo que sale otro distinto:



o sea en Firefox me sale este:

d57e3e0dbe90daf1c7b36febb4b67b53c7f4a0d6

y lo raro es que hago tál cuál me lo has comentado, es más, pensando que puede ser un fallo de Python o de la librería hashlib (ya que estoy programando en ese lenguaje), lo he probado en esa misma página que me has dejado, es más, ante-noche ya conocí esa web porque ya había buscado páginas que encripten claves de forma online.

Pero tanto Python como esa web, me dan exactamente el mismo hash!!!!
Entónces... de dónde está sacando Firefox ese hash?

He probado a usar ese hash que me genera Python que es exactamente el mismo que me genera esa página web, y el login es correcto, se loguea perfectamente.
Por último he probado a loguearme con el mismo hash que me genera Python:

80a7b07af2f6adc4de7f8091605ef7409d128823

pero quitándole un dígito:

80a7b07af2f6adc4de7f8091605ef7409d12882

y ya me da error, o sea no recibo el SMFCookie118 porque cláro se altera la encriptación, pero era para asegurarme completamente de que el hash que me genera Python es correcto ya que cuando lo uso, recibo el cookie SMFCookie118.


Podemos dar el tema como solucionado, cualquier cosa vuelvo a responder si algo me falla.
Te agradezco mucho tu ayuda amigo Distante :) :)


Te mando un abrazo!!!


PD: Sería bueno poder descubrir porque el navegador Firefox me muestra otro hash distinto que es válido también :o
Usuario: Papá distante
Rango: Moderador Global
Mensajes: 3504
Points: 168
Perfil: View Profile
Pais:
de
Re:¿Cómo encripta las contraseñas SMF?
Reply #3 March 04, 2016 - 05:44 05:44
Ni idea por qué Firefox muestra otra cosa, hace mucho que no uso Firefox!

salud! (hic) os
Usuario: Príncipe_Azul
Rango: Nuevo Usuario
Mensajes: 294
Points: 12
Perfil: View Profile
Pais:
ar
Re:¿Cómo encripta las contraseñas SMF?
Reply #4 March 04, 2016 - 06:03 18:03
Si no me equivoco, creo que es por esto:

Content-Type: application/x-www-form-urlencoded

parece que ese header es el que codifica la clave.


Saludos amigo!! :)
 

TAGS



top

Smfsimple.com es un sitio destinado a brindar un servicio de soporte y herramientas para foros realizados con el sistema de foros gratuito simplemachines.org. Contamos con un selecto equipo de desarrolladores y conocedores del sistema, sus foros estaran en buenas manos.
This site is not affiliated with or endorsed by Simple Machines