Una guía de mejores prácticas de seguridad para equipos remotos

Publicado: 2022-03-11

Cada vez que les digo a mis amigos que trabajo de forma remota para un cliente que nunca he conocido, me preguntan: ¿Es seguro para ti trabajar de forma remota? Mi respuesta es un rotundo "Sí... pero depende de qué tan bien cree su política de seguridad para trabajadores remotos".

Vivo en Pakistán, donde produzco código que es valioso para los clientes del otro lado del planeta. Mis clientes nunca me han dado la mano ni han visto dónde trabajo. Y, sin embargo, se espera que me asegure de que los secretos de los clientes y el código permanezcan protegidos. En un mundo en el que los miembros de su equipo no están familiarizados con su rostro o su voz, ¿cómo previene las infracciones de seguridad? La respuesta es: siendo muy cuidadoso.

Encabezado de política de seguridad para trabajadores remotos

No hace mucho, creíamos que para garantizar el rendimiento y la seguridad de nuestras aplicaciones, necesitábamos ejecutarlas en nuestro centro de datos privado. Luego llegó la nube y aprovechamos los beneficios de costo y rendimiento de ejecutar nuestras aplicaciones en una plataforma escalable bajo demanda sin mantener una flota de servidores en una habitación.

Permíteme contarte un secreto bien conocido:

No hay nube.
Es solo la computadora de otra persona.

Ahora, empresas como Uber 1 y Stripe 2 almacenan y procesan información de ubicación de clientes, tarjetas de crédito y pagos en tiempo real en el servidor de un proveedor de la nube, mientras se adhieren a estrictos estándares de seguridad como el cumplimiento de PCI. Lo hacen mediante la adopción de políticas estrictas que garantizarán que sus datos de producción permanezcan seguros.

Si las empresas pueden garantizar que todo su entorno de producción permanezca seguro a pesar de ejecutarse fuera de sus centros de datos privados, ciertamente podemos garantizar la seguridad de su desarrollo utilizando equipos de desarrollo remotos. Después de todo, empresas enteras son capaces de funcionar de forma totalmente remota. Toptal es una empresa solo remota y estamos contratando.

¿Qué es la "seguridad" y cómo "estar seguro"?

A lo largo de este artículo, cuando hablo de “seguridad” me refiero a la seguridad de la información .

El término "seguridad de la información" significa proteger la información y los sistemas de información del acceso, uso, divulgación, interrupción, modificación o destrucción no autorizados. – 44 Código de EE. UU. § 3542

No existe la seguridad perfecta , pero "estar seguro" significa que ha tomado medidas razonables para hacer cumplir la seguridad de la información.

Específicamente, cuando dice "mi entorno de trabajo es seguro", quiere decir que ha tomado medidas razonables para proteger los datos, el código u otra información confidencial bajo su cuidado y ha asegurado su integridad. También ha tomado medidas para asegurarse de que sus privilegios para acceder a los sistemas de información confidencial no sean utilizados por usted mismo o por una persona no autorizada de una manera que vaya en detrimento de los objetivos de la organización propietaria de esta información y estos sistemas.

Los equipos remotos tienen una superficie de ataque mucho mayor que los equipos centralizados. A diferencia de un equipo centralizado en el que puede bloquear físicamente la información confidencial detrás de los firewalls y las estaciones de trabajo de la empresa, como trabajador remoto, se le anima o incluso se le exige que traiga su propio dispositivo (BYOD). Además, dado que la mayoría de sus comunicaciones se realizan en línea, es mucho más susceptible a la ingeniería social y al robo de identidad. Sin embargo, con el conjunto correcto de políticas implementadas, sin duda puede minimizar el riesgo de una infracción.

No hay una bala de plata para la seguridad. A menudo, hay una compensación entre los tonos de seguridad y la comodidad, y depende de usted determinar hasta dónde quiere llevar sus prácticas de seguridad, pero recuerde, su equipo es tan seguro como su miembro más débil. Echemos un vistazo a algunos ataques de seguridad comunes, estrategias de defensa y, finalmente, analicemos una política de trabajo de seguridad remota de muestra.

Los tres tipos más comunes de ataques adversarios

No estás preparado si no sabes a qué te vas a enfrentar. Un adversario puede usar muchas estrategias en su ataque, pero la mayoría se dividen en tres categorías. Si bien esta lista no es exhaustiva, estos son tres tipos comunes de vectores de ataque que los piratas informáticos malintencionados pueden usar:

  • Ingeniería social
  • Suplantación de identidad
  • Infecciones de malware

Amenazas a su política de seguridad para trabajadores remotos

Ingeniería social

También considerada piratería humana, la ingeniería social es la práctica de manipular a las personas para que actúen de una manera que no es de su mejor interés; esto puede incluir la divulgación de información confidencial.

Los ataques de ingeniería social pueden tratar de explotar su compasión en un intento de hacerle eludir las buenas prácticas, o crear una sensación de urgencia donde lo hacen pasar por alto las mejores prácticas por temor a una acción negativa en su contra si no las cumple.

Ejemplos de ingeniería social incluyen:

  • Una mujer llama a un operador de telefonía celular y habla con el agente de soporte para que cambie la cuenta de alguien mientras se reproduce de fondo un clip de YouTube de un bebé llorando.
  • Un atacante envía un correo electrónico a un director ejecutivo a través de la dirección de correo electrónico del director financiero y autoriza una transferencia de fondos de 1,8 millones de dólares.

Suplantación de identidad

El phishing es el método más común para robar sus credenciales. Imagina un sitio web que se parece a Facebook, donde inicias sesión pensando que es real. El phishing es cuando un atacante crea un sitio web que parece legítimo pero no lo es.

¿Puedes detectar el facebook falso? Pista: es el que no está en Facebook.com.

A veces, los piratas informáticos pueden envenenar su Internet e inyectar su sitio web en el dominio de Facebook, esto se denomina ataque Man in The Middle, pero no se preocupe, su navegador puede advertirle sobre esto.

Spear phishing es otra forma de phishing en la que la página de phishing puede personalizarse para usted o su organización. Esto hace que sea más probable que caigas en la trampa, especialmente cuando se combina con la ingeniería social.

Te contaré una historia: cuando estaba en la escuela, alguien que recientemente había aprendido sobre el phishing creó un sitio web falso de Facebook y cambió las páginas de inicio en el laboratorio de computación a su creación. Lo siguiente que supo fue que esta persona tenía trescientas contraseñas de cuentas de Facebook. Este ataque estaba dirigido específicamente a mi escuela y resultó ser un exitoso ataque de spear phishing.

Y pensar que todas esas contraseñas habrían permanecido seguras si alguien se hubiera molestado en buscar en la barra de direcciones.

Infección de malware

Hay cientos de diferentes tipos de malware por ahí. Algunos son inofensivos o simplemente molestos, pero algunos pueden ser muy peligrosos. Los tipos de malware más importantes a tener en cuenta son:

  • Spyware: instala y registra silenciosamente sus pulsaciones de teclas, pantalla, audio y video.
  • Herramientas de administración remota (RAT): permite un control completo sobre su computadora.
  • Ransomware: cifra todos sus archivos importantes y le hace pagar por la clave de descifrado.

Para conseguir que instale malware personalizado en su equipo de forma intencionada, los atacantes suelen utilizar la ingeniería social:

  • El atacante planta unidades USB "perdidas" en el estacionamiento de la empresa para recolectar las credenciales de inicio de sesión de los empleados.
  • Un hombre que derramó café en su currículum le pide a la recepcionista que le imprima una copia de algo porque tiene una entrevista, provocando así que una computadora de la empresa se infecte con un payload malicioso en un USB. (Ejemplo de El arte de la piratería humana).

Siete estrategias de ciberdefensa que necesita ahora mismo

Hemos discutido los métodos de ataque adversarios más comunes, pero ¿cómo nos mantenemos a salvo de ellos?

Estrategia No. 1: Gestión adecuada de contraseñas

Odio las contraseñas. Ahí lo dije. Creo firmemente que la combinación de nombre de usuario y contraseña es la forma más débil de autenticación de usuario que existe. Una contraseña no es más que una pequeña cadena de caracteres generada por el peor generador de números pseudoaleatorios que existe: la mente humana.

Necesito una palabra secreta, ¿eh? ¿Qué hay de mi segundo nombre y año de nacimiento, seguramente nadie podrá adivinar eso? – Todos los humanos de la historia

Lo peor es que, por conveniencia, la gente tiende a reutilizar las contraseñas. Eso hace posible que alguien use la misma contraseña para el inicio de sesión de su banco y el WiFi de su hogar, mientras que es probable que la contraseña termine con el nombre de su banda favorita . ¡El horror!

Hace años resolví hacer lo siguiente:

  1. Usar un administrador de contraseñas
  2. Utilice frases de contraseña seguras en lugar de contraseñas

Utilice un administrador de contraseñas

Cuando dije que hay una compensación entre los tonos de seguridad y conveniencia, no se aplica aquí. O está seguro y usa un administrador de contraseñas, o no lo está. No hay término medio. Es obligatorio que utilice un administrador de contraseñas para una buena seguridad de contraseña. Lo explicaré.

  1. ¿Todas sus contraseñas son únicas?
  2. Si descubrí algunas de sus contraseñas, ¿el resto de sus contraseñas permanecerán seguras?
  3. ¿Todas sus contraseñas se crearon utilizando al menos 32 bits de entropía?
  4. ¿Sus contraseñas se almacenan solo en forma encriptada?
  5. ¿Recuerdas perfectamente todas y cada una de las contraseñas que has utilizado al registrarte?
  6. ¿Da positivo por una fuga de contraseña en este sitio web?

Si respondió "no" a cualquiera de las preguntas anteriores, necesita un administrador de contraseñas. Un buen administrador de contraseñas generará aleatoriamente sus contraseñas y las almacenará de forma segura. No importa qué administrador de contraseñas uses, ¡siempre y cuando uses uno!

Uso LastPass porque me gusta lo transparentes que son con sus informes de incidentes, la capacidad de compartir mis credenciales con amigos y revocar el uso compartido cuando lo desee, y me gusta el hecho de que la sincronización móvil es parte de su plan gratuito.

He estado usando LastPass durante años, y su desafío de seguridad me dice que estoy en el 1% superior de los usuarios conscientes de la seguridad.

Frases de contraseña seguras en lugar de contraseñas

tl;dr: use esto para generar una frase de contraseña. 12 palabras deberían ser suficientes.

Esto puede parecer contradictorio ya que le pedí que usara un administrador de contraseñas anteriormente, pero hay casos en los que las contraseñas son inevitables: necesitará una contraseña maestra segura para su administrador de contraseñas o para iniciar sesión en su computadora. En estos casos, utilice una frase de contraseña segura y memorable con alta entropía.

Hablando de entropía, hablemos un poco al respecto. ¿Qué es esta “entropía” de la que hablo?

La entropía es un parámetro estadístico que mide en cierto sentido, cuánta información se produce en promedio por cada letra de un texto en el idioma. Si el idioma se traduce a dígitos binarios (0 o 1) de la manera más eficiente, la entropía H es el número promedio de dígitos binarios requeridos por letra del idioma original. – Claude Shanon

Está bien si esa cita fue difícil de digerir. Básicamente, la entropía para una contraseña, seleccionada aleatoriamente de un conjunto, es el número total de elementos en el conjunto expresado en base 2. Por ejemplo: si tiene una contraseña de 4 caracteres, que solo puede contener letras en minúsculas, la entropía para una contraseña generada aleatoriamente sería de 19 bits porque:

  1. Hay 26 elementos en un alfabeto en minúsculas.
  2. Una cadena de 4 caracteres compuesta por esas letras es 26^4 = 456,976
  3. 456,976 expresado en base 2 es log(456,976) / log(2) = 19 bits (redondeado al bit más cercano)

El problema con las contraseñas de alta entropía es que terminan siendo difíciles de recordar, como c05f$KVB#*6y . Para hacerlos más memorables, ¿qué pasaría si en lugar de usar letras sueltas, usáramos palabras completas? ¿Y usó un diccionario de mil palabras? De repente, nuestro alfabeto se vuelve de mil elementos, y podemos lograr la misma entropía en 7 palabras que tendríamos con 11 caracteres.

La diferencia ahora es que en lugar de usar una contraseña, estamos usando una frase de contraseña , que es mucho más larga.

El siguiente cómic de XKCD explica mejor este concepto:

Contraseñas vs frases de contraseña

La forma más fácil de generar una frase de contraseña aleatoria segura es yendo aquí.

Estrategia n.º 2: utilizar la autenticación multifactor (MFA)

La autenticación de dos factores (2FA) o la verificación de 2 pasos son todos nombres para lo mismo. Esta es una de esas cosas a las que requiere acostumbrarse un poco, pero los beneficios de seguridad de 2FA superan con creces los costos y personalmente me han salvado dos veces de violaciones de cuenta.

La idea detrás de MFA es simple. Hay tres cosas que podemos usar para autenticarlo:

  1. Algo que sabes (un secreto)
  2. Algo que tienes (una ficha)
  3. Algo que eres (tu biología)

Usar dos es más seguro que usar solo uno.

La mayoría de los sitios web admiten el primer factor de autenticación al solicitar una contraseña, pero un número creciente de servicios también ha comenzado a admitir el segundo factor. Los servicios web suelen dejar de lado el tercer factor, ya que requiere hardware especializado; como el sensor de huellas dactilares de tu teléfono.

Si es administrador de un equipo, considere crear una política obligatoria para que los usuarios tengan una configuración de 2FA. Esto garantiza que un compromiso de contraseña no resulte en un compromiso de cuenta.

Hay dos formas populares de "algo que tienes":

  1. Su teléfono
  2. Una llave U2F

Usando su teléfono para 2FA

Me gustaría decir esto de inmediato: no use códigos SMS para 2FA. Se está convirtiendo en una práctica común que personas malintencionadas secuestren su número de teléfono. La historia es casi siempre la misma: alguien diseñó una empresa de ingeniería social para transferir tu número de teléfono a otra empresa. Conozco al menos a una persona que ha sido víctima de este ataque.

En su lugar, utilice contraseñas de un solo uso basadas en el tiempo (TOTP), también denominadas método "Autenticador de Google". Sin embargo, en lugar de usar Google Authenticator, recomiendo usar Authy, ya que encripta y respalda sus tokens 2FA en la nube. Luego puede restaurar sus tokens 2FA incluso si cambia de dispositivo... de hecho, puede usar los mismos tokens en varios dispositivos. Es muy conveniente.

Uso de una clave U2F para 2FA

Este es el método 2FA más simple y poderoso. Tengo una Yubikey Neo que puedo usar con mi teléfono y mi computadora. Para probar mi identidad, solo conecto mi token de hardware y presiono un botón. Mi token es único y es un token físico; Puedo llevarlo en mi llavero o en mi cartera.

Estrategia No. 3: Vigilancia Constante

Independientemente de cuán seguro creas que estás, una cantidad saludable de sospecha es algo bueno. Tenga cuidado con las personas que le piden que haga algo fuera de lo común. ¿Recibiste un mensaje de texto de alguien pidiéndote que restablecieras su contraseña? Espera un minuto y salta a una videollamada con ellos. Pídeles que prueben su identidad. Nadie puede culparte por ser cauteloso.

No es paranoia si realmente quieren atraparte. – Harold Finch, persona de interés

Ellos realmente están tratando de atraparte. A veces no hay razón para que un usuario malintencionado haga lo que hace, aparte de la voluntad de hacerlo.

Una vez, un amigo mío recibió un mensaje de un viejo conocido que le preguntaba si le gustaría ser su "contacto de confianza" en Facebook. Mi amiga estuvo de acuerdo y se le pidió que respondiera con un código que recibiría en su teléfono, que mi amiga dio de inmediato... y así fue como mi amiga fue manipulada socialmente para que diera el token de reinicio de su cuenta de Gmail. Si mi amiga hubiera estado atenta desde el principio, nunca habría perdido sus correos electrónicos.

Estrategia No. 4: Diseñar Sistemas Según el Principio de Mínimo Privilegio

El principio de privilegio mínimo requiere que en una capa de abstracción particular de un entorno informático, cada módulo (como un proceso, un usuario o un programa, según el tema) debe poder acceder solo a la información y los recursos que son necesarios. para su finalidad legítima. –Wikipedia

Si un usuario, aplicación o servicio no requiere ciertos privilegios, no se los conceda. Puede derivar muchas reglas de este principio, pero las guardaré para la siguiente sección sobre políticas de seguridad.

Déjame contarte una historia: una vez estaba diseñando una aplicación que aceptaría pagos de Bitcoin de los usuarios en direcciones generadas exclusivamente para ellos y luego los reenviaría a una dirección central de almacenamiento seguro. Si no está familiarizado con el funcionamiento de Bitcoin, aquí tiene una explicación simplificada: necesita una clave pública para recibir Bitcoin (como un número de cuenta) y una clave privada correspondiente para gastarlo (como un pin de cuenta). Los números de cuenta y los pines en Bitcoin están vinculados criptográficamente y no se pueden cambiar.

Tenía varias opciones para diseñar este sistema, pero decidí tomar una ruta un poco más larga. Decidí que para incitar al usuario a pagar, la aplicación no necesitaba acceso a las claves privadas. Entonces, en lugar de diseñar un gran sistema que recibiría y reenviaría pagos de Bitcoin, hice dos sistemas:

  1. El sistema de recepción: recibió Bitcoin de los usuarios y se alojó en la Internet pública. Contenía sólo las claves públicas de las direcciones.
  2. Un sistema de reenvío: este era un sistema completamente independiente y bloqueado cuyo único trabajo era observar la red de Bitcoin en busca de transacciones en las direcciones y reenviarlas a la dirección segura. Contenía claves públicas y privadas para las direcciones.

Mucho tiempo después, después de que dejé de mantener la aplicación, se violó el sistema de recepción pública. Lo apagué de inmediato, pero el atacante nunca logró robar el Bitcoin porque el sistema público no contenía ninguna clave privada.

Estrategia No. 5: Use las Mejores Prácticas de Sentido Común

Algunas prácticas no necesitan explicación. Probablemente sepa que son importantes, pero me sorprende constantemente la cantidad de personas (incluyéndome a mí) que se olvidan de accionar algunos interruptores. Dejaré esta lista de verificación aquí:

  1. Encienda su cortafuegos
  2. Encripta tu disco
  3. Habilitar copias de seguridad cifradas
  4. Usar claves SSH
  5. Utilice una conexión a Internet segura

Encienda su cortafuegos

Un firewall controla el tráfico de la red hacia y desde su computadora según un conjunto de reglas. Funciona preguntándole explícitamente si permite que nuevos programas accedan a su red y es su primera línea de defensa.

Es probable que su sistema operativo venga con un firewall integrado. Asegúrese de que esté encendido.

Encripta tu disco

El cifrado de disco completo es esta habilidad mágica para inutilizar todo el contenido de su disco sin su contraseña. En caso de pérdida o robo de su computadora portátil, puede estar seguro de que nadie podrá acceder a sus datos. Habilitar esto puede ser tan simple como encender FileVault en una Mac.

Los teléfonos móviles modernos también tienen activado el cifrado de disco completo de forma predeterminada.

Cifre sus copias de seguridad

El hardware falla, es un hecho de la vida. Su máquina fallará un día, o un virus infectará su PC, o (estremecimiento) un virus ransomware se apoderará de su PC. Pero como persona pragmática, probablemente ya tenga una configuración de flujo de respaldo, estoy seguro... ¿no es así?

Sin embargo, incluso con sus copias de seguridad, debe permanecer alerta. Asegúrese de que sus copias de seguridad estén encriptadas para que, incluso si se pierden o se las roban, pueda estar seguro de que tomó las medidas razonables para proteger la seguridad de los datos que se le confiaron.

Si tiene una Mac, la aplicación Time Machine en su Mac encripta automáticamente las copias de seguridad.

Usar claves SSH

Si quita algo de este artículo, deje de usar contraseñas para SSH en las máquinas. Las contraseñas son difíciles de compartir y, si alguna vez se filtran, toda su máquina se ve comprometida. En su lugar, cree una clave SSH simplemente ejecutando ssh-keygen .

Para iniciar sesión en una máquina remota, simplemente copie el contenido de su ~/.ssh/id_rsa.pub a ~/.ssh/authorized_keys en la máquina remota. Es posible que deba reiniciar el servicio SSH en la máquina remota, pero eso es todo.

Agregue las claves SSH de todo su equipo a la máquina remota y nadie tendrá que volver a escribir una contraseña. Revocar la clave de un miembro del equipo es tan simple como quitar la clave de la máquina remota.

Utilice una conexión a Internet segura

Cuando comparte una conexión a Internet con alguien, comparte más que su ancho de banda. Dependiendo de la configuración de los sitios web y de su Internet, al menos pueden detectar qué sitios web visita y, en el peor de los casos, leer toda la información que transmite, incluidas contraseñas, mensajes o correos electrónicos.

Esto es muy simple de habilitar y extremadamente fácil de estropear también. Tome precauciones razonables para asegurarse de que su conexión sea privada. Asegúrese de que nadie no autorizado tenga acceso a su conexión a Internet.

Use WPA2 para proteger con contraseña su propio WiFi personal, y si está trabajando desde la cafetería local (o cualquier WiFi público), asuma que está siendo observado y use un proxy VPN.

Dudo en usar VPN basadas en suscripción, especialmente porque crear la tuya propia es muy simple. Utilice esta solución VPN de una línea para alojar la suya.

Estrategia No. 6: Tratar los secretos con cuidado

Los secretos no están destinados a ser revelados. Por eso se llaman secretos . A pesar de eso, ¿cuántas veces has sido culpable de enviar la contraseña a la base de datos PostgreSQL de producción a través de Facebook Messenger? Asegúrese de que siempre:

  • Cifrar secretos en tránsito
  • Rotarlos a menudo

Cifrar secretos en tránsito

Si debe compartir secretos a través de canales como el chat, asegúrese de que estén encriptados. Como ejercicio, visite su cliente de chat más antiguo y de uso frecuente. Pueden ser mensajes de Facebook o Whatsapp. Independientemente de lo que sea, abre y busca la frase "contraseña" en tus mensajes.

Si estos secretos hubieran sido encriptados, no estarían disponibles para nadie con acceso a sus mensajes.

Rota los secretos con frecuencia

Cuanto más tiempo existe un secreto o más se ha compartido, más probable es que se haya visto comprometido. Se considera una buena práctica rotar los secretos y las contraseñas después de un cierto período de tiempo.

Estrategia No. 7: Establecer Identidades Criptográficas

Esta es ciertamente una estrategia avanzada, pero personalmente no entiendo por qué no es una práctica generalizada. Considere esto: su compañero de trabajo cree que ha sido comprometido. ¿Cómo transmiten un mensaje a su verdadero yo? Si alguien de Internet tiene que compartir información importante sobre vulnerabilidades, ¿cómo la envía de forma segura? ¿Cómo se asegura de que sus empleados compartan de forma segura la información en tránsito?

Mi ejemplo favorito de esto es el perfil de la base de claves de Coinbase, donde firman criptográficamente las claves PGP de sus empleados. Han ido más allá y le han dado a su departamento de cumplimiento una clave PGP. En serio, Coinbase, ¡buen trabajo!

Para mí, personalmente, en caso de que alguien tenga una duda razonable de que mi identidad en línea se ha visto comprometida, simplemente pídeme que firme un mensaje con la clave PGP disponible en mi perfil de base de datos. Soy la única persona con acceso a esta clave PGP y he tomado precauciones razonables para garantizar que esta clave permanezca segura incluso si mis otras identidades se ven comprometidas.

Si tiene dudas sobre la autenticidad de un mensaje, pídame que lo firme. Si necesita enviarme un secreto, cífrelo con mi clave pública.

Implemente una política clara de seguridad para trabajadores remotos

La política de seguridad es una definición de lo que significa ser seguro para un sistema, organización u otra entidad. Para una organización, aborda las restricciones sobre el comportamiento de sus miembros, así como las restricciones impuestas a los adversarios por mecanismos tales como puertas, cerraduras, llaves y paredes. –Wikipedia

Una política de seguridad es una regla o protocolo obligatorio que se debe seguir al realizar acciones. Las estrategias anteriores son útiles, pero para que sean más fáciles de seguir, proporcione a su equipo un conjunto sencillo de reglas a seguir. Es más difícil estropear la seguridad cuando su equipo sabe exactamente qué hacer.

Discutamos ejemplos de una política de seguridad de trabajadores remotos para implementar.

Políticas a implementar para sus empleados :

  • Acuerdos de confidencialidad y contratos: asegúrese de que ningún empleado tenga acceso a ningún recurso confidencial sin las bases legales adecuadas.
  • Información de contacto de emergencia: elimine la información de contacto completa y de emergencia de su empleado en caso de que su miembro remoto del equipo no responda.
  • Otorgue privilegios esenciales únicamente: si el miembro de su equipo no necesita acceso a ciertas áreas para realizar su función, no le otorgue acceso. Un miembro del equipo de ventas no necesita acceso a su repositorio de código.
  • Administradores de contraseñas : asegúrese de que sus empleados tengan acceso a un administrador de contraseñas
  • Fuertes políticas de autenticación
    • Seguridad mínima de la contraseña: personalmente odio las contraseñas y, para las organizaciones en las que soy administrador, requiero contraseñas con un mínimo de cincuenta caracteres alfanuméricos. Es trivial adherirse a esta política si está utilizando un administrador de contraseñas.
    • Restablecimientos de contraseña obligatorios: asegúrese de que las contraseñas de sus empleados caduquen con frecuencia para rotar los secretos con frecuencia.
    • Autenticación de dos factores : use 2FA en todas partes
  • claves PGP
  • Discos duros encriptados
  • Copias de seguridad cifradas

Los empleados se van, pero no deben llevarse su información con ellos. Adapte estas políticas para conservar los datos incluso después de que sus empleados dejen la empresa:

  • Cuentas de correo electrónico corporativas: Dar a sus empleados cuentas de correo electrónico en su propio dominio le permite deshabilitar y auditar sus comunicaciones.
  • Comunicaciones en tiempo real: aunque el correo electrónico es excelente, a veces su equipo necesita hablar en tiempo real. Asegúrese de que su equipo tenga un canal centralizado de Slack o IRC. Esto le da la posibilidad de deshabilitar o auditar sus comunicaciones según sea necesario.
  • Repositorios de códigos centralizados: Asegúrese de que todo el código de la empresa esté almacenado en un repositorio de códigos de la empresa. Los planes de la empresa sobre ofertas públicas de SaaS como GitHub están bien hasta que necesite un control detallado sobre todo el código de los empleados. En el último caso, considere obtener su propia instancia de GitLab.

Políticas para proteger su infraestructura :

  • Mantenga los sistemas actualizados: las vulnerabilidades de seguridad se descubren y reparan todos los días, es su trabajo asegurarse de aplicar estas correcciones. No hay nada peor que descubrir que una brecha fue causada por una vulnerabilidad que se parchó hace unas semanas.
  • Bloquee los entornos de producción y ensayo: ningún empleado debe tener acceso a los entornos de producción o ensayo. A veces simplemente se equivocan.
  • Cree un flujo de CI/CD sólido: siempre desea implementar un código "bueno", y el proceso de CI/CD directo siempre lo garantiza.
  • Proteja el repositorio bendecido: si tiene un proceso de CI/CD automatizado, asegúrese de que solo el administrador del proyecto pueda editar su repositorio bendecido.
  • Defina un proceso de revisión: para asegurarse de que ningún código "malo" pase desapercibido, cree un proceso de revisión. Esto puede ser tan simple como solicitar al menos un comentario independiente "Me parece bien" (LGTM) antes de la fusión.
  • Claves SSH: en caso de que su aplicación requiera acceso SSH, asegúrese de que usen claves SSH en lugar de contraseñas.
  • Considere abandonar BYOD: el equipo de presupuesto podría pensar que BYOD es la mejor innovación de políticas desde la oficina sin papel, pero si puede permitírselo, considere proporcionar a su equipo máquinas corporativas en las que pueda implementar políticas de seguridad rigurosas.
  • Copias de seguridad cifradas: sus datos son importantes.

Políticas al escribir código :

  • Sin secretos en el código: debido a la naturaleza del control de versiones, puede ser muy difícil eliminar datos cuando se agregan en el código, donde las claves secretas son muy fáciles de encontrar.
  • Bcrypt al almacenar contraseñas: cuando diseñe un sistema de autenticación, use bcrypt para codificar y saltear sus contraseñas en lugar de diseñar su sistema, o (trago) almacenar en texto sin formato.
  • Filtre la información confidencial de los registros: ya sea su pimienta global, la clave de firma de sesión de su aplicación o el intento de inicio de sesión de un usuario, asegúrese de que no se filtren en los archivos de registro de su sistema donde cualquier persona con acceso pueda leerlos.
  • Otorgue los privilegios mínimos necesarios: si su aplicación solo necesita privilegios de READ , no le otorgue privilegios de WRITE . Adherirse al principio de privilegio mínimo.

Crear un plan de respuesta

Ocasionalmente ocurren brechas de seguridad, y aunque habrá mucho tiempo para aprender durante una autopsia, lo que importa es que haya un camino claro para asegurar todos los activos digitales.

Tómese el tiempo para elaborar un plan de contingencia en caso de que ocurra una brecha de seguridad. Considere sus acciones en los siguientes escenarios:

  • Pierdes un dispositivo con datos confidenciales.
  • Es posible que una parte no autorizada haya accedido a su infraestructura.
  • Observas a alguien en tu equipo comportándose de manera extraña diferente a ellos.
  • Se descubre una vulnerabilidad de seguridad.

Cosas que debe incluir en su plan de respuesta:

  • Documentación diligente: habilite la grabación de pantalla, configure un wiki para que su equipo comparta todo lo que encuentren.
  • Contención de brechas: según el alcance de la brecha, esto puede ser tan simple como deshabilitar una cuenta de usuario, desconectar un servidor o cerrar la producción y contactar a sus usuarios.
  • Establezca comunicación interna: Inicie un canal de Slack dedicado o encuentre una manera para que cualquier persona informe lo que encuentra.
  • Trayendo ayuda: Llame a todos los equipos afectados por la brecha. Este puede ser un buen momento para ponerse en contacto con las autoridades también.
  • Investigar: averiguar qué se violó, en qué medida y qué podemos hacer para reanudar las operaciones normales.
  • Volver a estar en línea: cree, pruebe y publique una solución para reanudar las operaciones normales lo antes posible. Sus usuarios dependen de su servicio para funcionar, y en el momento en que pueda garantizar un servicio estable y seguro, vuelva a estar en línea.
  • Hable con sus usuarios: No deje a sus usuarios en la oscuridad. Lo peor que puede hacer es detener su servicio sin explicar lo que está pasando a sus usuarios. Establecer un canal de actualización en vivo; esto puede ser tan simple como usar Twitter para mantenerlos informados. Una vez que se haya manejado el incidente, publique un informe post-mortem que hable sobre lo que sucedió, cómo sucedió y qué ha hecho para evitar infracciones similares en el futuro.

Suceden incidentes de seguridad. Lo que importa es cómo manejas tu respuesta. Una de mis respuestas favoritas fue en 2015 cuando LastPass emitió restablecimientos de contraseña maestra obligatorios cuando detectaron actividad anómala en la red. Soy usuario de LastPass desde hace mucho tiempo y, a pesar de sus recientes problemas de seguridad, me encanta la forma en que responden a sus clientes poniendo sus necesidades en primer lugar.

Lectura recomendada

Para reiterar: No existe tal cosa como la seguridad perfecta. Lo único que importa es que se asegure de haber hecho un esfuerzo razonable para mantener sus datos seguros.

Estas prácticas de seguridad deberían hacer que usted y su equipo remoto sean significativamente más difíciles de piratear.

Si quieres leer una historia real de un hacker fugitivo que huye de la ley, te recomiendo Ghost in the Wires de Kevin Mitnick.

Si quieres saber más sobre cómo piensa la otra parte, te recomiendo leer:

  • Ingeniería social: el arte de la piratería humana por Christopher Hadnagy
  • El arte del engaño de Kevin Mitnick y William L. Simon

Mi crimen es la curiosidad.