Entonces, ¿quieres trabajar en seguridad?

De vez en cuando, recibo un correo electrónico de un extraño ansioso pidiendo consejo sobre cómo tener una carrera en seguridad (informática, información, cibernética ... lo que sea). ¡Esto es genial! Necesitamos personas más apasionadas, creativas y trabajadoras que quieran trabajar para hacer que la tecnología sea más segura de usar. También resulta ser una forma bastante estable de ganarse la vida.

Hay muchas otras publicaciones sobre este tema exacto ¹, pero ofreceré algunos pensamientos de alto nivel extraídos de mi propia experiencia.

ADVERTENCIA: No es como en las películas.

Trabajar en seguridad no es como se describe en Hollywood. ME ENCANTA ver películas y programas inspirados en piratas informáticos por la fantasía y el escape, pero el trabajo diario no es (en mi experiencia) tan rápido y sexy como parece en la pantalla.

Ahora, eso es cierto para la mayoría de las profesiones, e incluso si nunca he pasado un día descifrando el código de transmisión en una guarida subterránea, sigo pensando que es un campo emocionante, importante, desafiante y gratificante para trabajar.

No existe un plan de estudios estándar o perfecto.

La seguridad es un campo amplio, interdisciplinario y aplicado. Hay necesidades de personas que diseñan y construyen sistemas seguros, personas que intentan romper sistemas, personas que intentan detectar intrusiones y muchas cosas intermedias. Si he aprendido algo, he aprendido que no existe un camino preparatorio único, estándar o mejor. Quizás esto cambie a medida que el campo madure, pero lo dudo. Tampoco es como otros campos profesionales que requieren acreditación (por ejemplo, medicina, derecho), que pueden ser tanto liberadores como intimidantes.

Independientemente de cómo lo adquiera, se beneficiará de tener un sólido conocimiento de la informática aplicada o de cómo funcionan las computadoras y el software. Gran parte de la informática aplicada se trata de resolver problemas con capas de abstracción, y la seguridad a menudo se trata de encontrar las suposiciones defectuosas en esas abstracciones ... y luego descubrir cómo solucionarlas (o explotarlas) mejor.

Hice esto al obtener un título de ingeniero en Ciencias de la Computación de una universidad pública. Algunos de los temas más útiles para mí fueron los sistemas operativos, redes, arquitectura de computadoras y compiladores. Más allá de eso, solo tomé cursos técnicos que me parecieron interesantes (por ejemplo, procesamiento de señales digitales, ingeniería biomédica, inteligencia artificial) y exploré temas de seguridad en redes, tecnologías que mejoran la privacidad y seguridad de aplicaciones (web, cliente) a través del trabajo de proyectos en clubes de estudiantes y pasantías. .

También se beneficiará de comprender cómo funcionan las personas (usuarios, clientes, lo que sea) que utilizan la tecnología. Si pudiera retroceder en el tiempo a mis días universitarios más libres de {cuidados, obligaciones}, tomaría algunas clases de psicología, sociología y factores humanos.

Trabajo con expertos que tienen antecedentes académicos tradicionales similares (por ejemplo, títulos en ingeniería informática, informática, matemáticas, etc.). También conozco a muchas personas que tienen antecedentes menos típicos (por ejemplo, química, estudios cinematográficos, psicología, diseño gráfico) y algunas personas que abandonaron la escuela antes de terminar un título.

En cuanto al tema de las certificaciones de seguridad, no tengo ninguna y no creo que me hayan retenido por eso. Es posible que algunas industrias o países los requieran para profesionales de la seguridad de la información, y ciertamente son algo que algunas personas razonables han perseguido: ¡advertencia emptor!

Culturalmente, recomendaría leer el Manifiesto Hacker o How to Become a Hacker, que sirve como inspiración y brújula moral para muchos expertos en seguridad. Incluso si no te comparas con un hacker, es útil comprender la mentalidad de algunas de las personas con las que trabajas.

Más allá de eso, la mayor parte de lo que sé lo he aprendido con el tiempo, en anécdotas y nuggets de amigos y compañeros de trabajo, blogs de seguridad, documentos de conferencias y presentaciones, listas de correo, grupos de seguridad locales y otros recursos en línea. Muchas de las cosas que escucho o ingiero hoy provienen de personas en mi lista de seguridad de Twitter.

Deja de leer, empieza a hacer.

Esto se aplica a cualquier carrera profesional, pero obtenga experiencia laboral en la vida real lo más rápido que pueda. Esa es la mejor manera de delimitar sus intereses, fortalezas y áreas de desarrollo futuro. También comprenderá mejor en qué consiste un día y un entorno laborales normales, incluido lo que le gusta y lo que no le gusta. Una de las experiencias profesionales más valiosas de mi vida fue hacer una pasantía que odiaba, ya que me llevó a otra dirección :)

En cuanto a cómo empezar a adquirir experiencia, no tengo una respuesta sencilla. Consulte ferias y conferencias profesionales, participe en clubes u otras organizaciones, solicite pasantías y trabajos a tiempo parcial con audaz entusiasmo. Mucho antes de llegar a Google, limpié queso nacho seco en un puesto de comida como parte de mi turno habitual como salvavidas de una piscina comunitaria. Esa pequeña experiencia laboral me ayudó a conseguir un trabajo de administrador de sistemas en un dormitorio universitario, que sin duda fue relevante cuando me entrevistaron para una pasantía de TI en una gran empresa farmacéutica. Obtuve algo de experiencia de software "real" (es decir, no relacionada con cursos) con clubes en la Universidad, y encontré una publicación de pasantía en ciberseguridad en un grupo de noticias de la escuela, lo que probablemente me dio la experiencia laboral relevante suficiente para que alguien de Google me considere para una entrevista .

Escribe el código.

Los mejores ingenieros de seguridad que conozco también escriben código de forma activa. Esto les da experiencia de primera mano con la escritura de software, incluida la introducción involuntaria pero inevitable de errores de seguridad. Esto último fuerza una verdadera empatía para todos los desarrolladores. Después de todo, a menudo es más difícil escribir código seguro de manera consistente que señalar código inseguro.

Si no sabe por dónde empezar en un proyecto de tamaño significativo, intente corregir errores en un proyecto de código abierto. ¡Todo el mundo ama a las personas que corrigen errores! El proyecto se lo agradecerá y, por lo general, es una buena manera de obtener experiencia en el mundo real y su pie en la puerta para el trabajo futuro.

Romper el código.

Dedique tiempo a encontrar errores de software. Aprenda a utilizar un depurador, un escáner de red, un proxy de depuración web y un fuzzer de software. Pase tiempo en los patios de recreo de hackers, que están disponibles para todos los niveles. Utilicé por primera vez //www.hackthissite.org cuando estaba en la universidad y enumeré un par de otros sitios de formación de piratas informáticos autoguiados en //infosec.rocks. También hay una buena lista de desafíos de piratería, competiciones (por ejemplo, CTF) y pérdidas de tiempo aquí. O busque e informe errores en el software real que utiliza. Hay muchos proveedores de software que ofrecen recompensas financieras por errores de seguridad, incluidos Chrome y Google, así como algunos proyectos centrales de código abierto cubiertos por el programa Internet Bug Bounty.

Más allá de encontrar errores usted mismo, le recomiendo seguir y aprender de lo que otros están encontrando (bugtraq, fulldisclosure, oss-sec).

Compartir conocimientos.

Empecé a aprender sobre seguridad en la universidad con compañeros en un grupo interesante especial de ACM llamado SigMil, donde los miembros daban presentaciones sin pulir sobre temas de seguridad que les interesaban. También hicimos una peregrinación anual a DEFCON para asistir a charlas (que era mucho más fácil hacer hace una década), comprar libros o revistas de seguridad, o simplemente conversar con personas de otras partes del mundo con ideas afines sobre en qué estaban trabajando. En Google, he aprendido MUCHO directamente de mis compañeros compartiendo su experiencia, luchas e ideas a medias.

Compartir conocimientos es importante por algunas razones:

  1. Compartir conocimientos es una forma necesaria y eficaz de escalar las mejores prácticas de seguridad (o escollos que evitar) en una gran organización o proyecto.
  2. Casi siempre aprendo algo yo mismo al prepararme para una presentación o redactar documentación, por lo que ha sido una buena función forzarme a descubrir los rincones ocultos de un tema.
  3. Casi siempre aprendo algo de la audiencia, ya sea de preguntas, comentarios o discusiones de seguimiento.
  4. Pagalo despues.

Practica tu comunicación también.

Trabajar en seguridad significa que deberá explicar regularmente problemas técnicos complejos a diferentes audiencias, cada una con vocabularios, experiencia e incentivos diferentes. Rara vez tendrá métricas universales en las que apoyarse cuando describa la gravedad de una vulnerabilidad, ni tendrá nada brillante para mostrar cuando promueva las mejores prácticas de seguridad. Tendrá que mantener a las personas tranquilas frente a FUD, pero enfocadas en la acción fuera de la crisis.

Todo esto requiere habilidades en el arte de la comunicación y, en particular, la explicación y la negociación. Es poco probable que domine este arte con recursos puramente técnicos, así que practique, publique y trate de mejorar para siempre.

Espere trabajar duro y, a veces, fracasar.

Quizás esto sea obvio, pero vale la pena mencionarlo explícitamente.

La seguridad es un trabajo desafiante. Necesitará aprender cosas nuevas constantemente porque el panorama técnico que necesitará proteger está evolucionando rápidamente mucho más rápido que nuestra capacidad para desaprobar las cosas antiguas que aún no se han asegurado por completo. Los actores de amenazas, que a menudo tienen tiempo y recursos de su lado, también se adaptan rápidamente a las defensas existentes.

La seguridad puede ser estresante. Se enfrenta a problemas ambiguos, soluciones imperfectas, datos limitados y amenazas reales para la seguridad humana.

Es difícil medir el éxito con seguridad y, en mi experiencia, es más probable que la gente note el fracaso. Al asegurar la tecnología del mundo real, en última instancia, estamos en el negocio de la mitigación de riesgos, y no importa lo que le diga alguien en un piso de proveedores de RSA, no hay soluciones mágicas.

(Trate de) Sea optimista.

Este campo puede resultar deprimente por algunas de las razones que acabo de describir. Puede parecer imposible seguir el ritmo de la velocidad de la innovación en tecnología y explotación. Quiero decir, las vulnerabilidades de desbordamiento de búfer han existido durante décadas, sin embargo, todavía vemos regularmente exploits de alto impacto que las aprovechan hoy (2016). Regularmente escuchará a la gente gritar que la seguridad es imposible y que está empeorando, o que exponga puntos completamente elocuentes sobre por qué todos estamos fallando.

La realidad puede ser dura, pero si nos enfocamos en lo positivo y pensamos en todas las cosas que la tecnología nos ha brindado, ¡es bastante impresionante! No es perfecto Nunca sera perfecto. Pero creo que la vanguardia de la seguridad es mucho mejor que hace 10 años, podemos hacer cosas bastante impresionantes con cierto nivel de seguridad razonable, y eso es algo que me mantiene optimista.

Pedir ayuda.

No te desanimes si te encuentras con idiotas. He visto mucho chovinismo y ego en la industria de la seguridad de la información a lo largo de los años. No es raro que una conversación (en línea, en una conferencia, donde sea) se convierta rápidamente en quién es el más elitista.

Quizás esta no sea la experiencia para todos, pero he tenido éxito en gran parte gracias al apoyo, los consejos, la tutoría y la ayuda de muchas personas excelentes de seguridad a quienes ahora considero amigos. El hecho de que tenga que pedir ayuda NO significa que no esté preparado para este trabajo.

Si necesitas ayuda, pídela. Solo asegúrate de hacer tu diligencia debida y haz que sea lo más fácil posible para que las personas te ayuden. La mayoría de los expertos están bastante ocupados, por lo que es mucho más probable que obtenga una respuesta útil si hace una pregunta bien definida con suficiente contexto y sin errores tipográficos.

¡Buena suerte y feliz piratería!

[1] Algunos otros consejos sobre la carrera de seguridad con los que me he encontrado:

  • Thomas Ptacek, Charlie Miller, Jeremiah Grossman, Richard Bejtlich y Bruce Schneier comparten sus pensamientos en //krebsonsecurity.com/tag/security-career-advice/
  • Chris Palmer, mi amigo y colega de Chrome, comparte sólidos consejos en //noncombatant.org/2016/06/20/get-into-security-engineering
  • Michal Zalewski (también conocido como lcamtuf) compartió 4 lecciones simples basadas en sus 20 años de trabajo (increíble y a menudo innovador) en seguridad: //lcamtuf.blogspot.com/2016/08/so-you-want-to-work-in- security-but-are.html