Los programas de bug bounty (recompensas por errores) y penetration testing (pruebas de penetración son dos enfoques distintos para las pruebas de seguridad, cada uno con sus propios beneficios y consideraciones. Si bien algunos pueden verlos como métodos opuestos, en realidad pueden funcionar en conjunto para mejorar la postura de seguridad de una organización. Es importante comprender las diferencias entre los dos y evaluar qué enfoque se alinea mejor con las metas, el objetivo y los recursos específicos de la organización.
En primer lugar, ¿qué es bug bounty (recompensa por errores) y qué es penetration testing (prueba de penetración)?
Bug Bounty: las empresas permiten que los hackers éticos, investigadores de ciberseguridad y pentesters de todo el mundo reporten los errores y brechas de seguridad que encuentren. Si se considera que un error puede comprometer la seguridad de su sistema, la empresa paga a la persona que envió la vulnerabilidad reportada, lo que generalmente se denomina bug bounty (recompensa por errores).
Penetration Testing: una organización contrata a una empresa como DEEP SECURITY para realizar una prueba de su entorno e informar sobre cualquier problema de seguridad.
Las pruebas de penetración se pueden realizar en cualquier sistema, aplicación, red o infraestructura. También se pueden realizar en tres tipos diferentes de pruebas, que incluyen:
Un pentest (prueba de penetración) se lleva a cabo dentro de un período de tiempo predeterminado, que generalmente abarca unas pocas semanas por semestre o por año. La duración de la prueba se basa en la complejidad del sistema de destino y el nivel deseado de minuciosidad en la evaluación de seguridad. Proporciona comentarios de seguridad específicos para una fecha determinada, lo que permite a las organizaciones programar pruebas de acuerdo con su ciclo de lanzamiento, evaluar su postura de seguridad y priorizar las medidas de seguridad con regularidad.
Por otro lado, un programa bug bounty (recompensas por errores) a menudo está en curso durante todo el año, sin una fecha de finalización fija. Las pruebas continuas aseguren el monitoreo continuo del perímetro del sistema. Los hacker éticos independientes, también conocidos como cazadores de errores, examinan las nuevas implementaciones a medida que se presentan.
En algunos casos, los investigadores de seguridad pueden invertir mucho tiempo en un programa de bug bounty (recompensas por errores) si tienen un gran interés en el proyecto debido a desafíos técnicos, recompensas atractivas o fascinación personal con el tema.
Las motivaciones detrás de un pentest (prueba de penetración) y de un programa de bug bounty (recompensa por errores) no son las mismas.
Los objetivos de un pentest (pruebas de penetración) son bastante diferentes, se utilizan para:
Los objetivos de un programa de bug bounty (recompensa por errores) son:
Un programa de
pentest
(prueba de penetración) es más adecuado para sistemas relativamente nuevos con respecto a la seguridad como aplicaciones que van a salir por primera vez a producción; mientras que un programa de
bug bounty
(recompensas por errores) se recomiendan para perímetros robustos, que ya han pasado por varias pruebas de
pentest.
1.
Pentest (prueba de penetración), el mejor acercamiento a los perímetros relativamente nuevos
Un programa de pentest (prueba de penetración) es la opción óptima para perímetros de reciente creación que requieren validación de sus medidas de seguridad, tales como:
En el caso de que el activo no se haya sometido a ninguna prueba previa, es muy probable que los investigadores de seguridad descubran numerosas vulnerabilidades. A través de un
pentest
(prueba de penetración), la organización puede abordar las vulnerabilidades más evidentes a un costo predeterminado. Por el contrario, con un programa de
bug bounty
(recompensa por errores), cada vulnerabilidad se informará individualmente, lo que daría como resultado que se pagarán incentivos por separado. Aunque el presupuesto requerido para un programa de
bug bounty
(recompensa por errores) sería significativamente mayor, la cantidad total de vulnerabilidades identificadas seguiría siendo la misma.
2. Bug Bounty (recompensa de errores), el enfoque ideal para activos maduros
Los programas de bug bounty (recompensas por errores) están diseñados específicamente para activos maduros que ya se han sometido a pruebas y han establecido medidas de seguridad. Cuando una aplicación o sistema ha sido probado a fondo o sus defensas han sido fortalecidas por el equipo de Blue Team, se espera que tenga vulnerabilidades mínimas.
Sin embargo, esto no implica que el activo sea completamente inmune a las vulnerabilidades. Todos los activos digitales poseen inherentemente debilidades explotables, aunque es posible que aún no se hayan descubierto. Aquí es donde la comunidad de hackers éticos juega un papel crucial.
En un bug bounty (programa de recompensas por errores), los investigadores pueden dedicar varios meses a buscar activamente vulnerabilidades dentro de un alcance determinado. Estos tienen la oportunidad de descubrir vulnerabilidades complejas que pueden haber pasado desapercibidas durante un pentest (prueba de penetración) tradicional que generalmente dura sólo unas pocas semanas.
Lanzar un programa de
bug bounty (recompensa por errores) en un alcance inmaduro puede resultar potencialmente con mayores costos para la empresa, especialmente si se descubren numerosas vulnerabilidades que podrían haberse abordado a través de una prueba de penetración a un costo fijo. Por otro lado, los programas de recompensas por errores son ideales para probar entornos maduros donde las vulnerabilidades ocultas son más complejas y requieren más tiempo para encontrarlas
Una distinción clave entre un pentest (prueba de penetración) y un programa de bug bounty (recompensa por errores) radica en la cantidad de investigadores involucrados en cada programa, lo que afecta significativamente su efectividad.
Por lo general, un pentest (prueba de penetración) implica la participación de uno a tres pentesters, teniendo en cuenta el presupuesto asignado y la importancia del proyecto. Por otro lado, un programa de bug bounty (recompensa por errores) puede movilizar a toda la comunidad de hackers éticos, lo que podría involucrar a cientos de personas. Esto abre un amplio grupo de investigadores de seguridad con diversas habilidades y experiencia.
Pentest (pruebas de penetración) y Bug Bounty (recompensa por errores) tienen sus propias fortalezas y debilidades, especialmente en sus formas convencionales. El primero, tiene la ventaja de ser más confidencial y la capacidad de evaluar ámbitos que no son accesibles externamente; mientras que el segundo ofrece un grupo más grande de recursos humanos y un modelo de pago basado en resultados que las organizaciones encuentran atractivos.
Sin embargo, estas distinciones no están rígidamente definidas. Existe una amplia gama de enfoques que se encuentran entre el pentest tradicional y los programas públicos de recompensas por errores. Estas variaciones permiten una mejor personalización en términos de presupuesto, confidencialidad, alcance y habilidades requeridas.
Consideramos específicamente los siguientes matices:
Algunos ejemplos de las vulnerabilidades reportadas por el equipo de DEEP SECURITY se presentan a continuación:
Los enfoques de
pentest
(pruebas de penetración) y
bug bounty
(recompensa por errores) tienen sus propias fortalezas y no son intrínsecamente superiores entre sí. De hecho, tratar de compararlos como opciones opuestas puede no ser significativo. En cambio, cada método tiene sus propias características específicas que lo hacen más adecuado en ciertas situaciones. Es importante considerar estas especificaciones y elegir el enfoque que mejor se alinee al contexto y los objetivos de la organización.
1.
Pentesting (prueba de penetración), es idóneo para:
2. Bug bounty (recompensa por errores) es ideal para:
Gracias por suscribirte a nuestro boletín.
Parece que hubo un error. Por favor reintenta más tarde.
Deep Security del Perú S.A.C - RUC 20600837622 | Realizado por WSI - Dinámica Digital