elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Trabajando con las ramas de git (tercera parte)


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  .NET (C#, VB.NET, ASP) (Moderador: kub0x)
| | | |-+  Sistema de login muy seguro
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] 2 3 Ir Abajo Respuesta Imprimir
Autor Tema: Sistema de login muy seguro  (Leído 15,070 veces)
TomaSs

Desconectado Desconectado

Mensajes: 101



Ver Perfil
Sistema de login muy seguro
« en: 24 Septiembre 2013, 21:49 pm »

Hola gente.

Sabrían decirme los métodos que podría utilizar para hacer un login altamente seguro?
La cuestión sería que se envíen los datos de logeo a una base de datos remota y que esta devuelva si son correctos o no.
No pido como hacer la petición remota ni nada de eso, sino como debería cifrar la respuesta y comprobarla posteriormente (no con un simple if) de tal manera que no sea fácil de crakear.

Y ya aprovecho también, para preguntar sobre que "identificador" o algún número de serie o algo que me permita identificar un ordenador para así hacer que mi programa únicamente funcione en un pc concreto.
De esta manera podría basar también la respuesta de la base de datos en base a ese identificador también, para así cerciorarme de que se ejecuta únicamente en ese pc, y así hacer más difícil aún el crakeado.

A ver si me podéis orientar un poco algunos que hayáis tenido que usar algo de esto.
Muchas gracias! ;)


En línea

Keyen Night


Desconectado Desconectado

Mensajes: 496


Nothing


Ver Perfil
Re: Sistema de login muy seguro
« Respuesta #1 en: 7 Octubre 2013, 01:06 am »

La arquitectura común para un login, es Cliente <-> Servidor/Servicio <-> Base De Datos, de manera que la comprobación de las credenciales no se realice desde el lado del cliente.

Para generar una comunicación segura se debe establecer un canal cifrado, hay mucha documentación, pero es un tema largo.

En el caso de los identificadores, estos deben generarse desde el lado del cliente, así que se puede realizar un parche para modificar al antojo el identificador, lo más sencillo es tener una base de datos de usuarios, para que estos deben autenticarse ante el servicio y así poder tomar decisiones según sea el caso.


En línea

La Fé Mueve Montañas...
                                    ...De Dinero

La programación es más que un trabajo es más que un hobby es una pasión...
TomaSs

Desconectado Desconectado

Mensajes: 101



Ver Perfil
Re: Sistema de login muy seguro
« Respuesta #2 en: 10 Octubre 2013, 21:59 pm »

Claro que la comprobación de credenciales la haces en el lado del servidor, pero luego le tendrás que responder al cliente con algo, no? con una aceptación o con algo, y eso es lo que digo que pueden crackear, esa respuesta xd
En línea

BlackM4ster


Desconectado Desconectado

Mensajes: 499


Error, el teclado no funciona. Pulse F1 para continuar


Ver Perfil WWW
Re: Sistema de login muy seguro
« Respuesta #3 en: 11 Octubre 2013, 08:43 am »

Todo se puede crackear, luego consiste en como quieras hacer la comparación. Modificar un if, es facil, pero todas las formas de la que lo puedas encubrir, tambien se pueden crackear xD

He visto algunos crackmes que tienen una funcion modificada una vez compilado, que comprueba el valor en hex de la parte que tiene la comparación y si detecta algo raro, se cierra. Es una idea, pero tambien es crackeable
En línea

- Pásate por mi web -
https://codeisc.com
Fakedo0r

Desconectado Desconectado

Mensajes: 21


Fuera de compás, en una de las 12 dimensiones...


Ver Perfil WWW
Re: Sistema de login muy seguro
« Respuesta #4 en: 11 Octubre 2013, 13:21 pm »

Separa la parte de autentificación que llegaría a ser una especie de loader de tu aplicación. Cifra tu aplicación entera. Entonces desde el loader se ingresarían las credenciales (usuario / contraseña + algún Hardware ID única), esto haría una petición al Servidor, en el servidor se validarían las credenciales y según eso, te devolvería la contraseña para descifrar tu aplicación o de lo contrario un código erróneo. Te aconsejo, que el loader hicieras en algún lenguaje nativo como c++ o object pascal, ya que el .NET es de-compilable y no necesitamos dar mas información de lo que ya dispone el cracker.
Esto no es un método 100% efectivo pero es una buena solución.

Saludos.
En línea

Shout

Desconectado Desconectado

Mensajes: 191


Acid


Ver Perfil
Re: Sistema de login muy seguro
« Respuesta #5 en: 16 Octubre 2013, 13:59 pm »

Pues yo tengo una solución verdaderamente segura, con la que es 99.9% imposible crackear tu aplicación.

Primero: encriptas el .exe compilado de tu programa con algún cifrado con contraseña (tipo AES, así, el archivo varía según la contraseña, por lo tanto, es imposible recuperar el archivo original sin esa contraseña)

Luego, creas un "loader" que se encargará de enviar el Hardware ID (HWID) al servidor.
En el servidor, compruebas que el HWID esté en la base de datos. Si lo está, envías la contraseña al cliente para que desencripte el programa original y se pueda ejecutar. Si no es un HWID que esté en tu base de datos de HWIDs válidos, envías una contraseña aleatoria y el archivo no podrá ser descifrado.

Esto es imposible de crackear (eso sí, si la contraseña es 12345, no esperes que dure mucho). Si pones una contraseña larga y jodida, nadie podrá jamás ejecutar ese código, ya que, para bruteforcear eso, necesitas muchísimos años de crackeo.
En línea

I'll bring you death and pestilence, I'll bring you down on my own
Mad Antrax
Colaborador
***
Desconectado Desconectado

Mensajes: 2.166


Cheats y Trainers para todos!


Ver Perfil WWW
Re: Sistema de login muy seguro
« Respuesta #6 en: 16 Octubre 2013, 14:13 pm »

Pues yo tengo una solución verdaderamente segura, con la que es 99.9% imposible crackear tu aplicación.

Primero: encriptas el .exe compilado de tu programa con algún cifrado con contraseña (tipo AES, así, el archivo varía según la contraseña, por lo tanto, es imposible recuperar el archivo original sin esa contraseña)

Luego, creas un "loader" que se encargará de enviar el Hardware ID (HWID) al servidor.
En el servidor, compruebas que el HWID esté en la base de datos. Si lo está, envías la contraseña al cliente para que desencripte el programa original y se pueda ejecutar. Si no es un HWID que esté en tu base de datos de HWIDs válidos, envías una contraseña aleatoria y el archivo no podrá ser descifrado.

Esto es imposible de crackear (eso sí, si la contraseña es 12345, no esperes que dure mucho). Si pones una contraseña larga y jodida, nadie podrá jamás ejecutar ese código, ya que, para bruteforcear eso, necesitas muchísimos años de crackeo.

Ese sistema es bastante seguro, un servidor de licencias :)

Pero se puede "alterar" de varias formas dependiendo el modo en que implementes la protección. Por ejemplo un cliente que ya haga la validación HWID y tenga la aplicación descifrada, podrá volcar-lo en un nuevo fichero y distribuir la copia por la red (por ejemplo).

Per es cierto que un license-server es bastante seguro :)
En línea

No hago hacks/cheats para juegos Online.
Tampoco ayudo a nadie a realizar hacks/cheats para juegos Online.
BlackM4ster


Desconectado Desconectado

Mensajes: 499


Error, el teclado no funciona. Pulse F1 para continuar


Ver Perfil WWW
Re: Sistema de login muy seguro
« Respuesta #7 en: 17 Octubre 2013, 08:24 am »

Pues yo tengo una solución verdaderamente segura, con la que es 99.9% imposible crackear tu aplicación.

Primero: encriptas el .exe compilado de tu programa con algún cifrado con contraseña (tipo AES, así, el archivo varía según la contraseña, por lo tanto, es imposible recuperar el archivo original sin esa contraseña)

Luego, creas un "loader" que se encargará de enviar el Hardware ID (HWID) al servidor.
En el servidor, compruebas que el HWID esté en la base de datos. Si lo está, envías la contraseña al cliente para que desencripte el programa original y se pueda ejecutar. Si no es un HWID que esté en tu base de datos de HWIDs válidos, envías una contraseña aleatoria y el archivo no podrá ser descifrado.

Esto es imposible de crackear (eso sí, si la contraseña es 12345, no esperes que dure mucho). Si pones una contraseña larga y jodida, nadie podrá jamás ejecutar ese código, ya que, para bruteforcear eso, necesitas muchísimos años de crackeo.

Buena idea xD  ;-) ;-) ;-)
En línea

- Pásate por mi web -
https://codeisc.com
Shout

Desconectado Desconectado

Mensajes: 191


Acid


Ver Perfil
Re: Sistema de login muy seguro
« Respuesta #8 en: 17 Octubre 2013, 14:16 pm »

Ese sistema es bastante seguro, un servidor de licencias :)

Pero se puede "alterar" de varias formas dependiendo el modo en que implementes la protección. Por ejemplo un cliente que ya haga la validación HWID y tenga la aplicación descifrada, podrá volcar-lo en un nuevo fichero y distribuir la copia por la red (por ejemplo).

Per es cierto que un license-server es bastante seguro :)
A ver, se trata de que el archivo esté cifrado y que el servidor te dé la contraseña.
Porque como esté limpio dentro del ejecutable, se puede extraer de muchas formas.
Buena idea xD  ;-) ;-) ;-)
Gracias ;-)
En línea

I'll bring you death and pestilence, I'll bring you down on my own
Mad Antrax
Colaborador
***
Desconectado Desconectado

Mensajes: 2.166


Cheats y Trainers para todos!


Ver Perfil WWW
Re: Sistema de login muy seguro
« Respuesta #9 en: 17 Octubre 2013, 14:31 pm »

No me he explicado bien.

Tu sistema es bueno, pero también se puede "crackear" a parte que su implantación tiene un coste de gestión elevadísimo si lo extrapolamos a gran escala (Necesitas tener la capacidad de generar una copia única cifrada para cada cliente, así como su HWID y su contraseña. Cada actualización que realices supone modificar el 100% de las licencias distribuidas a clientes, etc...). Por no hablar que limitas el uso de la aplicación a clientes con Internet permanente.

En cuanto un cliente legítimo realice la validación, el server envía la contraseña y se des-cifra el ejecutable, no? En ese momento el cliente puede dumpear el ejecutable des-cifrado y almacenar una copia del software sin "protección", pudiendo distribuirla por la red libremente.
En línea

No hago hacks/cheats para juegos Online.
Tampoco ayudo a nadie a realizar hacks/cheats para juegos Online.
Páginas: [1] 2 3 Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Sistema de login.
PHP
lnvisible 4 2,997 Último mensaje 1 Diciembre 2011, 04:33 am
por #!drvy
¿Qué tan seguro es este login que he planteado en un sitio web en ASP.Net?
Desarrollo Web
TwisteD420 4 4,894 Último mensaje 4 Abril 2012, 02:42 am
por TwisteD420
Sistema de Login Seguro
PHP
GameAndWatch 6 9,223 Último mensaje 23 Junio 2012, 17:02 pm
por marko1985
Login seguro para desarrollo web
Seguridad
vctr89 0 2,798 Último mensaje 16 Agosto 2013, 18:29 pm
por vctr89
Sistema de login muy seguro
Ingeniería Inversa
TomaSs 2 3,078 Último mensaje 26 Septiembre 2013, 19:09 pm
por TomaSs
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines