Paso 1: recopilar información
El paso básico de nuestra lista de verificación de pruebas de seguridad de aplicaciones es hacer preguntas. Esto garantizará qué aplicaciones, códigos y sistemas de red deben probarse. Haga un esfuerzo adicional e infórmese sobre el proceso de prueba que utilizará, y especialmente cuáles son las expectativas.
Identificar áreas extremadamente inciertas de la aplicación.
Esta área se refiere a dónde los usuarios modifican el contenido. Esta ubicación requiere verificación, tanto en los códigos de entrada como en los de salida. Un ejemplo puede ser una aplicación que permite a sus usuarios insertar una gran cantidad de datos. Especialmente si se hace a través de un editor HTML, la aplicación corre un alto riesgo de ataques si no se implementa el mecanismo de prevención.
Desarrolle la lógica de la empresa y el flujo de información
Esto se refiere a áreas que necesitan pruebas manuales, principalmente enfocadas en sistemas de exposición de datos confidenciales o de escalada. La lógica de la organización está relacionada con el flujo de información, que es un curso especial y poco común de una aplicación. Los análisis automatizados tienden a pasar por alto esta función, por lo que es importante que la mencionemos.
Un evaluador de control de calidad debe asegurar:
- La sinceridad de la tarea
- Los usuarios regulares no pueden saltar pasos
- Los usuarios finales no tienen autorización para realizar actividades privilegiadas
Comprender los permisos y la estructura de roles
En caso de acceso bloqueado o de varios miembros del equipo, este paso es importante para fines de autorización. Además, intente probar la configuración de autorización de omisión, omitiendo la página de inicio de sesión o haciendo que la aplicación crea que el usuario ya está autorizado. Además, compruebe si es posible acceder a las funciones administrativas mientras está registrado como usuario normal.
Paso 2: planificación
Al planificar las pruebas de seguridad de su aplicación, documente primero su estrategia. Elija los probadores adecuados, explíqueles en qué estarán trabajando y la fecha límite de las tareas de prueba. Esto le ahorrará tiempo y recursos y le garantizará una buena estrategia de prueba de seguridad.
Organice las vulnerabilidades de su aplicación
Haga una lista de las herramientas que necesita, como un escáner de vulnerabilidades web. Si planea ir más allá y probar la autenticación, se necesitará un proxy HTTP. Puede utilizar un análisis de código fuente si planea profundizar en sus pruebas de seguridad.
La siguiente lista de verificación de pruebas de seguridad de aplicaciones puede cubrir:
- Reuniendo sesiones de gestión
- Fuerza bruta
- Acceso elevado a recursos protegidos
- Seguridad de la contraseña
Asignar roles a los miembros del equipo
Si planea hacer las pruebas de seguridad con un equipo, debe dividir las responsabilidades. Un equipo puede estar a cargo de la funcionalidad, mientras que el otro equipo puede probar las vulnerabilidades. Es importante elegir los probadores de control de calidad adecuados para esta operación. Es esencial contar con profesionales preparados, listos para actuar y profundizar en la seguridad de la aplicación con resultados integrales.
Implementar pruebas automáticas
Realice una verificación manual que contendrá tareas adicionales que el equipo deberá realizar manualmente. Una vez que se complete la prueba automática, asigne un miembro del equipo para escanear y configurar los resultados. Aunque la tecnología es un gran activo, ¡un seguimiento humano solo funcionará mejor!
Establecer el plazo
Este es el punto en el que su equipo finalizará las pruebas y documentará las vulnerabilidades encontradas. En este paso de la lista de verificación de las pruebas de seguridad de la aplicación, es hora de que escriba el informe de conclusión. Los resultados deberían ayudarlo a tener una visión clara de qué tan segura es su aplicación y dónde se compara con las expectativas.
Configurar llamadas internas y externas
Depende de usted la frecuencia con la que coordina con su equipo. Para una aplicación segura exitosa, le sugerimos que programe llamadas dos veces por semana. Como la comunicación es clave, estas llamadas deben incluir a los evaluadores de control de calidad y al gerente del proyecto o del cliente, para determinar la situación del equipo y transmitir los detalles relevantes a los miembros.
Ejemplos de pruebas de documentos
Esto solo puede existir en la lista de verificación de pruebas de seguridad de su aplicación si el cliente lo exige. La documentación debe contener casos de prueba que representen el interés de su cliente y que hayan tenido un cierto impacto en los resultados.
Realice un rastreo automático o manual
Si el acuerdo lo requiere, este paso ofrece detalles o ajustes necesarios para el alcance de la prueba.
Step 3: Performance
The biggest part of the application security testing checklist is the execution. Once you have the plan strategy and the team ready to go, this is the moment you conduct the tests and track down vulnerabilities.
Pruebas y resultados automatizados
Debe prestar atención a las herramientas de automatización que seleccione. De esta manera, los evaluadores ajustarán sus habilidades tanto a la lógica de la empresa como al flujo de información, lo que requiere un análisis manual. Probar automáticamente es ligeramente diferente, dependiendo de la organización.
Prueba manual
Las pruebas manuales se centran en la lógica de la empresa y el flujo de información específico de la aplicación. Por lo general, las pruebas automáticas lo pasan por alto. Las pruebas manuales pueden tener este aspecto:
- Un evaluador de control de calidad identifica un enlace ingresado por un administrador que es algo diferente al final
- Ellos "se ejecutan" como administrador e intentan modificar la URL.
- Según los resultados, si se encuentra una vulnerabilidad, es mejor documentarla. Después de esto, el evaluador puede continuar navegando a las páginas relacionadas y verificar si el problema continúa.
En esta etapa de la prueba de seguridad de la aplicación, la mayoría de las herramientas envían solicitudes a una página para ver si la respuesta es diferente. Cuando se entregan errores HTTP 500, significa que existe una vulnerabilidad en algún lugar. Ahora está la capacidad del evaluador de revisar el error y determinar si realmente existe una vulnerabilidad.
Documentar vulnerabilidades descubiertas
A veces, los clientes o incluso la alta dirección pueden solicitar el resultado de las pruebas de seguridad realizadas. Quieren ver las conclusiones incluso si no se identificaron vulnerabilidades, por lo tanto, prepárese también para ese informe.
Paso 4: informe
Lo siguiente en nuestra lista de verificación de pruebas de seguridad de aplicaciones es la etapa de informes. Esta es una acción que se toma después de que se realiza la prueba. Los informes sobre los resultados deben documentarse minuciosamente y luego informarse a su cliente o gerencia, de la siguiente manera:
Formalizar resultados
El primer paso para informar es reunir la descripción de las pruebas, las URL afectadas, los roles de los miembros del equipo, las pruebas, los pasos de reproducción, el impacto y la corrección.
Revisar informes técnicos
Esta parte asegura la precisión y coherencia de la redacción técnica del informe. Si es necesario, revise los resultados con el equipo y realice los ajustes necesarios.
Paso 5: reparación
Este paso aborda las vulnerabilidades durante las pruebas de seguridad de la aplicación.
Abordar las pautas de soporte
La responsabilidad del propietario de la aplicación es cobrarle a un desarrollador web las solicitudes de reparación detalladas. Es necesario implementar correcciones en el código afectado. Una simple prueba de caja negra podría no ser suficiente y aún podrían existir problemas.
Paso 6: Confirmación
El paso final de la lista de verificación de pruebas de seguridad de la aplicación que preparamos para usted es la verificación. Este paso generalmente se realiza al final del procedimiento de prueba. Es importante recalcar que las vulnerabilidades encontradas son corregidas y no se pueden engañar.
Revisar
Eche un vistazo más a los problemas específicos identificados anteriormente. Asegúrese de que se hayan solucionado por completo y no tengan ninguna vulnerabilidad potencial.
Prevención
Asegúrese de que estas correcciones no vuelvan a ser vulnerables mediante intentos de transformación. Para ello, ejecute el filtrado para XSS, los ataques con diferentes roles y la redirección a diferentes enlaces URL.
Preguntas frecuentes sobre la lista de verificación de pruebas de seguridad del sitio web
La prueba de seguridad es una prueba de software basada en una lista de tareas preparada llamada lista de verificación. Estas listas de verificación se utilizan para planificar y estructurar un procedimiento de prueba a fin de evitar pruebas repetitivas y que requieren mucho tiempo. Las listas de verificación pueden estar en línea, compartidas, físicas o incluso mentales.
1. NetSparker
NetSparker es una ventanilla única para las necesidades de seguridad web. Está disponible como solución de host y autohospedaje. Esta plataforma se puede integrar completamente en cualquier tipo de entorno de desarrollo.
2. ImmuniWeb
ImmuniWeb es una plataforma de próxima generación que utiliza AI (Inteligencia Artificial) para permitir las pruebas de seguridad. Esta prueba de IA ofrece un paquete completo de beneficios para equipos de seguridad o control de calidad, desarrolladores, CISO y CIO también.
3. Vega
Esta fuente es una herramienta de análisis y prueba de vulnerabilidades escrita en Java. Es compatible con GUI y es compatible con sistemas operativos como OS X, Linux y Windows.
4. SQLMap
SQLMap es una herramienta de prueba que funciona con un motor de detección. Esto se puede utilizar para la identificación automatizada y la explotación de fallas de inyección de SQL.
5. Google Nogotofail
Google Nogotofail es una fuente de pruebas de seguridad del tráfico de red. Su propósito principal es verificar las aplicaciones en busca de vulnerabilidades TLS / SSL conocidas e incluso configuraciones incorrectas.