Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Internet
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #21  
Antiguo 03-12-2006
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Poder: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
A ver, aquí estamos bajo el supuesto de que alguien se pone a escuhar la comunicación entre nuestra pc y el servidor, de lo contrario no hay de qué preocuparse.

Vamosa ver, tú le solicitas al servidor un número aleatorio y él te lo manda:

id = 2738582

Este número podria de todas formas verlo quien esté escuchando.

Tu mandas al servidor:

md5(2738582 + pepeloco)

donde pepeloco es tu contraseña. Muy bien, yo intercepto esto y lo mando por mi cuenta. El servidor lo recibe igual que recibiría el tuyo. No veo ventaja. Claro, eso sólo servirá el número de peticiones estipuladas. Bueno, cuando se regenere el número aleatorio, lo vuelvo a escuchar, vamos yo sigo escuchando ¿no?, y lo cambio y se lo mando al servidor. ¿Dónde está la ventaja?

// Saludos
Responder Con Cita
  #22  
Antiguo 03-12-2006
Avatar de mamcx
mamcx mamcx is offline
Moderador
 
Registrado: sep 2004
Ubicación: Medellín - Colombia
Posts: 3.918
Poder: 25
mamcx Tiene un aura espectacularmamcx Tiene un aura espectacularmamcx Tiene un aura espectacular
Ok, algunas cosas:

- Es cierto que al trabajar una pagina web por http es igual de inseguro y se estan enviando los datos de claves en plano.

Diantre, no habia caido en eso. Es por eso que es muy comun que la pagina de login y perfil de usuario sea por https y el resto por http. Un punto que debo analizar ahora para mi propia portal!

Por otro lado, desde un punto de vista estricto, es lo mismo pasar una sola clave o un conjunto de parametros de autenticacion o lo que sea. Una vez se lee, se usa la misma clave y ya.

El punto es que clave/id no es un atributo de SEGURIDAD. Es un atributo de AUTENTICACION. Para que sea algo *realmente* seguro debe haber un mecanismo de comunicacion seguro y un mecanismo de autenticacion verificable.

Porque API-key VS Usuario-Contraseña?

- Porque es indespensable que el usuario AUTORIZE el uso del mecanismo automatizado. Por ejemplo, magnolia o yahoo demandan la solicitud del API key, lo que equivale a firmar un documento autorizando el uso de mecanismos robotizados para manipular los comandos.

- Por Usuario/Clave = 1 Sola cadena para efectos practicos. De hecho, una cadena muy larga puede ser mas segura que 2 muy cortas.

Ademas, aunque la clave pase con MD5 igual la *mitad* de la clave ya se sabe, y esta se puede interelacionar con otras cosas. Al igual que muchos, yo siempre uso mamcx en mis registros asi que tengo un sistema 1/2 de seguro que lo que podria ser...

- Otro beneficio algo dudoso es que es mala idea guardar claves y nombres de usuario en texto plano en el codigo fuente, sobre todo en lenguajes como PHP que demandan el despliegue de codigo.

Bueno, como dije, quizas me estoy pasando de neurotico.

- Porque si todos los demas usan API-Key, porque no estar a la moda

Me preocupa eso si lo de MD5 doble. Estas haciendole MD5 asi:

"holamundo".MD5().MD5() ????

Porque si eso es verdad, has minado la seguridad de tu clave y haz reducido la efectividad de la misma. Contrario a lo que uno intuitivamente cree, aplicar multiples encriptaciones a un dato disminuye y no aumenta su seguridad.

Como generar el API-Key? Simplemente un dato autogenerado que sea un poco largo y que carezca de sentido, busca como generar info aleatoria (o puedes reusar por ejemplo la generacion de GUID)
__________________
El malabarista.
Responder Con Cita
  #23  
Antiguo 03-12-2006
Avatar de dec
dec dec is offline
Moderador
 
Registrado: dic 2004
Ubicación: Alcobendas, Madrid, España
Posts: 13.114
Poder: 34
dec Tiene un aura espectaculardec Tiene un aura espectacular
Hola,

Cita:
Empezado por Mario
El punto es que clave/id no es un atributo de SEGURIDAD. Es un atributo de AUTENTICACION. Para que sea algo *realmente* seguro debe haber un mecanismo de comunicacion seguro y un mecanismo de autenticacion verificable.
Ahí le has dado. Eso es así.

Cita:
Empezado por Mario
Me preocupa eso si lo de MD5 doble.
Bueno. Olvídate de todo lo que se ha hablado de MD5 en este Hilo. En realidad el "doble MD5" viene de cómo se guardan las contraseñas de los usuarios en la base de datos de la aplicación. Es decir, en los correspondientes campos no se guarda la contraseña en claro, sino su "doble MD5".

De este modo ni siquiera nosotros conocemos las contraseñas de los usuarios. El usuario entrega su contraseña a la aplicación, y esta comprueba su "doble MD5" con que el hay guardado en la base de datos. Entendí que era mejor un "doble MD5", aunque, puesto que Loturak es una aplicación de código abierto... esta información es perfectamente conocible.

Sólo sé que no sé nada
__________________
David Esperalta
www.decsoftutils.com
Responder Con Cita
  #24  
Antiguo 03-12-2006
Avatar de seoane
[seoane] seoane is offline
Miembro Premium
 
Registrado: feb 2004
Ubicación: A Coruña, España
Posts: 3.717
Poder: 24
seoane Va por buen camino
Cita:
Empezado por roman
Muy bien, yo intercepto esto y lo mando por mi cuenta. El servidor lo recibe igual que recibiría el tuyo. No veo ventaja. Claro, eso sólo servirá el número de peticiones estipuladas. Bueno, cuando se regenere el número aleatorio, lo vuelvo a escuchar, vamos yo sigo escuchando ¿no?, y lo cambio y se lo mando al servidor. ¿Dónde está la ventaja?
No es lo mismo "escuchar" que interponerse entre el servidor y el cliente. Tu estas suponiendo que el posible atacante tiene control total sobre la comunicación y puede mandar tanto al cliente como al servidor lo que el quiera e impedir que lleguen los mensajes de uno a otro. En ese caso, la cosa esta difícil y este método no supone ninguna ventaja. Pero en el caso de que solo pueda "escuchar" como es el caso de un sniffer, la cosa cambia. Pongamos que el numero solo es valido para una petición, el cliente pide el numero, cifra la contraseña, y envía la segunda petición con la contraseña cifrada, en ese momento esa contraseña deja de ser valida. Si alguien estuviera curioseando, solo podría obtener la contraseña cifrada, una contraseña que ya no seria valida para usarla una segunda vez.

Cita:
Empezado por mamcx
Me preocupa eso si lo de MD5 doble. Estas haciendole MD5 asi:

"holamundo".MD5().MD5() ????

Porque si eso es verdad, has minado la seguridad de tu clave y haz reducido la efectividad de la misma. Contrario a lo que uno intuitivamente cree, aplicar multiples encriptaciones a un dato disminuye y no aumenta su seguridad.
¿Por que? Si bien eso es muy cierto para algoritmos de encritptacion que utilizan clave, no creo que sea aplicable a algoritmos de hash. Aunque corrígeme si me equivoco.

En cuanto a lo de usar claves o apikeys, no dudo del beneficio de usar apikey. Pero el nombre de usuario y contraseña sigue siendo necesario para realizar tareas con los enlaces privados. Yo lo veo así, usar un apikey en todas las funciones, de esta manera se puede llevar un control, aunque no sea muy exacto, de quien y como utiliza nuestro servicio. Y cuando se necesite realizar alguna acción que necesite autenticación pedirle al usuario que ingrese su nombre y contraseña. Solo la apikey estaría insertada en el código fuente, la contraseña la tendría que insertar el usuario.
Responder Con Cita
  #25  
Antiguo 03-12-2006
Avatar de dec
dec dec is offline
Moderador
 
Registrado: dic 2004
Ubicación: Alcobendas, Madrid, España
Posts: 13.114
Poder: 34
dec Tiene un aura espectaculardec Tiene un aura espectacular
Hola,

API-KEY, API-KEY, sentadita me quedé...

Cita:
Empezado por Seoane
(...) Yo lo veo así, usar un apikey en todas las funciones, de esta manera se puede llevar un control, aunque no sea muy exacto, de quien y como utiliza nuestro servicio.
Es correcto Domingo. Por cierto, ¿qué te pareció el ejemplo "EnlacesUsuario"? ¿Chulo a que sí? ¿eh?

Ahora la piedra queda en el tejado de implementar lo dicho. Cómo proporcionar (¿a quien lo solicite?) una clave para usar el API. Cómo conformar dicha clave (creo que esto sería lo de menos, pero, nada está libre de posibles problemas). Cómo implementar esto en Loturak... un nuevo formulario... un nuevo apartado... utilizar una nueva tabla en la base de datos... va a ver que coger el toro por los cuernos.

Maldita sea... hoy estoy bicho, bicho, bicho.
__________________
David Esperalta
www.decsoftutils.com

Última edición por dec fecha: 03-12-2006 a las 22:31:10.
Responder Con Cita
  #26  
Antiguo 03-12-2006
Avatar de mamcx
mamcx mamcx is offline
Moderador
 
Registrado: sep 2004
Ubicación: Medellín - Colombia
Posts: 3.918
Poder: 25
mamcx Tiene un aura espectacularmamcx Tiene un aura espectacularmamcx Tiene un aura espectacular
Cita:
Empezado por seoane
¿Por que? Si bien eso es muy cierto para algoritmos de encritptacion que utilizan clave, no creo que sea aplicable a algoritmos de hash. Aunque corrígeme si me equivoco.
mmm... no tengo la razon especifica en este momento y fue algo que aprendi en un foro de Borland de uno de los 2 tipos que hacen herramientas de seguridad para Delphi... y como muchas cosas me gravo el "no es bueno hacer x" y se me borrar los 5 o 6 post donde se explica porque

Algo tiene que ver con el proposito de un hash: Una funcion en un solo sentido que no sea reversable... y que la manera correcta que he leido es usar un "salt" para variar la cosa....
__________________
El malabarista.
Responder Con Cita
  #27  
Antiguo 03-12-2006
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Poder: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
Creo que ya voy entendiendo seoane. Visto así parece bastante sólido. Me queda ahora la duda de entonces ¿para qué el https?

// Saludos
Responder Con Cita
  #28  
Antiguo 03-12-2006
Avatar de seoane
[seoane] seoane is offline
Miembro Premium
 
Registrado: feb 2004
Ubicación: A Coruña, España
Posts: 3.717
Poder: 24
seoane Va por buen camino
Cita:
Empezado por roman
Creo que ya voy entendiendo seoane. Visto así parece bastante sólido. Me queda ahora la duda de entonces ¿para qué el https?

// Saludos
El https es necesario para que todo se comunique encriptado, si bien un método con el que comento nos "asegura" la autenticación, todos los demás datos se transmiten en claro. Volviendo al caso de messenger, cualquiera con un sniffer y el programa adecuado puede leer una conversación de messenger, dentro una red local se entiende, entonces ¿por que proteger tanto la contraseña?, porque mientras que te espíen una conversación puede ser grave, que suplanten tu identidad puede ser mucho peor.

En definitiva https es la mejor solución, la información viaja encriptada a través de la red, atravesando incluso los proxys. Aunque no se la dificultad que supondrá desde el lado del servidor implementar esto, desde el lado del cliente solo supone cambiar un par de parámetros.
Responder Con Cita
  #29  
Antiguo 09-12-2006
Avatar de dec
dec dec is offline
Moderador
 
Registrado: dic 2004
Ubicación: Alcobendas, Madrid, España
Posts: 13.114
Poder: 34
dec Tiene un aura espectaculardec Tiene un aura espectacular
Hola,

Nota del traductor: este Hilo no ha muerto, sólo está en hibernación, al cuidado de HAL, así que no hay problema.
__________________
David Esperalta
www.decsoftutils.com
Responder Con Cita
  #30  
Antiguo 09-12-2006
Avatar de seoane
[seoane] seoane is offline
Miembro Premium
 
Registrado: feb 2004
Ubicación: A Coruña, España
Posts: 3.717
Poder: 24
seoane Va por buen camino
Cita:
Empezado por dec
Nota del traductor: este Hilo no ha muerto
Espero que no. Ya me parece que el hilo de Al sobre automatización web esta en cuidados intensivos , solo faltaba que se me muriera este también.

Por cierto, estaba trasteando con loturak y me devuelve el siguiente error:
Cita:
Empezado por loturak
Error: El API de Loturak funciona por el momento sólo en local. Disculpa las molestias, por favor
¿Esta situación es temporal? o va a tardar un tiempo en volver a estar disponible.
Responder Con Cita
  #31  
Antiguo 09-12-2006
Avatar de dec
dec dec is offline
Moderador
 
Registrado: dic 2004
Ubicación: Alcobendas, Madrid, España
Posts: 13.114
Poder: 34
dec Tiene un aura espectaculardec Tiene un aura espectacular
Hola,

Efectivamente... es una situación "temporal", pero si tiempo fijo... es una huida hacia adelante. Es la forma de no decir "hasta que el tema de las API-KEYs famosas no esté resuelto el API de Loturak no será sino una quimera, una ilusión, de qué me suena a mí esto.

Efectivamente, puedes hacer pruebas "en local", es decir, si instalas Loturak en tu sistema podrías utilizar el API sin ese inconveniente, al menos. Este parón respecto al tema del API vino por el "Cross Site Scripting" que ya recordarás Domingo.

Desde entonces paramos en seco hasta poderlo soluccionar... creemos, en principio, lo que nos llevó un par de días. A continuación hemos estado solucionando errores y "bugs" de los que no puedes creerte, porque pasaste por allí unas cuantas veces sin verlos...

También en estos días hemos hecho algunas cosas más que solucionar errores. Por ejemplo ayer nos metimos a personalizar el reproductor MP3 que usamos en Loturak... recordarás el tango... lo que hemos podido hacer porque el original es gratuito y de código abierto.

Qué más cosas... qué más cosas... sí. Hemos hecho algunos cambios internos en la clase Usuario, que nos han ahorrado al menos dos consultas a la base de datos (Román, si lees esto, ahora mismo se hacen 8 consultas para construir las páginas que listan enlaces en Loturak. Además varias de ellas son consultas "de un dato", es decir, no demasiado pesadas, no sé cómo lo verás, pero, como ves, seguimos preocupándonos de esto.).

También construimos una clase "Enlace", que nos sirve también a modo de "plantilla", de modo que cuando antes utilizábamos métodos que requerían pasar como parámetro los datos de un enlace, digo, donde antes usábamos "Arrays asociativos" hoy usamos una clase, una plantilla, para todos los métodos. Con esto, además de dejar el asunto más claro (sabe uno a qué referirse cuando tiene que entregar los datos de un enlace), hemos conseguido reutilizar en varios sitios un sólo método: por ejemplo para insertar enlaces, actualizarlos, se utilizan sendos métodos de la clase BDatos... sea desde donde sea que lo hagamos.

Pero,... no quiero aburrir a nadie... ¡y bastante he hablado ya como para aburrir a cien mil! Conste que el tema del API está suspendido, por el momento, pero, que no hemos estado parados ni el día de nuestro cumpleaños.
__________________
David Esperalta
www.decsoftutils.com
Responder Con Cita
  #32  
Antiguo 09-12-2006
Avatar de seoane
[seoane] seoane is offline
Miembro Premium
 
Registrado: feb 2004
Ubicación: A Coruña, España
Posts: 3.717
Poder: 24
seoane Va por buen camino
Que pena, estaba empezando a dar forma a una idea para "aprovecharme" de loturak. Usar la descripción del enlace para almacenar contraseñas cifradas, el programa se encargaría de manejar la lista de contraseñas utilizando los procedimientos InsertarEnlace, ActualizarEnlace y EnlacesUsuario ...

Bueno, habrá que dejarlo por ahora. Por cierto, cual es el limite de enlaces y el tamaño máximo de la descripción. Porque podríamos hacer un "loturak Drive" al mas puro estilo "GMail Drive" ... Es broma, no te asustes.
Responder Con Cita
  #33  
Antiguo 09-12-2006
Avatar de dec
dec dec is offline
Moderador
 
Registrado: dic 2004
Ubicación: Alcobendas, Madrid, España
Posts: 13.114
Poder: 34
dec Tiene un aura espectaculardec Tiene un aura espectacular
Hola,

Cita:
Empezado por Seoane
Que pena, estaba empezando a dar forma a una idea para "aprovecharme" de loturak. Usar la descripción del enlace para almacenar contraseñas cifradas, el programa se encargaría de manejar la lista de contraseñas utilizando los procedimientos InsertarEnlace, ActualizarEnlace y EnlacesUsuario ...
Es curioso que digas algo así, porque, últimamente lleva tiempo rondándome la cabeza una aplicación Web que sería una especie de "Gestor de contraseñas", a modo de los que existen para el "escritorio" pero en Web.

Pero es algo que no ha pasado de ser una obsesión... o ni ha llegado todavía a eso.

Cita:
Empezado por Seoane
Bueno, habrá que dejarlo por ahora. Por cierto, cual es el limite de enlaces y el tamaño máximo de la descripción. Porque podríamos hacer un "loturak Drive" al mas puro estilo "GMail Drive" ... Es broma, no te asustes.
Uf, uf, uf... Na... te "banearía" el primer día.
__________________
David Esperalta
www.decsoftutils.com
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
A ver si me queréis dar vuestra opinión dec La Taberna 12 02-08-2006 17:05:43
¿Quisiera saber vuesta opinión sobre como realizar una aplicación ...? Jose Manuel Varios 3 25-05-2006 20:45:16
Opinion Aplicacion Multinivel Jvilomar Varios 1 25-10-2004 14:20:24


La franja horaria es GMT +2. Ahora son las 03:23:57.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi