¿Qué son las pruebas de seguridad? Ejemplo
¿Qué son las pruebas de seguridad?
Pruebas de seguridad Es un tipo de prueba de software que descubre vulnerabilidades, amenazas y riesgos en una aplicación de software y evita ataques maliciosos de intrusos. El objetivo de las pruebas de seguridad es identificar todas las posibles lagunas y debilidades del sistema de software que podrían provocar una pérdida de información, ingresos y reputación a manos de los empleados o personas externas a la organización.
¿Por qué son importantes las pruebas de seguridad?
El objetivo principal de Pruebas de seguridad es identificar las amenazas en el sistema y medir sus vulnerabilidades potenciales, para que las amenazas puedan encontrarse y el sistema no deje de funcionar o no pueda ser explotado. También ayuda a detectar todos los posibles riesgos de seguridad en el sistema y ayuda a los desarrolladores a solucionar los problemas mediante la codificación.
Tipos de pruebas de seguridad en pruebas de software
Hay siete tipos principales de pruebas de seguridad según el manual de metodología de pruebas de seguridad de código abierto. Se explican a continuación:
- Exploración de Vulnerabilidades: Esto se hace a través de software automatizado para escanear un sistema en busca de firmas de vulnerabilidades conocidas.
- Escaneo de seguridad: Implica la identificación de debilidades de la red y del sistema, y posteriormente proporciona soluciones para reducir estos riesgos. Este análisis se puede realizar tanto de forma manual como automática.
- Pruebas de penetración: Este tipo de prueba simula un ataque de un pirata informático malintencionado. Esta prueba implica el análisis de un sistema en particular para verificar posibles vulnerabilidades ante un intento de piratería externa.
- Evaluación del riesgo: Esta prueba implica el análisis de los riesgos de seguridad observados en la organización. Los riesgos se clasifican en Bajo, Medio y Alto. Esta prueba recomienda controles y medidas para reducir el riesgo.
- Auditoría de seguridad: Esta es una inspección interna de Aplicaciones y Operasistemas de ting por fallos de seguridad. También se puede realizar una auditoría mediante la inspección del código línea por línea.
- Hackeo ético: Está pirateando los sistemas de software de una organización. A diferencia de los piratas informáticos maliciosos, que roban para obtener beneficios propios, la intención es exponer fallos de seguridad en el sistema.
- Evaluación de la postura: Esto combina escaneo de seguridad, Hackeo ético y evaluaciones de riesgos para mostrar una postura general de seguridad de una organización.
Cómo hacer pruebas de seguridad
Siempre se ha acordado que el coste será mayor si posponemos pruebas de seguridad después de la fase de implementación del software o después de la implementación. Por lo tanto, es necesario involucrar pruebas de seguridad en el ciclo de vida del SDLC en las fases anteriores.
Analicemos los procesos de seguridad correspondientes que se adoptarán para cada fase del SDLC.
Fases SDLC | Procesos de seguridad |
---|---|
Requisitos | Análisis de seguridad para requisitos y verificación de casos de abuso/uso indebido |
Diseño | Análisis de riesgos de seguridad para el diseño. Desarrollo de Plan de prueba incluyendo pruebas de seguridad |
Codificación y pruebas unitarias | Seguridad y pruebas estáticas y dinámicas Blanco Box Pruebas |
Pruebas de integración | Negro Box Pruebas |
Pruebas del sistema | Negro Box Pruebas y escaneo de vulnerabilidades |
Implementación | Pruebas de penetración, Escaneo de vulnerabilidades |
Soporte | Análisis de impacto de parches |
El plan de prueba debe incluir
- Casos o escenarios de prueba relacionados con la seguridad
- Datos de prueba relacionados con las pruebas de seguridad
- Herramientas de prueba necesarias para las pruebas de seguridad
- Análisis de varios resultados de pruebas de diferentes herramientas de seguridad.
Escenarios de prueba de ejemplo para pruebas de seguridad
Escenarios de prueba de muestra para darle una idea de los casos de prueba de seguridad:
- La contraseña debe estar en formato cifrado
- La aplicación o el sistema no deben permitir usuarios no válidos
- Consultar cookies y tiempo de sesión para la aplicación
- Para sitios financieros, el botón Atrás del navegador no debería funcionar.
Metodologías/Enfoque/Técnicas de Pruebas de Seguridad
En las pruebas de seguridad se siguen diferentes metodologías, y son las siguientes:
- Tiger Box: Este hackeo generalmente se realiza en una computadora portátil que tiene una colección de sistemas operativos y herramientas de hackeo. Esta prueba ayuda a los probadores de penetración y de seguridad a realizar evaluaciones de vulnerabilidades y ataques.
- Negro Box: El probador está autorizado a realizar pruebas en todo lo relacionado con la topología y la tecnología de la red.
- Gris BoxSe proporciona al probador información parcial sobre el sistema y es un híbrido entre modelos de caja blanca y negra.
Funciones de prueba de seguridad
- Hackers: acceden al sistema informático o a la red sin autorización
- Crackers: irrumpen en los sistemas para robar o destruir datos.
- Hacker ético: realiza la mayoría de las actividades de piratería, pero con el permiso del propietario.
- Script Kiddies o monos de paquete: piratas informáticos sin experiencia con conocimientos de lenguajes de programación
Herramientas de prueba de seguridad
1) Teramind
Teramind ofrece un conjunto completo para la prevención de amenazas internas y el monitoreo de empleados. Mejora la seguridad mediante análisis de comportamiento y prevención de pérdida de datos, garantizando el cumplimiento y optimizando los procesos comerciales. Su plataforma personalizable se adapta a diversas necesidades organizativas y proporciona información procesable que se centra en aumentar la productividad y salvaguardar la integridad de los datos.
Características:
- Prevención de amenazas internas: Detecta y previene acciones del usuario que pueden indicar amenazas internas a los datos.
- Optimización de procesos de negocio: Utiliza análisis de comportamiento basados en datos para redefinir los procesos operativos.
- Productividad de la fuerza laboral: Supervisa los comportamientos de productividad, seguridad y cumplimiento de la fuerza laboral.
- Gestión de cumplimiento: Ayuda a gestionar el cumplimiento con una solución única y escalable adecuada para pequeñas empresas, empresas y agencias gubernamentales.
- Análisis forense de incidentes: Proporciona evidencia para enriquecer la respuesta a incidentes, las investigaciones y la inteligencia sobre amenazas.
- Prevención de pérdida de datos: Supervisa y protege contra la posible pérdida de datos confidenciales.
- Monitoreo de empleados: Ofrece capacidades para monitorear el desempeño y las actividades de los empleados.
- Análisis de comportamiento: Analiza datos granulares del comportamiento de las aplicaciones del cliente para obtener información valiosa.
- Configuraciones de monitoreo personalizables: Permite personalizar la configuración de monitoreo para adaptarse a casos de uso específicos o para implementar reglas predefinidas.
- Información del panel: Proporciona visibilidad e información procesable sobre las actividades de la fuerza laboral a través de un panel integral.
2) Owasp
El proyecto de seguridad de aplicaciones web abiertas (OWASP) es una organización mundial sin fines de lucro centrada en mejorar la seguridad del software. El proyecto cuenta con múltiples herramientas para realizar pruebas de penetración en varios entornos y protocolos de software. Las herramientas emblemáticas del proyecto incluyen
- Proxy de ataque Zed (ZAP – una herramienta integrada de pruebas de penetración)
- Verificación de dependencia de OWASP (busca dependencias del proyecto y verifica vulnerabilidades conocidas)
- Proyecto de entorno de pruebas web OWASP (colección de herramientas y documentación de seguridad)
3) WireShark
Wireshark es una herramienta de análisis de red conocida anteriormente como Ethereal. Captura paquetes en tiempo real y los muestra en un formato legible para humanos. Básicamente, es un analizador de paquetes de red, que proporciona detalles minuciosos sobre los protocolos de red, descifrado, información de paquetes, etc. Es de código abierto y se puede utilizar en Linux, Windows, OS X, Solaris, NetBSD, FreeBSD y muchos otros sistemas. La información que se recupera a través de esta herramienta se puede ver a través de una GUI o la utilidad TShark en modo TTY.
4) W3af
w3af es un marco de auditoría y ataque de aplicaciones web. Tiene tres tipos de complementos; descubrimiento, auditoría y ataque que se comunican entre sí para detectar cualquier vulnerabilidad en el sitio, por ejemplo, un complemento de descubrimiento en w3af busca diferentes URL para probar las vulnerabilidades y las reenvía al complemento de auditoría que luego usa estas URL para buscar vulnerabilidades.
Mitos y realidades de las pruebas de seguridad
Hablemos de un tema interesante sobre Mitos y realidades de las pruebas de seguridad:
Mito # 1 No necesitamos una política de seguridad ya que tenemos una pequeña empresa.
Hecho: Todos y todas las empresas necesitan una política de seguridad
Mito # 2 No hay retorno de la inversión en pruebas de seguridad.
Hecho: Las pruebas de seguridad pueden señalar áreas de mejora que pueden mejorar la eficiencia y reducir el tiempo de inactividad, permitiendo el máximo rendimiento.
Mito # 3: La única forma de asegurarlo es desenchufarlo.
Hecho: La única y mejor manera de proteger una organización es encontrar la “Seguridad Perfecta”. Se puede lograr una seguridad perfecta realizando una evaluación de la postura y comparándola con las justificaciones comerciales, legales y de la industria.
Mito # 4: Internet no es seguro. Compraré software o hardware para salvaguardar el sistema y salvar el negocio.
Hecho: Uno de los mayores problemas es comprar software y hardware por motivos de seguridad. En cambio, la organización debe comprender primero la seguridad y luego aplicarla.
Conclusión
Las pruebas de seguridad son las pruebas más importantes para una aplicación y comprueban si los datos confidenciales siguen siendo confidenciales. En este tipo de prueba, el evaluador desempeña el papel de atacante y explora el sistema para encontrar errores relacionados con la seguridad. Las pruebas de seguridad son muy importantes en Ingeniería de Software para proteger los datos por todos los medios.