¿Qué es una prueba de penetración de la aplicación web?
Una prueba de penetración de aplicaciones web es una actividad diseñada para medir cómo se comportaría un programa basado en Internet durante un ataque o exploit. Estas pruebas hacen uso de una variedad de programas de software para escanear una aplicación y luego realizar diferentes acciones que podrían ocurrir durante un ataque real. Un equipo de desarrollo o un proveedor de servicios de terceros puede realizar una prueba de penetración de aplicaciones web. Si se utiliza un proveedor externo, el equipo de desarrollo o el personal de la tecnología de la información (TI) a veces no serán notificadas de la prueba por la gerencia. Esto puede permitir que una prueba de penetración de la aplicación web descubra fallas que de otro modo podrían haber pasado desapercibidas, lo que puede permitir que esos problemas se solucionen antes de la liberación del software.
Las aplicaciones web son paquetes de software a los que se puede acceder y ejecutarse en Internet. Estas aplicaciones pueden realizar muchas funciones, y en algunos casos son responsables de manejar datos que se consideran privados o incluso valiosos. Con el fin deEvite comprometer ataques, las pruebas de penetración generalmente se realizan para localizar cualquier debilidad o áreas fácilmente explotadas en el código.
Las pruebas de penetración de aplicaciones web típicas comienzan con una fase de recopilación de información. El propósito de este paso es determinar tanta información sobre la aplicación como sea posible. Al enviar solicitudes a la aplicación y usar herramientas como escáneres y motores de búsqueda, a menudo es posible obtener información como números de versión de software y mensajes de error que a menudo se usan para encontrar exploits más adelante.
Después de que se haya acumulado una cantidad suficiente de información, el siguiente objetivo de una prueba de penetración de la aplicación web es realizar varios ataques y exploits diferentes. En algunos casos, la información recopilada durante la primera fase identificará las hazañas a las que la aplicación podría ser vulnerable. Si no se detectaron vulnerabilidades obvias, entoncesSe puede intentar una gama completa de ataques y exploits.
Muchas vulnerabilidades técnicas diferentes pueden ubicarse mediante una prueba de penetración de aplicaciones web. Estas pruebas generalmente intentarán usar métodos como la manipulación de localización de recursos universales (URL), secuestro de sesión e inyección de lenguaje de consulta estructurada (SQL) para entrar en una aplicación. También puede haber un intento de iniciar un desbordamiento de búfer u otras acciones similares que puedan hacer que una aplicación se comporte anormalmente. Si alguno de estos ataques o exploits hace que la aplicación revele datos confidenciales al probador de penetración, los fallas generalmente se informan junto con un curso de acción sugerido.