What is Gray Box Testing?

La prueba de caja gris es una seguridad de la aplicación técnica de prueba que mezcla pruebas de caja blanca y caja negra. En una evaluación de caja blanca, el probador tiene un conocimiento interno completo del sistema que se está probando (código fuente, documentos de diseño, etc.). Se realiza una evaluación de caja negra sin ningún conocimiento de los componentes internos del sistema.

La prueba de caja gris divide la diferencia al proporcionar al evaluador un conocimiento parcial de los componentes internos del sistema. Por ejemplo, un evaluador de caja gris puede no tener un conocimiento completo del código fuente de una aplicación, pero puede tener un conocimiento parcial del mismo y/o acceso a la documentación de diseño. Esto proporciona más información que las pruebas de caja negra y menos que una evaluación de caja blanca.

Más información Cyber Security Risk Assessment

What is Gray Box Testing?

Estrategia de prueba de caja gris

A gray box tester has more information than in a prueba de caja negra y menos que en una prueba de caja blanca. Esto es intencional y permite que un probador de caja gris combine los beneficios de ambos enfoques.

Las pruebas de caja gris pueden mejorar la eficiencia y la cobertura de la prueba de una evaluación de caja negra haciendo un uso completo de la información proporcionada. Si bien un evaluador no tiene acceso completo al código fuente de la aplicación, tiene suficiente conocimiento y documentación para comprender las funciones principales de la aplicación. Esto hace posible diseñar casos de prueba que se centren en posibles problemas de funcionalidad y seguridad en lugar de realizar pruebas a ciegas.

Los evaluadores de caja gris tienen menos información que en una prueba de caja blanca, lo que puede mejorar la eficiencia y el realismo de la prueba. Al reducir el número de entradas a la evaluación, el tiempo puede centrarse en las pruebas activas en lugar de procesar y revisar el código y la documentación proporcionados. Además, negar a los evaluadores el pleno conocimiento del sistema ayuda a evitar sesgos sobre cómo un sistema está diseñado para funcionar en lugar de cómo funciona realmente.

Pasos para realizar pruebas de caja gris

Una evaluación de caja gris es una evaluación estructurada basada en el conocimiento disponible del sistema bajo prueba. Debe seguir estos pasos:

  1. Identifique las entradas según las técnicas de prueba de caja blanca y caja negra
  2. Identificar los resultados que estas entradas deben producir en función de la documentación proporcionada
  3. Identificar los flujos de control primarios que se deben probar
  4. Identificar subfunciones importantes que deben recibir pruebas de nivel profundo
  5. Identificar entradas a una subfunción
  6. Identificar las salidas que la subfunción debe producir para las entradas dadas
  7. Desarrollar y ejecutar un caso de prueba para esta subfunción
  8. Verifique que la subfunción produzca el resultado esperado para el caso de prueba
  9. Repita los pasos 4-8 para todas las subfunciones

Técnicas de prueba de caja gris

La prueba de caja gris se puede realizar de varias maneras diferentes, incluyendo:

  • Pruebas de matriz: Las pruebas matriciales se centran en las variables dentro de un programa, enumerándolas, evaluando los riesgos que plantean y probando que se usan de manera correcta y eficiente.
  • Pruebas de regresión: El código puede modificarse para agregar funcionalidad o solucionar problemas de seguridad. Las pruebas de regresión verifican que una aplicación aún pasa las pruebas después de haber sido modificada.
  • Prueba de patrones: Las pruebas de patrones analizan el pasado de una aplicación para identificar tendencias que han causado defectos en el pasado y que pueden causarlos en el futuro. Los resultados de estas pruebas se pueden utilizar para evitar que estos problemas se repitan en el futuro.
  • Prueba de matriz ortogonal (OAT): OAT se utiliza con una aplicación que tiene algunas entradas complejas. Utiliza estadísticas para crear un conjunto de casos de prueba que proporciona una buena cobertura de prueba sin la sobrecarga de pruebas exhaustivas.

Black Box vs White Box Testing vs Gray box

Las pruebas de caja negra, caja blanca y caja gris proporcionan al probador diferentes niveles de conocimiento sobre los componentes internos del sistema que se está probando. En un extremo, las pruebas de caja blanca proporcionan acceso completo al código fuente y a la documentación de diseño. Por otro lado, los evaluadores de caja negra no tienen conocimiento interno de cómo funciona la aplicación.

Estos diferentes niveles de conocimiento y acceso tienen un impacto significativo en el proceso de prueba. Algunas de las principales diferencias incluyen:

  • Test Coverage: Las pruebas de caja blanca pueden garantizar una cobertura completa de la prueba porque tiene acceso completo al código, mientras que las pruebas de caja negra no ofrecen tales garantías. La caja gris se encuentra en el medio ya que los probadores pueden realizar una planificación de pruebas basada en la documentación, pero son ciegos a las rutas de código indocumentadas e inaccesibles.
  • Ubicación en SDLC: La prueba de caja blanca utiliza código fuente, por lo que se puede implementar temprano en Tuberías CI/CD. Las pruebas de caja gris y negra funcionan en el código de ejecución, por lo que caen más tarde en el SDLC.
  • Herramientas de análisis: Las pruebas de caja blanca utilizan herramientas de análisis de código estático para analizar el código fuente. Uso de pruebas de caja gris y negra análisis dinámico de código herramientas, tales como escaneo de vulnerabilidades, para analizar una aplicación en ejecución.
  • Tester Mindset: Las pruebas de caja blanca provienen de la mentalidad del desarrollador, mientras que las pruebas de caja negra se realizan desde la perspectiva del usuario. Las pruebas de caja gris dividen la diferencia, eliminando los prejuicios de los desarrolladores sobre cómo se diseñó una aplicación para funcionar, pero también brindando acceso a más información que la que tiene el usuario promedio.

Check Point CRT

Check Point’s Servicios profesionales El portafolio puede ayudar a respaldar los esfuerzos de seguridad de las aplicaciones de una organización. Las evaluaciones de seguridad de cajas blancas, grises y negras son parte de la estrategia de Check Point. Servicios de pruebas de resiliencia y penetración de ciberseguridad.

Obtenga más información sobre cómo reforzar el programa de seguridad de aplicaciones de su organización con Check Point servicios profesionales de pruebas. Además, siéntase libre de Contáctenos para obtener más información sobre cómo un programa de pruebas personalizado y cómo ayudar a identificar y corregir problemas de seguridad dentro de su organización.

x
  Comentarios
Este sitio web emplea cookies para su funcionalidad y con fines analíticos y de marketing. Al continuar empleando este sitio web, usted acepta el uso de cookies. Para más información, lea nuestro Aviso sobre cookies.