¿Cuál es la diferencia entre las pruebas de vulnerabilidad y las pruebas de penetración?

Un proceso que a menudo se pasa por alto pero que es muy importante en el desarrollo de cualquier servicio de Internet es probarlo en busca de vulnerabilidades, saber si esas vulnerabilidades son realmente explotables en su entorno particular y, por último, saber cuáles son los riesgos de esas vulnerabilidades para su empresa o lanzamiento del producto. Estos tres procesos diferentes se conocen como evaluación de vulnerabilidad, prueba de penetración y análisis de riesgo. Conocer la diferencia es fundamental al contratar una empresa externa para probar la seguridad de su infraestructura o un componente particular de su red.

Examinemos las diferencias en profundidad y veamos cómo se complementan entre sí.

Evaluación de vulnerabilidad

Las evaluaciones de vulnerabilidad a menudo se confunden con las pruebas de penetración y a menudo se usan indistintamente, pero están muy separadas.

Las evaluaciones de vulnerabilidad se realizan mediante el uso de un paquete de software estándar, como Nessus u OpenVas para escanear una dirección IP o un rango de direcciones IP en busca de vulnerabilidades conocidas. Por ejemplo, el software tiene firmas para el error Heartbleed o parches faltantes del servidor web Apache y alertará si se encuentra. Luego, el software produce un informe que enumera las vulnerabilidades encontradas y (según el software y las opciones seleccionadas) dará una indicación de la gravedad de la vulnerabilidad y los pasos básicos de remediación.

Es importante tener en cuenta que estos escáneres utilizan una lista de vulnerabilidades conocidas , lo que significa que la comunidad de seguridad, los piratas informáticos y los proveedores de software ya los conocen. Existen vulnerabilidades desconocidas para el público en general y estos escáneres no las encontrarán.

Prueba de penetración

Muchos “probadores de penetración profesionales” en realidad solo ejecutarán un análisis de vulnerabilidad, empaquetarán el informe en una bonita y bonita reverencia y lo llamarán un día. No, este es solo un primer paso en una prueba de penetración. Un buen probador de penetración toma el resultado de un escaneo de red o una evaluación de vulnerabilidad y lo lleva a 11: sondea un puerto abierto y ve qué puede explotarse.

Por ejemplo, supongamos que un sitio web es vulnerable a Heartbleed. Muchos sitios web todavía lo son. Una cosa es ejecutar un escaneo y decir “eres vulnerable a Heartbleed” y algo completamente diferente para explotar el error y descubrir la profundidad del problema y descubrir exactamente qué tipo de información podría revelarse si se explotara. Esta es la principal diferencia: el sitio web o el servicio en realidad están siendo penetrados, tal como lo haría un hacker.

Similar a un análisis de vulnerabilidad, los resultados generalmente se clasifican según la gravedad y la explotabilidad con los pasos de corrección proporcionados.

Las pruebas de penetración se pueden realizar utilizando herramientas automatizadas, como Metasploit, pero los probadores veteranos escribirán sus propios exploits desde cero.

Análisis de riesgo

Un análisis de riesgo a menudo se confunde con los dos términos anteriores, pero también es un animal muy diferente. Un análisis de riesgos no requiere herramientas o aplicaciones de escaneo: es una disciplina que analiza una vulnerabilidad específica (como una línea de pedido de una prueba de penetración) e intenta determinar el riesgo, incluidos los financieros, de reputación, de continuidad del negocio, regulatorios y otros. – a la empresa si la vulnerabilidad fuera explotada.

Se consideran muchos factores al realizar un análisis de riesgos: activos, vulnerabilidad, amenaza e impacto para la empresa. Un ejemplo de esto sería un analista tratando de encontrar el riesgo para la compañía de un servidor que es vulnerable a Heartbleed.

El analista primero miraría el servidor vulnerable, dónde se encuentra en la infraestructura de red y el tipo de datos que almacena. Un servidor ubicado en una red interna sin conectividad externa, que no almacena datos pero es vulnerable a Heartbleed tiene una postura de riesgo muy diferente a la de un servidor web orientado al cliente que almacena datos de tarjetas de crédito y también es vulnerable a Heartbleed. Un análisis de vulnerabilidad no hace estas distinciones. Luego, el analista examina las amenazas que probablemente exploten la vulnerabilidad, como el crimen organizado o las personas con información privilegiada, y construye un perfil de capacidades, motivaciones y objetivos. Por último, se determina el impacto para la empresa, específicamente, ¿qué cosa mala le sucedería a la empresa si una red de delincuencia organizada explotara Heartbleed y adquiriera los datos del titular de la tarjeta?

Un análisis de riesgo, cuando se complete, tendrá una calificación de riesgo final con controles de mitigación que pueden reducir aún más el riesgo. Los gerentes de negocios pueden tomar la declaración de riesgo y los controles de mitigación y decidir si implementarlos o no.

Los tres conceptos diferentes explicados aquí no son exclusivos entre sí, sino que se complementan entre sí. En muchos programas de seguridad de la información, las evaluaciones de vulnerabilidad son el primer paso: se utilizan para realizar amplios barridos de una red para encontrar parches faltantes o software mal configurado. A partir de ahí, uno puede realizar una prueba de penetración para ver qué tan explotable es la vulnerabilidad o un análisis de riesgo para determinar el costo / beneficio de corregir la vulnerabilidad. Por supuesto, tampoco necesita realizar un análisis de riesgos. El riesgo puede determinarse en cualquier lugar donde exista una amenaza y un activo presente. Puede ser un centro de datos en una zona de huracanes o documentos confidenciales en una papelera.

Es importante saber la diferencia: cada uno es significativo a su manera y tiene propósitos y resultados muy diferentes.

No hay nada como las pruebas de vulnerabilidad, más bien es una evaluación de vulnerabilidad.

Existen auditorías especiales llamadas auditorías de evaluación de vulnerabilidad y pruebas de penetración (VAPT).

Aquí, en la evaluación de vulnerabilidades, los investigadores de seguridad encuentran el alcance de las vulnerabilidades, ya sea manualmente o usando algunas herramientas automatizadas. Aquí el alcance es solo encontrar las vulnerabilidades críticas y no críticas.

En las pruebas de penetración, tenemos que penetrar las vulnerabilidades encontradas en la etapa anterior, es decir, la evaluación de vulnerabilidad.

Las pruebas de aplicaciones web, especialmente en aplicaciones que manejan información confidencial, requieren un enfoque integral que alcance vulnerabilidades más allá de lo que OWASP o WASC han descrito. Ahí es donde las pruebas de penetración manual se vuelven críticas. Los siguientes son ejemplos de fallas de lógica de negocios que las herramientas automatizadas perderían.

– Un sitio de comercio electrónico permite a los usuarios agregar artículos al carrito, ver una página de resumen y luego pagar. ¿Qué pasaría si pudiera volver a la página de resumen, mantener su misma sesión válida e inyectar un costo menor para un artículo y completar la transacción de pago?
-¿Puede un usuario mantener un artículo infinitamente en el carrito de compras y evitar que otros lo compren?
-¿Puede un usuario bloquear un artículo en el carrito de compras a un precio con descuento y comprarlo después de meses?
-¿Qué pasa si un usuario reserva un artículo a través de una cuenta de fidelidad y obtiene puntos de fidelidad pero cancela antes de que se pueda completar la transacción?

Aquí hay una guía detallada si quieres

Las pruebas de vulnerabilidad y las pruebas de penetración, ambas tienen su propia importancia en sus respectivos niveles.

El informe de prueba de penetración consta de una lista de vulnerabilidades detectadas por alguna herramienta de escaneo de vulnerabilidades. Está desarrollado para explotar principalmente las debilidades de sus sistemas. Para la prueba de penetración, se requieren varios niveles de experiencia dentro de su alcance de sistemas.

Una prueba de vulnerabilidad descubre vulnerabilidades conocidas en sus sistemas y produce un informe sobre exposiciones al riesgo. Se puede automatizar. Se utiliza para mantener la seguridad y proteger su información y datos confidenciales. En resumen, se puede decir que un técnico ejecuta un análisis de vulnerabilidad mientras que un hacker realiza una prueba de penetración.

Hay un conjunto estándar de matrices que se utiliza para realizar pruebas de penetración, estas se realizan en un entorno dedicado y pueden ser máquinas de alta gama. Una de las pruebas sería llegar al servidor con 1k usuarios simultáneos. Otros serían inyecciones SQL, por ejemplo. Puede estar jugando con la red, etc. (prueba de ping). El objetivo de las pruebas de penetración es encontrar vulnerabilidades en el sistema.

Hay herramientas especiales para hacer esto, depende del ORG cómo lo hacen o contratan a terceros para realizar esta prueba.

Es el rendimiento generalmente en grandes ERP o aplicaciones web sensibles que almacenan datos cruciales del usuario, por ejemplo, datos de nómina.

HTH

En general, encontrará que muchas personas reconocen que el Análisis de vulnerabilidades y las Pruebas de penetración dan el mismo resultado. Pero en realidad, ambos son muy diferentes entre sí en términos de sus objetivos y otros medios. Así que solo revise este blog Promisec que le brinda la diferencia exacta entre el Análisis de Vulnerabilidad y la Prueba de Penetración para que pueda elegir lo mejor para sus puntos finales.

Vulnerabilidad: solo encuentre el problema y luego no lo explote, deténgalo

Penetración: encuentre el problema y explótelo para obtener acceso al sistema / red

Gracias,

Uday Datrak

Habilidades de Black Hat Hacker | Codificación segura | Revisión de código seguro | Automatización de seguridad

Youtube: (Uday Datrak))

Linkedin: https://www.linkedin.com/in/uday