¿SSL realmente importa para la mayoría de los sitios web?

11

He sido bastante paranoico sobre aprender a "hacer la seguridad correctamente" para este sitio que estoy construyendo (primer sitio no trivial que hice), y he notado algo que me molesta: SSL.

He leído muchos subprocesos de seguridad aquí, en StackOverflow y en otros lugares que tratan extensamente sobre la regeneración de identificadores de sesión después de n usos, y cómo sus contraseñas deben ser saladas, procesadas y nunca almacenadas en texto sin formato. He leído mucho sobre cómo detectar cuándo se ha secuestrado una sesión, rastreando direcciones IP, agentes de usuario y usando cookies de rastreo.

Lo que no entiendo es lo que importa cuando el sitio web lo conecta a través de una POST HTTP normal y envía su contraseña por cable en texto sin formato.

Entiendo que todos los otros métodos que enumeré son necesarios para reducir su exposición general, y tal vez hay algunos sitios que simplemente no necesitan tanta seguridad de todos modos, pero supongo que lo que estoy preguntando es:

  • ¿Cuándo está bien no molestarse con SSL?

En sitios como Gmail, su banco y LinkedIn, puedo ver que tengo una razón para usar SSL, pero lo que hace que esté bien que sitios como Facebook y Reddit no molesten (diablos, PlentyOfFish incluso almacena su contraseña en texto plano e incluso la envía por correo electrónico). a usted semanalmente como recordatorio!?!)

¿Qué tan preocupado debería estar por asegurarme de que SSL esté configurado (especialmente porque estaría comenzando con un host compartido y estoy siendo bastante barato para comenzar)? Mi sitio no contendrá ninguna información particularmente personal, si eso ayuda. Si el sitio se convierte en un éxito, consideraría seriamente pagar el extra por la seguridad adicional.

AgenteConundrum
fuente

Respuestas:

7

Importa tanto como usted y sus usuarios piensan que es importante. El envío de contraseñas a través de http como texto sin formato las hace vulnerables a la detección de paquetes. Ahora, si alguien se molestará en oler esos paquetes es otra historia. Si desea garantizar a sus usuarios la experiencia más segura posible, use SSL para sus envíos de inicio de sesión. Si cree que sus usuarios estarán más felices y más propensos a interactuar con su sitio web de una manera positiva (es decir, comprar cosas, hacer cosas, etc.), entonces use SSL para sus presentaciones de inicio de sesión. Si tiene algo que valga la pena robar (es decir, información del usuario), use SSL.

Si no tiene nada que valga la pena robar, no piense que SSL mejorará la seguridad mucho o nada, o sus usuarios no lo verán como una característica útil, entonces puede considerar no usar SSL.

Por lo que cuesta instalar un certificado SSL, a menos que tenga un presupuesto reducido, nunca es malo asegurar el inicio de sesión de un sitio. Y no deje que lo que otros sitios están haciendo influya en usted, ya que muchos sitios más grandes no necesariamente tienen que seguir las mejores prácticas, por lo que aparentemente hay un flujo constante de noticias sobre una persona comprometida de alguna manera.

John Conde
fuente
1
+1 "muchos sitios más grandes no necesariamente siguen las mejores prácticas" - Estoy seguro de que habrá algunos titulares irrisorios cuando los 419'ers de Nigeria encuentren una manera de monetizar los perfiles de sitios de citas robados :)
danlefree
"a menos que tenga un presupuesto muy reducido", pero yo sí. Realmente, realmente lo estoy, hasta el punto de que estoy considerando ir m + m en un host compartido barato en lugar de pagar considerablemente menos por mes para pagar por un año por adelantado. De esta manera, puedo desconectar si el sitio no comienza a pagarse por sí mismo relativamente rápido. Creo que por ahora me estoy inclinando hacia no-ssl ya que solo obtener la IP estática necesaria solo casi duplicaría mi costo mensual, sin mencionar el costo del certificado en sí. El sitio está bastante cerca de ser un foro, y la mayoría de los datos son públicos, por lo que no hay necesidad de cifrado fuera del inicio de sesión.
AgentConundrum
@danlefree, eso es fácil. Utilice los datos personales en los sitios de citas para responder las preguntas de recuperación de contraseña para el correo electrónico y el sitio bancario de los usuarios. O simplemente capture la contraseña, ya que las personas reutilizan sus contraseñas, demasiado.
Zoredache
@AgentConundrum Startssl ofrece un certificado SSL gratis. Si tiene un presupuesto ajustado pero tiene una IP estática, puede hacerlo.
Rana Prathap
@AgentConundrum ya no necesita una IP dedicada para SSL, siempre que su host sea compatible con SNI (y si no lo hacen, busque un nuevo host porque no saben lo que están haciendo). Puede obtener un certificado de forma gratuita, así que tampoco es un costo adicional ...
Doktor J
3

Tomando el enfoque opuesto a la respuesta de John, creo que debería considerar seriamente SSL si maneja cualquier información de identificación personal, que incluya: nombres con direcciones físicas, direcciones de correo electrónico, información financiera y comunicaciones que los usuarios razonablemente esperarían que sean privadas. .

A menos que su sitio proporcione un medio para que los usuarios publiquen información sobre sí mismos, debe considerar que cualquier información de identificación personal provista por sus usuarios será mantenida por usted y solo bajo estricta confidencialidad, a menos que la política de privacidad de su sitio informe a sus usuarios de otra manera.

Evite que terceros no autorizados vean la información de sus visitantes y mantenga a sus usuarios informados sobre cómo utiliza su información para mantener la confianza de sus visitantes.

Incluso Facebook hace esto, por lo que puedo decir.

<form method="POST" action="https://login.facebook.com/login.php?login_attempt=1" id="login_form" onsubmit=";var d=document.documentElement;if (d.onsubmit) { return d.onsubmit(event); }else { return Event.fire(d, &quot;submit&quot;, event); }">

(Fuente HTML de inicio de sesión de Facebook.com)

danlefree
fuente
Impar. No sé cómo no me di cuenta de eso en Facebook. Lo estaba mirando desde HTTPFox y de alguna manera me perdí la 's' en la solicitud inicial. Lo editaré para eliminar eso. El hecho sigue siendo que muchos sitios hacen esto (reddit, noticias de hackers, TDWTF, etc.), por lo que en el peor de los casos no sería mejor que ellos. El presupuesto es una gran preocupación mía, así que gastar $ 5 / mes adicionales por una IP estática (en un host de $ 8 / mes ...) así como comprar un certificado decente. Casi consideraría no construir el maldito sitio.
AgentConundrum
@AgentConundrum: estrictamente hablando, está bien pasar una contraseña a través de un algoritmo de hash unidireccional a través de HTTP si la contraseña es salada, por lo que no me sorprendería demasiado ver una implementación de hash MD5 en sitios que no están utilizando SSL: pajhome.org.uk/crypt/md5
danlefree
¿Y cómo ayudaría algo a construir un hash en el lado del cliente? En ese caso, básicamente el hash es la contraseña . Debería poder capturar el hash y reproducirlo tan fácilmente como puedo capturar una contraseña.
Zoredache
1
@ Zoredache Es por eso que el hash debe ser salado . Así es como funciona: le envío la página de inicio de sesión con un token rellenado previamente que incluye una microtime()llamada del servidor. Su hash transmitido es una combinación de su contraseña + the microtime()y, una vez que recibo su hash, invalido el microtime()par de desafío / respuesta de contraseña + (no se puede volver a usar).
danlefree
3

A partir de agosto de 2014, Google ha indicado oficialmente que HTTPS se utilizará como una señal de clasificación.

Esto significa que incluso si su sitio web es un sitio completamente estático, si le importa el SEO, al menos debería considerar configurar un certificado SSL.

Por supuesto, HTTPS es solo una señal de clasificación entre cientos, por lo que probablemente hay cosas más importantes que puede hacer para SEO.

kqw
fuente
Google también anunció que, dado que configurar un certificado SSL requiere recursos, debe hacerlo solo si su sitio web lo exige. En resumen, mencionaron que su clasificación no se verá afectada solo porque no configuró un certificado SSL en su blog personal.
Rana Prathap
1

Aquí hay un ángulo que quizás no haya considerado: no usar SSL / TLS puede exponer a sus usuarios a un monitoreo pasivo incluso si su sitio no tiene inicios de sesión.

Un actor de amenazas puede simplemente sentarse entre su usuario y el resto de Internet, mirando todas las URL que solicite su usuario y creando patrones de las cosas que está viendo su usuario. Los bits individuales de información pueden ser insignificantes de forma aislada, pero la combinación de muchos pequeños bits de información puede crear una imagen mucho más grande.

Es por esta razón que ofrezco HTTPS en mi propio sitio, que solo proporciona contenido estático.

zigg
fuente