Blog Layout

Bug Bounty vs Penetration Testing: ¿Cuál es el enfoque correcto para tu organización?

August 8, 2023
Un fondo blanco con algunas líneas.
Una langosta verde en una rama, y el mensaje de pruebas de penetración vs bug bounty


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:


Una tabla que muestra el cuadro negro, el cuadro gris y el cuadro blanco.

Diferencias entre Pentest y Bug Bounty



Pentest vs Bug Bounty: distintas duraciones


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.


Pentest vs Bug Bounty: distintas necesidades


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:


  1. Evaluar el nivel de seguridad digital de un activo en un momento dado.
  2. Detectar posibles vulnerabilidades que puedan estar ocultas en el activo.
  3. Conducir a certificaciones, que son esenciales para cumplir con ciertos estándares, como SOC2 e ISO 27001, o requisitos contractuales, por ejemplo, como parte de una fusión-adquisición.


Los objetivos de un programa de bug bounty (recompensa por errores) son:


  1. Proporcionan un seguimiento continuo de un activo, lo que garantiza que esté bajo un escrutinio constante en busca de posibles vulnerabilidades. Este enfoque permite que las organizaciones se mantengan vigilantes y proactivas al abordar los problemas de seguridad.
  2. Permiten realizar pruebas exhaustivas del activo, enfocándose específicamente en vulnerabilidades complejas que pueden haberse pasado por alto en evaluaciones anteriores.


Pentest vs Bug Bounty: distinto público objetivo 


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:


  • Una nueva aplicación o sitio web que nunca antes ha sido auditado.
  • Una versión nueva posiblemente contenga nuevas vulnerabilidades.


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


Pentest vs Bug Bounty: conoce el número de investigadores involucrados


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 as a Service y Private Bug Bounty: soluciones adaptables y versátiles que permiten mejor adaptación y personalización en las metodologías de prueba de seguridad


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:


  • Pentest as a service (pruebas de penetración como servicio): este servicio no lo realice una consultora o un proveedor de servicios estándar, sino que el pentest (prueba de penetración) es realizado por una plataforma que involucra a su comunidad de investigadores y hackers éticos.


  • Private Bug Bounty (programas privados de recompensas por errores): es un enfoque controlado y solo participan organizaciones que fueron invitadas. En este servicio, la organización establece el alcance, las reglas y las recompensas para el programa de bug bounty (recompensas por errores) tal es el caso de los servicios que brinda DEEP SECURITY y su comunidad de cazadores seleccionados. 


Algunos ejemplos de las vulnerabilidades reportadas por el equipo de DEEP SECURITY se presentan a continuación:


Una captura de pantalla de un sitio web de Netflix que muestra una lista de personas.

Netflix - Responsible Vulnerability Disclosure

https://help.netflix.com/en/node/6657

Una captura de pantalla de una vulnerabilidad de omisión del límite de inicio de sesión del portal de invitados del motor de servicios de identidad de Cisco.

Cisco - Identity Services Engine Guest Portal Login Limit Bypass Vulnerability

https://www.cisco.com/c/en/us/support/docs/csa/cisco-sa-20171115-ise.html

Entre pentest o bug bounty, ¿qué enfoque es correcto para tu organizació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:

  • Evaluar la seguridad digital de un producto en un momento específico.
  • Realización de pruebas en objetivos que no son accesibles desde el exterior.
  • Cumplir con los requisitos de cumplimiento y obtener certificaciones de seguridad.
  • Realización de evaluaciones iniciales en alcances más nuevos para identificar y abordar vulnerabilidades importantes dentro de un presupuesto predeterminado, antes de pasar a un enfoque de recompensa por errores.


2. Bug bounty (recompensa por errores) es ideal para:

  • Probar un activo continuamente.
  • Identificar vulnerabilidades críticas en profundidad, más difíciles y lentas de encontrar.
  • Optimizar la investigación multiplicando habilidades y recursos humanos gracias a la comunidad de hackers éticos.
  • Probar los perímetros maduros, por ejemplo, que han sido probados de antemano.


Un fondo azul con dos manos y las palabras
4 de septiembre de 2023
¿Por qué se siguen reportando incidentes en los Smart Contracts? Hay varias razones por las que los smart contracts siguen siendo un objetivo para un actor de amenaza, aca les mencionamos las principales.
Un mapa azul de América del Sur tiene un fondo azul oscuro.
por DeepSecurity 24 de junio de 2020
SMBGhost (CVE-2020-0796) es una vulnerabilidad de ejecución remota de código, no autenticada, en Microsoft Server Message Block 3.1.1 (SMBv3). La vulnerabilidad sólo requiere que el puerto 445 esté abierto, y un atacante podría conectarse y ejecutar comandos sin necesidad de tener usuario o contraseña.
Un virus azul sobre fondo negro con las palabras reporte de ciberinteligencia
por DeepSecurity 1 de junio de 2020
Durante nuestras investigaciones de ciberinteligencia encontramos un grupo en Telegram donde se mencionan distintos temas desde hacking de aplicaciones web hasta robo de tarjetas (carding). Encontramos que algunos de los 550 ciberdelincuentes miembros de este grupo publicaban información sobre un fallo en la web del bono universal que permitía apropiarse del bono de los beneficiarios.
Una estatua de un oso está comiendo una hoja sobre un fondo negro.
por DeepSecurity 21 de mayo de 2020
El último año ha sido clave para la expansión digital de los bancos peruanos. Se han lanzado al mercado todo tipo de utilidades y aplicaciones que ayudan a las personas a gestionar su dinero de una manera más fácil. En DeepSecurity, nos preocupamos por la ciberseguridad del sistema financiero local y por eso hemos llevado a cabo un análisis pasivo (no-intrusivo) de las aplicaciones móviles de 12 bancos del Perú.
Una mano sostiene una pieza de ajedrez sobre un fondo azul.
por DeepSecurity 14 de abril de 2020
BlueKeep (CVE-2019-0708) es una vulnerabilidad de ejecución remota de código, no autenticada, en Remote Desktop Services (Servicio de RDP). La vulnerabilidad solo requiere que el puerto de RDP esté abierto y un atacante podría conectarse sin necesidad de tener usuario o contraseña.
Un diagrama de un líder de grupo con servicios técnicos y servicios monetarios.
por DeepSecurity 12 de abril de 2020
La empresa rumana de Ciberseguridad @Bitdefender público un nuevo caso de estudio “An APT Blueprint: Gaining New Visibility into Financial Threats“ en donde plasma la línea de tiempo y el modus operandi de la banda APT (Advanced Persistent Threat) Carbanak
El logotipo de la palabra valla es azul y negro sobre un fondo blanco.
por DeepSecurity 11 de marzo de 2020
Durante un servicio de pentest web, el equipo de research de DeepSecurity se propuso crear una excepción en el WAF del plugin de seguridad más reconocido para el aseguramiento de plataformas WordPress, que actualmente protege aproximadamente a 3 millones de sitios web en el mundo, y donde pudimos identificar una vulnerabilidad de Cross-Site Scripting (XSS)
Un diagrama que muestra cómo el firewall bloquea una solicitud directa.
por DeepSecurity 23 de octubre de 2018
Server-Side Request Forgery (SSRF) es una vulnerabilidad que ha ido ganando mayor popularidad entre las nuevas tecnologías web. En el 2020 hay más de 60 CVEs asignados a esta vulnerabilidad. En este post se explicará a detalle un Blind SSRF encontrado en www.msn.com.
Más entradas
Share by: