Impedir que mi sitio sea detectado y modificado por los ataques del hombre en el medio

1

Quiero proteger el sitio que se usa localmente para los Servicios de prepago, el sitio ha sido pirateado muchas veces, para el primer paso, implementé SSL y ahora funciona bien, sin embargo, quiero estar seguro de que el atacante no puede obtener datos de usuarios en tránsito porque muchos usuarios se conectan al sitio desde restaurantes o lugares públicos.

Un escenario: el uso del atacante BackTrack puede redirigir todo el tráfico HTTP a una única IP y mostrar una página falsa al usuario. Sabía que el navegador muestra un error de SSL. La mejor manera de prevenir este ataque es educar al usuario. Sin embargo, quiero asegurar que no hay otra forma en que el atacante pueda atacar el sitio más.

Actualización: también planeé implementar la verificación de PIN (envío aleatorio de PIN por SMS para verificación adicional)

    
pregunta Akam 17.07.2013 - 02:44
fuente

2 respuestas

3

SSL / TLS solo protege contra el ingreso de datos, su implementación no cambiará la capacidad del atacante para atacar directamente el sitio. TLS protegerá contra que un atacante pueda ver los datos (confidencialidad) y modificar los datos (integridad). Sin embargo, como ha descubierto, es posible que un atacante active MITM y presente un certificado no válido al usuario final, y si el usuario final lo acepta, todas las apuestas están desactivadas. HTTP Strict Transport Security (HSTS) puede ayudar a prevenir esto al exigir que todas las visitas futuras pasen por HTTPS, y puede (depende de el navegador) cambia el comportamiento del navegador cuando recibe un certificado no válido. Chrome, por ejemplo, no presentará un botón "continuar de todos modos" para un error de certificado contra un sitio HSTS.

Todo lo que se dice, los ataques activos contra SSL / TLS son relativamente raros (lo siento, no hay números que lo respalden) y son difíciles de realizar en grandes escalas (ya que generalmente están cerca del usuario final, por lo que solo obtener un pequeño número de usuarios). Es mucho más probable que el phishing, las sentadillas tipográficas u otros mecanismos similares le causen problemas.

Si desea que la captura de la contraseña (ya sea a través de la eliminación o intercepción SSL / TLS, phishing u otro) sea menos valiosa, implemente una autenticación fuerte de dos factores, como HOTP o TOTP .

    
respondido por el David 17.07.2013 - 04:18
fuente
3

SSL hace lo que buscas. protegerá las conexiones contra ataques pasivos y activos, siempre que el usuario no haga clic en las advertencias del navegador. Si el usuario no presta atención a tales advertencias, está condenado, independientemente de lo que usted haga. Si el usuario se conecta sin aviso, SSL protegerá los datos en tránsito. Además, no hay nada más que puedas hacer: si SSL no te protege, entonces cualquier cosa que envíes al usuario (por ejemplo, el código de Javascript) podría ser alterada por el atacante; Así que eso es SSL, o nada va a hacer. Afortunadamente, SSL es lo suficientemente robusto.

Tenga en cuenta, sin embargo, que la mayoría de los ataques no se trata de SSL, sino de explotar agujeros en la implementación de su sitio. No hay necesidad de intentar descifrar SSL por adelantado si un simple ataque de inyección SQL puede revelar un volcado completo de la base de datos de su sitio.

    
respondido por el Thomas Pornin 17.07.2013 - 04:20
fuente

Lea otras preguntas en las etiquetas