/panelseguridad

Introducción al mundo de la seguridad

Nota: Actualmente se encuentra en construcción.

Tabla de contenidos

  1. Acerca del FAQ

  2. Disclaimer

  3. ¿Quiénes somos?

  4. FAQ

    1. ¿Qué es la seguridad informática?
    2. ¿Qué es ser hacker?
    3. ¿Qué cosa no es?
    4. ¿Cuáles son las grandes ramas de la seginfo?
    5. No arranqué de jóven, ¿es tarde para mí?
    6. Quiero hackear, pero no se qué estudiar, ni dónde, ¿qué hago?
    7. Lo que me da la universidad no es lo que quiero, ¿qué hago?
    8. ¿Creen que es necesario crear una carrera de seguridad informática?
    9. ¿Qué acercamiento se tiene desde la seguridad con respecto a la educación que se brinda hoy en día?
    10. ¿Son recomendables las certificaciones?
    11. ¿Cuál es la mejor manera de aprender?
    12. ¿Que sería lo básico que necesito para la seguridad informática?
    13. ¿Qué perfiles se encuentran en el mundo laboral?
    14. ¿Por qué hay más foco en lo ofensivo que en lo defensivo?
    15. ¿Cómo ven el futuro de la seguridad informática?
    16. Si recién empiezo, ¿es un desperdicio ir a una conferencia?
    17. Red Team, Pentesting, ¿son todos lo mismo?
    18. Más allá de las ramas, ¿qué cosas se pueden hacer?
    19. ¿Hay algún mapa de todos los dominios que abarca la cyberseguridad?
  5. Conclusión

  6. Recomendaciones generales

  7. Más información

    1. Glosario
    2. Cursos gratuitos
    3. Guías en español
    4. Guías en inglés
    5. Lecturas recomendadas
    6. Canales de YouTube
    7. Podcasts
    8. Instituciones que tratan la seguridad
    9. Películas & Series
    10. Documentales
  8. Eventos públicos

    1. Meetups
    2. Conferencias
    3. Infosec Twitter
  9. Referencias

  10. Proving grounds (mentorship)

  11. Salida laboral

Acerca de este FAQ

La idea de este documento es combatir un poco la desinformación, remover ambigüedades, despejar dudas, y crear un espacio en el que podamos referenciar a futuro como un lugar de partida para cualquier persona que quiera introducirse en la seguridad informática.

La propuesta no se focaliza en enseñar habilidades técnicas, sino en orientar un poco a quienes necesiten una ayuda, se encuentran perdidos ó no saben cómo armarse camino en esta profesión.

Toda la información contenida en este documento, es una recopilación personal abierta, por lo tanto es subjetiva, y no está sujeta a ninguna verdad absoluta.

Amigos, colegas, conocidos; un grupo de personas apasionadas de la seguridad informática, que viven de ello (en su mayoría), y comparten desde la empatía con todos los que están en esta situación de iniciación al aprendizaje o desconcierto, ya que hemos estado allí.

Andrés Riancho, Federico Pacheco, Gustavo M. Sorondo, María Jośe Erquiaga, Martin Gallo, Matías A. Ré Medina, Nicolás Waisman, Sebastián Bortnik, Sebastián García, Sheila Berta, Verónica Valeros.

También agradecemos a Patricio Palladino por su feedback.

También conocida como ciberseguridad, está definida de la siguiente manera por ISACA (Information Systems Audit and Control Association):

Protección de activos de información, a través del tratamiento de amenazas que ponen en riesgo la información que es procesada, almacenada y transportada por los sistemas de información que se encuentran interconectados"

Según la RAE, existen dos definiciones:

  • Pirata informático
  • Persona experta en el manejo de computadoras, que se ocupa de la seguridad de los sistemas y de desarrollar técnicas de mejora.

No reconocemos la primera definición, y seguimos sin entender por qué la segunda fue incorporada sin desplazar a la primera.

Un hacker NO es un pirata informático.

Entendemos por hacker a una palabra que no está sólo arraigada a la seguridad informática, sino a la habilidad para poder encontrar funcionalidades en cosas que originalmente no fueron destinadas para ese uso, más allá del contexto.

Un ejemplo de hackers que utilizan otros tipos de tecnologías, no necesaria y únicamente informática, es la de los perfiles que se dedicaron a estudiar en la psicología el comportamiento humano, la persuasión, y de esa manera obtener información sensible. Esto es más conocido como ingeniería social (ver glosario).

[Introducir más ejemplos]

  • Una profesión estática donde es posible alcanzar un conocimiento pleno
  • La mayoría de las cosas que vemos en las noticias y películas* (si llegaste aquí por las escenas de hacking de distintas peliculas, eso definitivamente no es)
  • Hackear la cuenta de facebook de la pareja de un amigo

(*) Al final del documento hay buenas recomendaciones por si quieren mirar algo que se asemeje un poco más a la realidad ;)

A nivel organizacional, se podría separar en, pero no limitada a:

Defensiva (Blue team) Equipo de personas que defiende una organización de atacantes externos. A diferencia de los equipos que se encargan de asegurar sistemas acorde a estándares o para que cumplan ciertas normativas (ver compliance en glosario), estos están en constante vigilia protegiendo a la organización.

Una parte que no está tan utilizada, al menos en las pequeñas empresas, o es considerada poco popular.

Ofensiva (Red team) Son en general equipos externos a la organización que testean la seguridad de los sistemas utilizando técnicas similares a las que utilizarían atacantes reales.

Esta rama de la profesión tiene fama de ser más divertida y desafiante que otras, ya que hay que encontrar debilidades en sistemas que, en teoria al menos, han sido configurados y desarrollados para ser seguros.

La mayoría de las consultoras de seguridad informatica realizan este tipo de servicios.

Muchos lo confunden con Vulnerability Assesment o Penetration Testing, que tienen sus diferencias (ver sección xx)

No hace falta haber hackeado la NASA a los 12 años para poder dedicarte a la seguridad informática el resto de tu vida, ni tener un background sólido para comenzar, ni una edad en particular.

Hay que tener ganas, y saber organizarse con el tiempo. Entendemos que todas las situaciones son distintas, pero hey, nadie los corre, así que a disfrutar que es un proceso hermoso de aprendizaje, y si no lo está siendo para vos, ojalá que este documento te motive un poco :)

No está tan claro el camino, no te preocupes. No hay un lugar específico a donde ir así como los hay en otro tipo de carreras laborales donde está más trazado. Si bien existen carreras que son complementarias, no es el único camino a seguir.

Algunas de las carreras universitarias que pueden ayudarte son las relacionadas con la informática, como ciencias de la computación e ingeniera informática. Aunque en estas carreras veas poco de seguridad informatica, vas a entender como funcionan las computadoras por dentro y eso te da una gran ventaja a la hora de intentar identificar vulnerabilidades o solucionarlas.

Elegí lo que te quede más cómodo, recomendamos hacerlo de una manera progresiva para no frustrarte con cosas complicadas desde un principio, y a partir de que se van ganando más conocimientos también se va entendiendo un poco más el panorama, para ese entonces seguramente encontraste algo que te apasionó, y sino revisitar este artículo de ser necesario para volver a orientarse.

Si bien creés que no te dá lo que querés de manera inmediata porque en las prácticas no estás sacudiendo exploits y apoderándote de las máquinas de tus compañeros (nota: no lo hagas sin su consentimiento), las carreras de sistemas tienen un aporte y una formación que es sumamente útil.

Más allá de la universidad, y el título, si aprovechás cada materia, y la pivoteás para el lado de la seguridad, podés aprender un montón, e ir haciendo en paralelo tu propia carrera complementaria con lo que ves ahí. Y, si además conseguís algún titular que te segundee para que en los trabajos prácticos haya la flexibilidad suficiente para poder incoporporar este complemento del que hablamos, muchísimo mejor.

No nos parece indispensable, ya que como hablamos, las maneras de aprender son varias. Sin embargo estaría bueno sí, al menos como puerta de entrada, y para salir un poco de que la seguridad sólo esté en posgrados o maestrías únicamente (*).

Por otro lado, no nos gustaría que en el caso de que exista, se utilice para diferenciar a quienes lo tengan de quienes no, como especie de discriminación, más en un ambiente tan autodidacta como en el que nos encontramos.

(*) Ha habido propuestas pero no han tenido éxito porque en su momento no ha existido el flujo necesario como para que se justifique crear una. Para ello es importante comenzar con optativas, cursos, orientadas a seguridad, empezar a generar más movimiento en el ambiente, hasta que eventualmente termine en algo más extenso que justifique incluirse en un plan académico.

De a poco vamos ganando terreno, mediante concientización. Estamos inculcando de a poco que la seguridad es algo que se aplica como parte del proceso de desarrollo de las aplicaciones, sistemas, y no como algo que viene después.

Es algo que eventualmente, con el tiempo, va a llegar.

Dependiendo del tipo de certificado. No son algo necesario, ni un requisito para poder aprender. Algunas empresas los exigen por cuestiones burocráticas o clientes para demandar una compliance[ref] de algún tipo.

Pero una certificación no te enseña, simplemente son distintos mecanismos de verificación para validar lo que uno ya sabe hasta es momento.

Es más fácil hablar de las que nos parecen relevantes, que las que no. Reconocemos que la certificación OSCP es muy interesante, ya que envuelve aplicar en práctica un montón de conocimientos para tomar control de distintas máquinas a través de múltiples técnicas en un plazo de 24hs. A diferencia de otras certificaciones que solamente requieren responder preguntas teóricas multiple choice.

Lo importante acá nos parece diferenciar el hecho de aprender algo y eventualmente tener la capacidad para demostrarlo.

Lo que está claro es que uno lo podría hacer en la universidad, estudiando para una certificación, de material de internet o experimentando. ¡La que a vos te sirva!

Es un campo muy versátil y en crecimiento, en el que ningún perfil es incorrecto.

Sean responsables de sus estudios, si sienten que la universidad ya no lo es, no gasten energía en culparla, busquen en otro lado. Si sienten que necesitan una estructura porque solos no pueden, vayan a la universidad. Si ambos caminos no sirvieron sigan buscando que eventualmente lo van a encontrar, y quién sabe, tal vez abran las puertas para darle camino a mucha gente que estuvo en su misma situación.

No queremos cerrarnos a decir que hay un básico, porque estaríamos cayendo en una generalización y es sumamente abarcativa. Está claro que mientras más conocimientos poséan mejor van a poder encarar cada situación.

No hay ningún curso mágico de 6 meses que les vaya a dar lo básico para cubrir un todo. Sí existen cursos y diplomaturas que les pueden dar un paneo general para ayudarlos a empezar a definir este camino propio del que tanto hablamos, en el cual te terminarás dando cuenta que para poder hacer ingeniería inversa (reverse engineering) necesitás arrancar como base a programar, entender como funcionan los lenguajes de programación, compiladores, y assembler, por ejemplo.

Hay un montón de material online, de cursos gratuitos en distintas plataformas (ver guías y cursos recomendados) que son útiles como puntos de partida y pueden brindar un lindo insight.

Gente recibida, con posgrados, doctorados, haciendo la universidad, que dejó la universidad, que nunca fué a la universidad y estudió sólo por su cuenta, que no terminó el colegio, y más.

La diversidad, en general, es algo que aporta positivamente en los equipos de trabajo. Mientras más diversidad, más puntos de vista y perspectivas distintas se pueden traer a la mesa. Y digamos que el hacking se trata un poco de eso, de tener la capacidad de poder observar las cosas desde distintos lugares.

En resumen, hay de todo :)

Atacar es más divertido que defender, y defender es más difícil que atacar.

Desarrollar una técnica de defensa es muchísimo más complejo porque tiene que funcionar para TODOS los ataques, y atacar sólamente tiene que funcionar contra ESA particular defensa. El nivel de dificultad está dado por esa asimetría.

También hay muchas investigaciones atacando mecanismos de seguridad, pero que no llegaron a ser una charla, posiblemente ya que no lograron finalmente romperlos, y hay una verdad y es que en algunas conferencias es más atractivo mostrar casos en los que sí.

Hace años en Argentina muchos clientes venían a nosotros cuando ya les había ocurrido un problema, cero proactividad. Luego de ser auditados otros tenían esa sensación de seguridad que les duraba años, o hasta que volvieran a tener un inconveniente. Con el tiempo fueron contratándonos de maneras más periódicas, al comenzar cada proyecto, e incluso ofrecernos como servicios como parte de los suyos.

Hoy en día, luego de campañas de concientización, en el incremento en los ataques informáticos, y muchas variables más, hemos llegado al punto en el que algunas de esas empresas que mencionábamos, hoy en día tienen equipos de Blue team y/o conducen auditorías regularmente.

En absoluto. Incluso nosotros con años de experiencia, siempre nos encontramos con muchas charlas de las cuales no entendemos su mayoría, pero porque también esa es la idea, que los disertantes expongan investigaciones interesantes, muchas de ellas super específicas, a las que dedicaron la gran mayor parte de su tiempo, y contra alguien que se dedicó de lleno a un tema en específico no hay punto de comparación.

Recomendamos ir a todas las conferencias que les parezcan interesantes, y disfrutarlas. No frustrarse si no entienden, porque no están diseñadas para que todos entiendan todo.

Algo positivo que tiene en general este ambiente, por lo menos en Argentina, es que la mayoría de nosotros siempre tenemos un momento para charlar con interesados, así que si tienen dudas las pueden despejar en persona con el mismo disertante de la charla.

¡No dejes de ir a meetups! Existen varios meetups en Argentina que estan relacionados con seguridad informática, son reuniones periodicas, con audiencias reducidas y un par de charlas. Te van a servir para aprender de temas nuevos y conocer gente!

El social networking, o dicho de otra manera conocer gente, interactuar, socializar, hacer contactos es sumamente valioso y estos espacios existen para ello.

Penetration Test, Vulnerability Assessment, y Red Team Assessment no son sinónimos, aunque a veces algunas empresas los utilicen intercambiadamente.

Penetration testing, más conocido como pentesting, es básicamente encontrar vulnerbilidades y errores de configuración conocidos, y tratar de explotarlos para obtener la mayor cantidad de accesos posibles en un determinado tiempo.

Red Team Assessment es similar al pentesting, sólo que el objetivo no es conseguir más accesos ni vulnerabilidades, sino obtener información sensible de la manera más sigilosa posible, entendiendo cómo la empresa responde a este tipo de situaciones y reacciona ante ellas. Se incluyen técnicas de ingeniería social, seguridad física, hacking de dispositivos electrónicos, biométricos, wireless y más.

Vulnerability Assesment se podría interpretar como la actividad que engloba encontrar vulnerabilidades en los sistemas, y asesorar a la empresa en cuestión sobre cómo prevenir futuros ataques que las exploten.

Para todos los casos el equipo de profesionales que trabaja en el proyecto realiza un informe detallado para que la organización contratante pueda resolver los problemas detectados.

Se podrían definir muchos perfiles laborales, y la verdad que ninguno está limitado a solamente su área, generalmente para trabajar en cada área necesitás un poco de expertise en las otras. Es decir, si estás analizando una aplicación móvil compleja en Objective C (por decir algún lenguaje), también vas a necesitar entender posiblemente algo de critografía y protocolos de internet para poder hacer un buen trabajo.

Algunas de las categorías, en inglés, son las siguientes:

  • Networking: aplicar seguridad en redes, protocolos.
  • Application: aplicar seguridad en la capa de aplicación.
  • Mobile: hacer análisis de aplicaciones móbiles.
  • Malware/Spyware Analysis: analizar comportamientos de malware.
  • Risk Audit/Management: análisis de riesgos.
  • Forensics: técnicas forenses.
  • Penetration Testing: tests de penetración.
  • Systems security (user level, kernel, os): aplicación de técnicas de seguridad a nivel sistemas operativos, cloud.
  • Cryptography: testear, crear o romper seguridad relacionada a algoritmos criptográficos o sistemas de cifrados.

No dejen que este mapa, que es tan sólo una representación de las temáticas, los intimide.

Muchas de estos dominios generalmente se ven solapados, otros ya a esta altura los saben o se dan una buena idea si miran con atención, por ejemplo "Desarrollo profesional" y "Análisis de riesgos".

Créditos Henry Jiang. Mapa dominios cyberseguridad

Conclusión

Cada uno arma su propio camino, no hay una forma única de hacer esto. Esto es muy nuevo para todo el mundo. Así como nosotros tomamos decisiones en ese momento para ver como podíamos ir mejorando, ustedes deberán hacer lo mismo.

Hay que entender que probablemente uno no venga con una pasión adentro, está bueno utilizar la curiosidad como motor, probando, buscando, experimentando. Es cuestión de

Hackeá tu propio camino al hacking :)

  • Comenzá progresivamente. No te frustres, todos estuvimos ahí, y eso que te está costando ya lo vas a lograr.
  • No te compares con otros, no tiene sentido. Solo comparate con quien eras hace un par de meses, si mejoraste entonces vas por buen camino.
  • Aprendé idiomas, particularmente inglés ya que en él está el mayor caudal de información del cual aprendimos. Por suerte hay bastante material en español también, pero muchas son traducciones.
  • No pongan afuera la responsabilidad de aprender, está en ustedes. Busquen lo que les sirva, y si no sirve, se cambia.
  • Conocete a vos mismo, entendé que te sirve, si estudiar en tu casa, asistir a eventos, asistir a educación pública/privada, lo que sea que te sirva está bien.

Se ha creado un documento a parte para el glosario aquí.

Cursos gratuitos

Se encuentran cursos gratuitos en todas las siguientes plataformas, los idiomas pueden variar. En el futuro agregaremos links a los cursos más recomendados.

  • Coursera
  • edX
  • Cybrary
  • CodeAcademy
  • Udemy
  • Stanford
  • Cardiff
  • MIT OpenCourseware

Links de gran utilidad en Inglés

Lecturas recomendadas

Todos los libros o su gran mayoría hasta el momento poseen su traducción (si es que no están ya presentados en español), la razón por la cual están listados en inglés se debe a que son más fáciles de encontrar a la hora de comprarlos.

Destacados

  • The Art of Software Security Assessment: Identifying and Preventing Software Vulnerabilities - Mark Dowd

Entendimiento general

Fundamental

  • Operating System Concepts Essentials - Abraham Silberschatz, Peter B. Galvin, Greg Gagne
  • Computer Networks - Andrew S. Tanenbaum

Holístico

  • Accelerate: Building and Scaling High-Performing Technology Organizations - Nicole Forsgren, Jez Humble, Gene Kim
  • The Phoenix Project: A Novel About IT, DevOps, and Helping Your Business Win - Gene Kim, Kevin Behr, George Spafford

Concientización

Podcasts

Instituciones que tratan la seguridad

Películas & Series

Documentales

Canales de YouTube

Eventos públicos

Conferencias

Infosec Twitter

Estas son algunas de las cuentas más activas o útiles que te recomendamos seguir:

Referencias

Penetration Test vs. Red Team Assessment: The Age Old Debate of Pirates vs. Ninjas Continues

Salida laboral

  • Proving grounds (work in progress)
  • ekodating (by ekoparty)

Work in progress