¿Por qué son las contraseñas de texto plano mal, y ¿cómo puedo convencer a mi jefe de que su tesoro sitios web están en peligro?

StackOverflow https://stackoverflow.com/questions/1197417

  •  20-09-2019
  •  | 
  •  

Pregunta

Siempre he tenido la impresión de que el almacenamiento de contraseñas en una base de datos en formato de texto (como alguien aquí ponerlo) Muy Malo™.

Históricamente, la mayoría de nuestro servidor-lado de codificación de las necesidades se han contratado a un grupo de programadores.Almacenar las contraseñas en MySQL bases de datos en formato de texto.

Como residente de código de mono (por cierto, la primera del lado del servidor conocedores de mono a trabajar aquí, así que voy a heredar la tierra, por así decirlo) tengo este boca del estómago sensación de que mi culo que estará en la línea cuando este texto plano sin sentido es explotado.

Yo traté de explicarle a mi jefe cómo muy, muy malo contraseñas de texto sin formato se, pero me di cuenta que:Yo no creo que haya realmente saber por qué está tan mal.Hay más a él que la entrega de su hackers una lista de contraseñas en una bandeja de plata?Eso suena bastante malo para mí, pero en la-la land, donde nuestros sitios web son "seguros" y insensible a cualquier hacker, este argumento no parece cortar.¿Cómo puedo convencer (o asustar a) mi jefe en exigentes hash en su tesoro de sitios web?

Relacionado con: Cifrado y Hash llanura las contraseñas de texto en la base de datos

¿Fue útil?

Solución

En el ejército se llama "Defensa en Profundidad".La teoría es que se endurecen cada capa puede más que el endurecimiento de una sola capa, y con la esperanza de que es suficiente.

He oído hablar de bases de datos como el tuyo llamado "duro por fuera, suave y gomoso en el interior".Hay un millón de maneras en que un dedicado hacker puede obtener acceso a su base de datos.La ingeniería Social, un empleado descontento, un ex-empleado que decide si su inicio de sesión todavía funciona, o que backdoor escribió todavía está allí, uno se perdió OS parche...la lista continúa.

Si un mal actor obtiene acceso a través de cualquiera de estos métodos, en lugar de sólo la obtención de los datos, se obtiene acceso a cada nombre de usuario/contraseña de cada usuario de su sistema, y como alguien señaló, las personas a menudo usan el mismo combo para cada sitio web.Por lo que su hacker va y posee cientos de personas de Paypal, correo electrónico y cuentas bancarias.

He pintado un espantoso suficiente todavía?

Otros consejos

Dile que tener en cuenta que en muchas empresas, los problemas de seguridad provienen de dentro de en lugar de salir.

Ahora preguntarle cómo se va a explicar a sus clientes cómo los hackers han robado sus contraseñas (lo que sin duda se utilizan en otros lugares) la próxima vez que tiene que despedir a alguien por alguna razón.

También preguntarle cuánto piensa que sus clientes les gustaría saber que sus contraseñas son visibles para cualquier persona con acceso de lectura a la base de datos.

Aquí hay algunas razones:

  • Alguien podría entrar en su sitio. Puede que sea poco probable, y esto probablemente no va a influir en su jefe (que puede oír la conversación ahora: "¿Está usted diciendo que el sitio no es seguro") pero sucede, y recuerde, nadie piensa que su sitio se honestamente ser roto a ...
  • Casual visualización de la base de datos por los internos (como usted): No podría estar tratando de mirar a las contraseñas de cualquier persona, pero es posible que, durante el curso normal de su trabajo, tienen que mirar a través de la tabla que contiene las contraseñas. Teniendo en cuenta que muchas personas utilizan la misma contraseña para absolutamente todo (incluyendo posiblemente su jefe!) Que no le gustaría todas esas contraseñas expuestas. Pregúntele a su jefe si alguna vez se ha reutilizado una contraseña en dos sitios diferentes
  • Si alguien alguna vez se enteró de que su aplicación no cifrar las contraseñas, se podría cuestionar seriamente la confianza de su aplicación
  • Su precio es básicamente nada para cifrar una contraseña (preferiblemente con una sal) en la base de datos, ¿por qué no?

Si lo desea señalar que el hecho de asegurar correctamente las cuentas podrían exponer la empresa a la responsabilidad legal si la información se vea comprometida nunca. Haciendo caso omiso de una vulnerabilidad conocida podría terminar costándole en honorarios legales si los datos de un usuario fue expuesto como resultado de las acciones de su empresa (o la falta de acción, como puede ser el caso).

En los Estados Unidos, hay ciertos tipos de datos, como información financiera y médica, que las empresas tienen la obligación legal de mantener segura y privada. El no hacerlo puede tener consecuencias graves. No estoy familiarizado con las leyes de otros países en este sentido, pero es algo vale la pena analizar si su empresa se ocupa de este tipo de datos.

Además de los riesgos de seguridad, me pregunto lo que sus clientes diría que si se enteraron de todos los empleados de su empresa tiene acceso a las contraseñas. Cuando se trata de posibles fugas, las contraseñas están en riesgo si:

  • la base de datos está respaldada por una empresa externa
  • el sistema operativo que el software se está ejecutando en db tiene ningún riesgo de seguridad
  • fallos de seguridad en cualquier otro servidor de seguridad de hardware o software
  • los usuarios que tienen acceso a la base de datos de alguna manera consiguen un virus que podría explotar los datos
  • la db pasa a estar en un ordenador o portátil que es robado
  • un empleado descontento es despedido y decide "volver"

de vez en cuando se oirá de las empresas que almacenan información sensible en texto plano y nunca termina bien. todos somos humanos y propenso a errores, no se puede asumir la perfección cuando se trata de seguridad. usted no encontrará ninguna empresa salir de la habitación grande, rentable para cualquier riesgo que puede evitarse ya que cualquier cosa que pueda ir mal, va a pasar ...

Si 'entrega sus galletas una lista de contraseñas en bandeja de plata' no es una razón suficiente, lo que constituye una razón suficiente?

Hay demasiados casos de bases de datos con contraseñas en texto plano siendo robados: Si le puede pasar a reddit , le puede pasar a ti.

contraseñas de texto no están permitidas si su organización mantiene PCI-DSS (por ejemplo, un comerciante que acepta tarjetas de crédito). Ver PCI DSS punto 8.4.

contraseñas de texto no están permitidas si su organización es una institución financiera que está asegurado por la FDIC (ver FDIC FIL 69 2001).

Las contraseñas deben ser cifrados tanto en tránsito y en reposo, si desea obtener la certificación ISO / IEC 27001, por ejemplo, si se trabaja con ciertos organismos gubernamentales.

Los dos buenas respuestas que he visto promulgada para esta pregunta son:

  1. proteger las contraseñas de los empleados IGMP, es decir, las personas que tengan acceso legítimo a la base de datos no puede fácilmente robar una contraseña en caso de que se sienten tan inclinados,

  2. Una falla lógica de la aplicación, tal como una inyección SQL uno en un extremo delantero sitio web, tendrá una menor posibilidad de resultar en un compromiso.

En mi opinión, es una buena idea para cifrar la contraseña de base de datos (aunque todavía estoy a moverse a hacerlo por la mayor parte de mis aplicaciones) pero mucho más importante es asegurarse de que el servidor de base de datos es tan a prueba de balas como sea posible con respecto a la red y acceso autorizado. Si un atacante puede llegar a su base de datos, entonces no será lo que importa la forma en que ha almacenado sus contraseñas serán capaces de romperlas.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top