La carrera del pentester 

¿Sabes a qué se dedica un pentester? Esta una profesión clave en el ámbito de la ciberseguridad. En este post de lo explicamos.

Desarrollo profesional

Antes de nada, un pentester es un profesional en ciberseguridad que ejecuta ataques dirigidos en la infraestructura IT de una empresa o de cualquier sistema informático. Estos ataques están autorizados, es decir, las empresas piden estos servicios para comprobar las vulnerabilidades que tiene su infraestructura, con una finalidad ética y sin comprometer de verdad a esta empresa. 

Esto puede significar que es necesaria una certificación o un título relacionado con ciberseguridad para poder ejercer en este ámbito. Pero algunos profesionales de este ámbito no tienen una formación reglada para ejercer como pentester. 

¿Qué hace un pentester? 

Su objetivo principal es ayudar a descubrir vulnerabilidades y recomendar soluciones a estas fallas tanto en la red digital como física, para evitar que los descubra y lo ataque un hacker de verdad. 

Así que un pentester tiene que manejar muchas herramientas técnicas como Nmap, Wireshark o para las pruebas de penetración que les ayuden a buscar estas vulnerabilidades. Además, también documentan los procesos y actividades realizada para realizar luego un informe de toda la auditoría para sus compañeros y clientes. 

Estas son algunas de sus funciones: 

  • Realización de evaluaciones de vulnerabilidad 
  • Escaneo de redes con herramientas como Nmap 
  • Realización de un análisis de la estructura y los protocolos de red con herramientas como Wireshark 
  • Buscar las vulnerabilidades más típicas en los sistemas informáticos, como los de OWASP TOP 10 
  • Revisar grandes cantidades de datos relacionados con la empresa a atacar. Buscando contraseñar y usuarios 
  • Realización de escalada de privilegios, movimientos laterales, pivotamientos y post-explotación 

Características típicas de un pentester

Ahora que sabemos bien qué hace un pentester, es también importante saber si el pentesting es el tipo de trabajo más compatible contigo. Esto no es una regla estricta, pero las cualidades típicas son: 

Capacidad para resolver problemas

Un buen pentester es aquella persona que tiene mucha tenacidad por tal de resolver los problemas. Queriendo llegar a la raíz del problema y pensar de manera creativa. 

Creatividad

Para poder defenderte de un atacante, tienes que actuar como uno. Por lo que esto requiere poder pensar más allá de escanear las vulnerabilidades típicas. 

Curiosidad

En ciberseguridad uno no para de aprender nuevas tecnologías, vulnerabilidades y conceptos. Es una carrera muy bonita, pero también muy sacrificada. 

Dentro del pentesting hay varias disciplinas, ya que te puedes especializar en el pentesting de páginas web o bien dentro de una red. 

De forma general, las habilidades técnicas básicas son: 

  • Conocimiento en redes 
  • Conocimientos en Linux 
  • Conocimientos en Windows y Powershell 
  • Bash scripting 
  • Otro lenguaje de scripting, recomiendo Python ya que es muy versátil 

Estos conceptos pueden llevar muchos meses para estudiarlos. Además de que hay muchos cursos de ciberseguridad con los que tienes una guía mucho más focalizada y disfrutar de manera más enriquecedora este tipo de carreras. 

¿Qué tiene que saber un pentester web? 

Ahora bien, si nos centramos en un pentester web, debe tener conocimientos en varias tecnologías web: 

  • HTML, CSS y JavaScript: los pilares de la construcción de sitios web, HTML, CSS y JavaScript son fundamentales para entender el funcionamiento básico de las aplicaciones web. 
  • Lenguajes de Programación de Servidor: conocer lenguajes como PHP, Python, Ruby, Node.js y Java, que se utilizan comúnmente en el lado servidor de las aplicaciones web, es vital para comprender la lógica subyacente y detectar vulnerabilidades. 
  • Frameworks y Bibliotecas Web: los pentesters deben estar familiarizados con populares frameworks, como Django, Flask, Ruby on Rails, Express.js, React, Angular y Vue.js, ya que pueden ser vulnerables. 
  • Protocolos y Tecnologías de Comunicación: trabajar con protocolos como HTTP, HTTPS, REST y SOAP, y tecnologías relacionadas, como JSON y XML. 
  • Bases de Datos: conocer lenguajes de consulta como SQL y NoSQL, y sistemas de gestión de bases de datos populares como MySQL, PostgreSQL, MongoDB y Oracle, puede ser útil para identificar inyecciones de SQL. 
  • Gestión de Contenido Web: Ffmiliarizarse con sistemas de gestión de contenido web como WordPress, Drupal y Joomla. 
  • Tecnologías de Front-End: entender tecnologías de front-end como jQuery, Bootstrap, ReactJS y AngularJS puede ayudar a descubrir vulnerabilidades relacionadas con el lado cliente de las aplicaciones web. 
  • Web Services y APIs: con web services y API, incluyendo RESTful, SOAP y GraphQL. 

El pentesting es una carrera de constante aprendizaje, por tanto, es esencial que te guste, ya que la ciberseguridad no para de cambiar y evolucionar, y es necesario ir a la par con este avance. 

Sigue leyendo