La sofisticación de los ciberdelincuentes organizados ha evolucionado drásticamente en los últimos años, hasta el punto de que ahora no se trata de si las empresas serán pirateadas, sino de cuándo. Por lo tanto, es más importante que nunca que las empresas protejan sus activos más críticos e identifiquen y respondan a los ataques importantes a medida que comienzan. La mejor manera de garantizar esto es observar las defensas de seguridad a través de los ojos de un pirata informático mediante la realización de pruebas de penetración periódicas.
Muchas organizaciones solo consideran una parte de su superficie de ataque cuando consideran una prueba de seguridad, como una única aplicación web o un perímetro de red.
Un profesional capacitado realiza una prueba de penetración para simular un ataque contra una organización y descubrir sus vulnerabilidades de seguridad.
Dedicamos este artículo a analizar en qué consisten las pruebas de penetración, sus tipos, fases y beneficios. Y te dejamos las principales herramientas para realizar pentesting.
Indice
¿Qué son las pruebas de penetración?
La prueba de penetración es un proceso de piratería ética que implica evaluar una aplicación o la infraestructura de una organización para detectar diferentes tipos de vulnerabilidades. Este proceso de prueba de lápiz ayuda a explotar las diversas vulnerabilidades dentro del sistema y las razones de estas vulnerabilidades incluyen ciertas configuraciones incorrectas, arquitectura mal diseñada, código inseguro, etc.
Por lo tanto, al realizar pruebas de lápiz, eventualmente ayuda a identificar vulnerabilidades y el proceso entrega informes procesables que explican claramente cada vulnerabilidad, específicamente cómo explotarlas y cómo solucionarlas. Esencialmente, cada una de las vulnerabilidades identificadas recibe una calificación específica con la que las organizaciones deben planificar la reparación procesable.
Normalmente, una prueba de penetración es una simulación de ataque ético que se realiza para validar la eficacia de los controles de seguridad en un entorno particular y destaca las posibles vulnerabilidades. Este proceso de prueba de penetración implica el uso de varias técnicas manuales o automatizadas para simular un ataque a la seguridad de la información de una organización (en un entorno bien informado para la organización para que no haya pérdida de datos real). El proceso de piratería ética podría ejecutarse desde la infraestructura de la empresa o los empleados dentro de la misma organización para probar la seguridad.
Principalmente, las empresas que almacenan y acceden a datos confidenciales o privados, como bancos, instituciones financieras, proveedores de atención médica, etc., deben adoptar esta forma de prueba para protegerlos de posibles vulnerabilidades. Por lo tanto, las empresas que adoptan las pruebas de penetración tienden a obtener muchos beneficios al aprovechar este método de prueba.
¿Por qué se requieren estas pruebas?
Las pruebas de penetración normalmente evalúan la capacidad de un sistema para proteger sus redes, aplicaciones, puntos finales y usuarios de amenazas externas o internas. También intenta proteger los controles de seguridad y garantiza solo el acceso autorizado.
Las pruebas de penetración son esenciales porque:
- Identifican un entorno de simulación, es decir, cómo un intruso puede atacar el sistema mediante un ataque de sombrero blanco.
- Ayudan a encontrar áreas débiles donde un intruso puede atacar para obtener acceso a las funciones y datos de la computadora.
- Son compatibles para evitar el ataque de sombrero negro y protege los datos originales.
- Estiman la magnitud del ataque a empresas potenciales.
- Proporcionan evidencia para sugerir por qué es importante aumentar las inversiones en el aspecto de seguridad de la tecnología.
¿Quién debe realizar una prueba de penetración?
Uno de los objetivos principales de una prueba de penetración es tener una visión holística de su marco de seguridad. Esto puede ser difícil de lograr si la prueba la realiza un recurso interno.
La mayoría de las regulaciones de cumplimiento no requieren que un tercero realice las pruebas de penetración, pero deben ser probadores de penetración experimentados y estar separados organizativamente del mantenimiento diario de la red que se está probando. Esto lleva a muchas empresas a seleccionar un equipo externo de expertos en seguridad que tengan la experiencia necesaria, pero también una visión imparcial del estado actual de seguridad de la empresa.
Beneficios
Las pruebas de penetración revelarán vulnerabilidades que de otro modo no se descubrirían por otros medios, como un escaneo de vulnerabilidades. El análisis humano manual significa que los falsos positivos se filtran. Además, demuestra qué acceso se puede obtener, así como qué datos se pueden obtener al intentar aprovechar las vulnerabilidades descubiertas de la forma en que lo haría un atacante del mundo real. Esto demuestra de manera efectiva el riesgo real de una explotación exitosa dada cada vulnerabilidad utilizada para obtener acceso.
Las pruebas de penetración también probarán las ciberdefensas de una organización. Se puede implementar para probar la efectividad de los firewalls de aplicaciones web, los sistemas de detección de intrusiones (IDS) y los sistemas de prevención de intrusiones (IPS). Cuando se lleva a cabo una prueba de penetración, estos sistemas deben generar automáticamente alertas y activar los procedimientos internos de la organización que dan como resultado una respuesta de los equipos de operaciones de seguridad interna.
Las pruebas de penetración permiten a las organizaciones cumplir los requisitos de cumplimiento normativo como PCI-DSS y también la ISO 27001.
Finalmente, las pruebas de penetración brindan una opinión experta de un tercero independiente fuera de la organización objetivo. Esto puede ayudar a los equipos de seguridad interna a influir en las decisiones de gestión a su favor y obtener más presupuesto para mejoras de seguridad. Finalmente, las pruebas de penetración proporcionan una opinión experta de un tercero independiente fuera de la organización objetivo. Esto puede ayudar a los equipos de seguridad interna a influir en las decisiones de gestión a su favor y obtener más presupuesto para las mejoras de seguridad.
En definitiva, las pruebas de penetración ayudan a:
- Identificar vulnerabilidades que de otro modo permanecerían sin identificar
- Descubrir nuevas amenazas por posibles atacantes o intrusos
- Identificar vulnerabilidades en tiempo real dentro de los sistemas y aplicaciones web
- Probar la efectividad de los firewalls de aplicaciones web
- Probar ciber -capacidad de defensa de la organización
- Descubrir y mostrar riesgos y vulnerabilidades en tiempo real
- Encontrar cualquier posible inseguridad dentro de la red de infraestructura del sistema o una aplicación.
Tipos
Estos son los diferentes tipos de pruebas de penetración:
Prueba de penetración de la red
En este tipo de pruebas de penetración, la estructura física del sistema se verifica principalmente para identificar riesgos en la red de la organización. En esta prueba, el probador de penetración realiza pruebas en la red de la organización y trata de encontrar fallos en el diseño, operación o implementación de la red de la empresa respectiva.
El evaluador verifica varios componentes de la organización, como computadoras, módems, dispositivos de acceso remoto, para aprovechar las posibles vulnerabilidades.
Prueba de penetración física
Este método de prueba de penetración física se realiza para simular las amenazas del mundo real. El probador de lápiz actúa como un ciberatacante e intenta romper la barrera física de seguridad. Esta prueba se realiza para verificar las vulnerabilidades en controles físicos como cámaras de seguridad, casilleros, barreras, sensores, etc.
Pruebas de penetración de aplicaciones web
Este método de prueba de lápiz se realiza para verificar vulnerabilidades o debilidades dentro de aplicaciones basadas en web. La prueba de penetración web busca cualquier problema de seguridad que pueda ocurrir debido a un desarrollo inseguro debido al diseño o código y vulnerabilidades potenciales identificadas dentro de sitios web y aplicaciones web.
Este tipo de prueba es más necesario para sitios web de compras en línea, aplicaciones bancarias y otros sitios web de comercio electrónico que se ocupan de transacciones en línea.
Pruebas de penetración de redes inalámbricas
Esta forma de prueba de lápiz se realiza para examinar la conexión entre todos los dispositivos, como computadoras portátiles, computadoras, tabletas, teléfonos inteligentes, etc., que están conectados al Wifi de la organización. Esta forma de prueba de lápiz se realiza para evitar cualquier fuga de datos que pueda ocurrir al compartir datos de un dispositivo a otro a través de la red Wifi.
Prueba de penetración de caja negra
En las pruebas de penetración de caja negra, el probador no tiene idea de los sistemas que va a probar. Está interesado en recopilar información sobre la red o el sistema de destino. Por ejemplo, en esta prueba, un evaluador solo sabe cuál debería ser el resultado esperado y no sabe cómo llega el resultado. No examina ningún código de programación.
Tiene las siguientes ventajas:
- El evaluador no tiene por qué ser necesariamente un experto, ya que no exige un conocimiento específico del idioma
- El probador verifica las contradicciones en el sistema real y las especificaciones
- La prueba generalmente se realiza con la perspectiva de un usuario, no del diseñador
Sus desventajas son:
- En particular, este tipo de casos de prueba son difíciles de diseñar.
- Posiblemente, no vale la pena, en caso de que el diseñador ya haya realizado un caso de prueba.
- No conduce todo.
Prueba de penetración de caja blanca
Esta es una prueba completa, ya que el probador ha recibido una amplia gama de información sobre los sistemas y/o la red, como el esquema, el código fuente, los detalles del sistema operativo, la dirección IP, etc. Normalmente se considera como una simulación de un ataque de un fuente interna. También se conoce como prueba estructural, de caja de vidrio, caja transparente y caja abierta.
Las pruebas de penetración de caja blanca examinan la cobertura del código y realizan pruebas de flujo de datos, pruebas de ruta, pruebas de bucle, etc.
Tiene las siguientes ventajas:
- Garantiza que se hayan ejercido todas las rutas independientes de un módulo.
- Asegura que todas las decisiones lógicas se hayan verificado junto con su valor verdadero y falso.
- Descubre los errores tipográficos y comprueba la sintaxis.
- Encuentra los errores de diseño que pueden haber ocurrido debido a la diferencia entre el flujo lógico del programa y la ejecución real.
Prueba de penetración de caja gris
En este tipo de prueba, un probador generalmente proporciona información parcial o limitada sobre los detalles internos del programa de un sistema. Puede considerarse como un ataque de un pirata informático externo que obtuvo acceso ilegítimo a los documentos de la infraestructura de red de una organización.
Tiene las siguientes ventajas:
- Como el probador no requiere el acceso al código fuente, no es intrusivo e imparcial.
- Como existe una clara diferencia entre un desarrollador y un tester, existe el menor riesgo de conflicto personal
- No es necesario que proporcione información interna sobre las funciones del programa y otras operaciones.
Fases
Las siguientes son las siete fases de las pruebas de penetración:
Planificación y preparación
La planificación y preparación comienzan con la definición de las metas y objetivos de las pruebas de penetración.
El cliente y el tester definen conjuntamente las metas para que ambas partes tengan los mismos objetivos y entendimiento. Los objetivos comunes de las pruebas de penetración son:
- Identificar la vulnerabilidad y mejorar la seguridad de los sistemas técnicos.
- Hacer que la seguridad de TI sea confirmada por un tercero externo.
- Incrementar la seguridad de la infraestructura organizacional / personal.
Reconocimiento
El reconocimiento incluye un análisis de la información preliminar. Muchas veces, un evaluador no tiene mucha información más que la información preliminar, es decir, una dirección IP o un bloque de dirección IP. El probador comienza analizando la información disponible y, si es necesario, solicita al cliente más información, como descripciones del sistema, planes de red, etc. Este paso es la prueba de penetración pasiva. El único objetivo es obtener una información completa y detallada de los sistemas.
Descubrimiento
En este paso, es muy probable que un probador de penetración utilice las herramientas automatizadas para escanear los activos de destino en busca de vulnerabilidades. Estas herramientas normalmente tienen sus propias bases de datos que brindan los detalles de las últimas vulnerabilidades. Se divide en:
- Descubrimiento de red: como descubrimiento de sistemas, servidores y otros dispositivos adicionales.
- Descubrimiento de host: determina los puertos abiertos en estos dispositivos.
- Interrogación de servicios: interroga a los puertos para descubrir los servicios reales que se ejecutan en ellos.
Análisis de información y riesgos
En este paso, el probador analiza y evalúa la información recopilada antes de los pasos de prueba para penetrar dinámicamente en el sistema. Debido a la gran cantidad de sistemas y al tamaño de la infraestructura, lleva mucho tiempo. Mientras analiza, el probador considera los siguientes elementos:
- Los objetivos definidos de la prueba de penetración.
- Los riesgos potenciales para el sistema.
- El tiempo estimado necesario para evaluar las posibles fallas de seguridad para la posterior prueba de penetración activa.
Sin embargo, de la lista de sistemas identificados, el evaluador puede optar por probar solo aquellos que contienen vulnerabilidades potenciales.
Intentos de intrusión activos
Este es el paso más importante que debe realizarse con el debido cuidado. Este paso implica la medida en que las vulnerabilidades potenciales identificadas en el paso de descubrimiento poseen los riesgos reales. Este paso debe realizarse cuando se necesita una verificación de vulnerabilidades potenciales.
Para aquellos sistemas que tienen requisitos de integridad muy altos, la vulnerabilidad y el riesgo potenciales deben considerarse cuidadosamente antes de llevar a cabo procedimientos de limpieza críticos.
Análisis final
Este paso considera principalmente todos los pasos realizados hasta ese momento y una evaluación de las vulnerabilidades presentes en forma de riesgos potenciales. Además, el evaluador recomienda eliminar las vulnerabilidades y los riesgos. Sobre todo, el evaluador debe asegurar la transparencia de las pruebas y las vulnerabilidades que reveló.
Preparación de informes
La preparación del informe debe comenzar con procedimientos de prueba generales, seguidos de un análisis de vulnerabilidades y riesgos. Los riesgos altos y las vulnerabilidades críticas deben tener prioridades y luego seguir el orden inferior.
Sin embargo, al documentar el informe final, se deben considerar los siguientes puntos:
- Resumen general de las pruebas de penetración.
- Descripción de cada paso y la información recopilada durante la prueba de penetración.
- Detalles de todas las vulnerabilidades y riesgos descubiertos.
- Detalles de limpieza y fijación de los sistemas.
- Sugerencias para la seguridad futura.
¿Cuál es la diferencia entre las pruebas de penetración y la evaluación de vulnerabilidades?
Las pruebas de penetración y las evaluaciones de vulnerabilidad deben formar parte del programa de seguridad de una organización.
Las evaluaciones de vulnerabilidad deben realizarse con frecuencia en toda la infraestructura y las aplicaciones. Una evaluación de vulnerabilidades comprueba las vulnerabilidades conocidas y las configuraciones incorrectas de seguridad para las que se ha desarrollado un complemento con el fin de realizar una comprobación específica para la que está escrito.
No se enfoca en explotar vulnerabilidades, los resultados de encadenar múltiples vulnerabilidades juntas, o tiene la capacidad de usar la información recopilada de manera inteligente para innovar un ataque personalizado. El alcance de una evaluación de vulnerabilidades normalmente será mucho mayor e incluirá una lista completa de vulnerabilidades conocidas en riesgo clasificadas con una puntuación CVSS en una gama completa de objetivos. Además, como una evaluación de vulnerabilidad no valida los resultados, siempre hay lugar para falsos positivos.
Las pruebas de penetración se centran en objetivos. A menudo se dirige a una aplicación específica o componente del sistema dentro de un alcance acordado en lugar de todo como un todo.
A diferencia de una evaluación de vulnerabilidades, cuando se realiza una prueba de penetración, las vulnerabilidades se descubren mediante un sondeo manual exhaustivo utilizando un conjunto de herramientas personalizado que de otro modo no se descubriría en una evaluación de vulnerabilidades.
Además, las pruebas de penetración requieren que el probador de penetración explote activamente las vulnerabilidades descubiertas. A menudo, se explotan múltiples vulnerabilidades para obtener acceso con éxito. Requiere una forma de pensar inteligente y creativa de modo que el evaluador sea capaz de encadenar de manera creativa las vulnerabilidades para aprovechar múltiples vulnerabilidades al mismo tiempo, y en sinfonía, con el fin de obtener acceso a un objetivo.
Razones para invertir en pruebas de penetración
Estos son los principales motivos por lo que realizar pruebas de penetración:
1. Encuentra vulnerabilidades graves antes de que lo haga un atacante
La razón principal para invertir en una prueba de penetración es tener la oportunidad de encontrar y corregir las vulnerabilidades de tu red antes de que lo haga un delincuente. Una prueba de penetración va más allá de las vulnerabilidades «en papel».
Es posible que haya parches necesarios en tu red que se pueden descubrir mediante una evaluación de riesgos o un análisis de vulnerabilidades. Pero esos no tienen en cuenta la extensa investigación y las tácticas que utilizará un hacker persistente. Las pruebas de penetración son una vista en profundidad y de alto nivel (aunque dirigida) de lo que está sucediendo en tu empresa, tanto virtual como físicamente, que te deja expuesto a las amenazas de ciberseguridad.
2. Entrena a tu equipo
Hablar en términos realistas en lugar de hipotéticos puede hacer que la ciberseguridad tenga un impacto en todo tu equipo, desde los empleados de recepción hasta el equipo de TI. Esto también le ayuda a saber dónde concentrar los esfuerzos de capacitación de sus empleados. Tal vez eso signifique realizar un taller para compartir consejos sobre cómo detectar un correo electrónico de phishing, o enviar por correo electrónico ataques de phishing simulados cuando la capacitación en línea no logra mantener alta la conciencia de los empleados.
3. Tiempos de respuesta de seguridad eficientes
Saber dónde tu equipo responde rápidamente y las áreas para mejorar tu tecnología de seguridad o la capacitación de los empleados puede brindarte una estrategia de seguridad más enfocada. Las pruebas de penetración te dejan un resumen de las vulnerabilidades y pasos procesables para realizar mejoras. Puedes trabajar para resolver las brechas de seguridad, sabiendo cuáles deben ser tus principales prioridades al combatir posibles ataques. Esto te ayudará a enfocar tu inversión en ciberseguridad.
4. Mantener el cumplimiento
Muchas industrias tienen regulaciones de seguridad mínimas, algunas de las cuales incluyen pruebas de penetración requeridas. Por ejemplo, el Estándar de seguridad de datos de la industria de tarjetas de pago, que proporciona requisitos mínimos de seguridad para manejar la información de la tarjeta del cliente, incorporó recientemente las pruebas de penetración en el proceso oficial. Incluso cuando estas pruebas son un estándar de la industria, los beneficios adicionales que pueden proporcionar hacen que el requisito sea práctico y beneficioso para la empresa en general.
5. Protege la reputación de tu empresa
Dejar a tu empresa expuesta a ataques, sin darse cuenta de las posibles brechas en la capacitación y la tecnología, puede resultar en una pérdida de información confidencial. Ya sea que se trate de datos de la empresa o del cliente, puede provocar una pérdida de confianza de tus clientes que, en última instancia, dañe la reputación de tu empresa.
Las pruebas de penetración pueden ayudarte a encontrar esas brechas antes de que sea demasiado tarde, y a un coste significativamente menor. Mostrará cuán exitoso podría ser el ataque en tu red y cuánto tiempo le lleva a tu equipo detectar su presencia. Está personalizado para tus sistemas y tecnología, de la misma manera que lo sería un ataque avanzado.
6. Prueba nuevas tecnologías o parches
Si has instalado software de nueva tecnología o te preocupan los parches para vulnerabilidades descubiertas anteriormente, puede ser beneficioso invertir en una prueba de penetración para verificar que se han realizado las mejoras necesarias y que tu red es más segura como resultado.
Principales herramientas para pruebas de penetración
Aquí tienes las principales herramientas para realizar pruebas de penetración.
SQLMap
Es una herramienta de código abierto utilizada en pruebas de penetración para detectar fallos con una inyección SQL en una aplicación. Automatiza el proceso de prueba de penetración y esta herramienta es compatible con muchas plataformas como Windows, Linux, Mac, etc.
W3af
El marco de auditoría y ataque de aplicaciones web (W3af) se utiliza para encontrar debilidades o vulnerabilidades en aplicaciones basadas en web. Se utiliza para eliminar amenazas como DNS, envenenamiento de caché, manejo de cookies, soporte de proxy, etc.
Wireshark
Esta es una herramienta de código abierto y está disponible para muchos sistemas operativos como Windows, Solaris, Linux, etc. Con esta herramienta, el probador de lápiz puede capturar e interpretar fácilmente paquetes de red. Esta herramienta proporciona opciones tanto de análisis fuera de línea como de captura en vivo.
Metasploit
Es una de las herramientas de prueba de penetración más utilizadas en el mundo. Es una herramienta de código abierto que permite al usuario verificar y administrar evaluaciones de seguridad, ayuda a identificar fallos, configurar una defensa, etc.
NMAP
También se denomina mapeador de redes y se utiliza para encontrar las lagunas o problemas en el entorno de red de la organización. Esta herramienta también se utiliza con fines de auditoría.
Nessus
Es una de las herramientas de prueba de lápiz más confiables de muchas empresas en todo el mundo. Ayuda a escanear direcciones IP, sitios web y completar búsquedas de datos confidenciales.
¿Cuál es el precio de las pruebas de penetración?
En este punto, es posible que solo desees saber la cantidad de euros que tendrás que desembolsar para realizar una prueba de penetración. Sin embargo, para comprender realmente el coste de las pruebas de penetración, debes comprender qué es y los tipos de pruebas de penetración disponibles para tomar una decisión informada. Por frustrante que pueda parecer la respuesta “depende”, hay muchos factores que determinan los costes de las pruebas de penetración.
Las pruebas de penetración pueden costar entre 4,000 y 100,000 euros. En promedio, una prueba de penetración profesional de alta calidad puede costar entre 10,000 y 30,000 euros. Muchos de estos costes están determinados por factores como:
- Tamaño: una organización más pequeña y menos compleja ciertamente costará menos que la de una gran empresa.
- Complejidad: cuantas más aplicaciones, dispositivos y sistemas tenga que probar un pirata informático, más costará una prueba de lápiz. El coste de las pruebas de penetración para las empresas que tienen aplicaciones móviles, servidores internos y externos y otros sistemas informáticos complejos aumentará el presupuesto. La cantidad de redes, aplicaciones, direcciones IP, partes, instalaciones, etc. involucradas determinan qué tan compleja debe ser la prueba.
- Alcance: estrechamente entrelazado con la complejidad está el alcance de la prueba que deseas realizar. Puede haber elementos específicos que te preocupen más y, por tanto, deseas que el profesional de la ciberseguridad dedique más tiempo a realizar pruebas. No obstante, tener un alcance claro es un parámetro prudente que se debe establecer antes de que comience una prueba para garantizar que los costes no se salgan de control.
- Metodología: Dependiendo del tipo de herramientas y prácticas que utilice un pirata informático, esto puede aumentar el coste de una prueba de penetración. Sin embargo, una herramienta más cara o una metodología más lenta puede ser una forma eficaz de producir resultados de mayor calidad. Podría ser útil tener una prueba más completa la primera vez que realices una prueba de penetración.
- Experiencia: un profesional de la ciberseguridad con más experiencia va a costar más que uno con menos años en su haber. Nuevamente, piensa en los factores de coste previos para decidir elegir un profesional de ciberseguridad con más o menos experiencia. Si tienes una pequeña empresa con un sistema de red simple, puede ser aconsejable que un profesional más barato y con menos experiencia realice la prueba.
- Pruebas externas / internas: aunque la mayoría de las pruebas de lápiz se realizarán fuera del sitio en las pruebas de seguridad de la red, el coste de las pruebas de penetración puede aumentar si necesitas una prueba en el sitio o interna.
- Remediación: Finalmente, y quizás lo más importante, ¿el profesional de ciberseguridad proporcionará solo un informe sin más sugerencias sobre acciones ejecutables? Si el profesional simplemente entrega el resultado de la prueba sin mostrar cómo mejorar tu sistema o prevenir infracciones. Es importante tener en cuenta si la empresa proporcionará servicios de remediación o una nueva prueba después de implementar sugerencias / comentarios con los costes.