Herramientas de pruebas de seguridad automatizadas
Mientras que algunas empresas confían en un puñado de herramientas y procesos de pruebas de seguridad automatizadas para mantener el cumplimiento de la seguridad, otras aprovechan tanto las pruebas automatizadas como las pruebas de seguridad manuales para garantizar que su software se pruebe a fondo y sea seguro.
Hay muchas maneras de realizar pruebas de seguridad manualmente para comprobar la postura de seguridad de su aplicación. Antes de que nos sumerjamos en ellas, echemos un vistazo más de cerca a por qué debería hacer pruebas de seguridad manualmente.
Incluso con las rápidas mejoras en la tecnología de automatización, todavía hay muchos elementos que necesitan atención humana para verificar o determinar con precisión las posibles vulnerabilidades de seguridad web en una aplicación.
Los encargados de las pruebas de seguridad manuales suelen utilizar una combinación de software y herramientas de pruebas de seguridad seleccionadas a mano que son las más adecuadas para evaluar su aplicación. Estas pueden incluir scripts personalizados y herramientas de escaneo automatizadas.
Las técnicas avanzadas para realizar pruebas de seguridad manualmente implican casos de prueba precisos como la comprobación de los controles de usuario, la evaluación de las capacidades de cifrado y el análisis exhaustivo para descubrir las vulnerabilidades anidadas dentro de una aplicación.
Comprobación de virus en el sitio web
Desde el correo electrónico basado en la web hasta las compras y la banca en línea, las organizaciones llevan sus negocios directamente a los navegadores web de los clientes cada día, evitando la necesidad de complejas instalaciones o despliegues de actualizaciones. Además, las organizaciones están desplegando aplicaciones web internas para las finanzas, la automatización del marketing e incluso la comunicación interna, que a menudo son de cosecha propia o, al menos, están ajustadas a sus necesidades particulares.
Aunque las aplicaciones web ofrecen comodidad a las empresas y a los clientes, su ubicuidad las convierte en un objetivo de ataque popular para los ciberdelincuentes. Como resultado, las pruebas de seguridad de las aplicaciones web, o el escaneo y las pruebas de riesgo de las aplicaciones web, son esenciales.
Tal y como muestra el Informe de Verizon sobre las violaciones de datos de 2018, las aplicaciones web son un objetivo de ataque muy popular en las violaciones de datos confirmadas, y en algunos sectores hasta el 41% de las violaciones de datos están relacionadas con las aplicaciones web. El informe también encontró que alrededor de la mitad de las violaciones relacionadas con las aplicaciones web tardaron varios meses o más en ser descubiertas por los equipos de seguridad. Cuanto más tiempo tenga un atacante acceso a los sistemas, más daño puede causar. Los atacantes deben ser descubiertos y eliminados lo antes posible, pero a menudo es más fácil decirlo que hacerlo.
Sitio web de control de seguridad
Una empresa típica de desarrollo de software y aplicaciones web tiene un departamento de pruebas, o un equipo de control de calidad, que comprueba constantemente el software y las aplicaciones web desarrolladas por la empresa para asegurarse de que los productos funcionan como se anuncian y no tienen errores. Las empresas de software más grandes también invierten cientos de miles, si no millones de dólares, en software para automatizar algunos de los procedimientos de prueba y garantizar que el producto sea de alta calidad.
Entonces, ¿cómo es que los sitios y aplicaciones web siguen siendo hackeados cada día? Por ejemplo, hace un par de días, el sitio de la Administración de Estambul fue vulnerado por un grupo de hackers llamado RedHack mediante una inyección SQL (más información). En marzo de 2013, Ben Williams publicó un libro blanco llamado “Hacking Appliances: Ironic exploits in security products”. El libro blanco incluye detalles sobre las vulnerabilidades de las aplicaciones web encontradas en la interfaz web del administrador de varios dispositivos de pasarela de seguridad que podrían utilizarse para eludir el dispositivo de seguridad y obtener acceso administrativo. El libro blanco puede descargarse desde aquí (pdf). En abril de 2013 se identificó una vulnerabilidad de ejecución remota de código que permite a un pirata informático malintencionado ejecutar código en el servidor web de la víctima en dos de los plugins de WordPress de caché más populares (más información). Y la lista sigue y sigue.
Comprobación de la seguridad del sitio web
Una prueba de penetración, también conocida como pen test, es un ciberataque simulado contra su sistema informático para comprobar si existen vulnerabilidades explotables. En el contexto de la seguridad de las aplicaciones web, las pruebas de penetración se utilizan habitualmente para aumentar un cortafuegos de aplicaciones web (WAF).
Las pruebas de penetración pueden implicar el intento de violación de cualquier número de sistemas de aplicación, (por ejemplo, interfaces de protocolo de aplicación (API), servidores frontend/backend) para descubrir vulnerabilidades, como entradas no saneadas que son susceptibles de ataques de inyección de código.
En esta etapa se utilizan ataques a aplicaciones web, como el cross-site scripting, la inyección SQL y las puertas traseras, para descubrir las vulnerabilidades de un objetivo. A continuación, los probadores intentan explotar estas vulnerabilidades, normalmente escalando privilegios, robando datos, interceptando el tráfico, etc., para comprender el daño que pueden causar.
El objetivo de esta etapa es ver si la vulnerabilidad puede utilizarse para lograr una presencia persistente en el sistema explotado, el tiempo suficiente para que un actor malo obtenga acceso en profundidad. La idea es imitar las amenazas persistentes avanzadas, que suelen permanecer en un sistema durante meses para robar los datos más sensibles de una organización.