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.
fuente
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.
(Fuente HTML de inicio de sesión de Facebook.com)
fuente
microtime()
llamada del servidor. Su hash transmitido es una combinación de su contraseña + themicrotime()
y, una vez que recibo su hash, invalido elmicrotime()
par de desafío / respuesta de contraseña + (no se puede volver a usar).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.
fuente
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.
fuente