¿Qué es SAST? Definición | Seguridad de aplicación estática

El término prueba de seguridad de aplicaciones estáticas describe un concepto de seguridad especial en el desarrollo de software. En lugar de probar posteriormente una aplicación, las comprobaciones se llevan a cabo al principio del desarrollo. Tiene sus ventajas y desventajas.

En muchos casos, los equipos de seguridad de TI o aseguramiento de la calidad del software examinan posteriormente un código que se ha creado para detectar debilidades de seguridad. Las pruebas de penetración están destinadas, por ejemplo, a revelar brechas relevantes en las aplicaciones en ejecución.

La «Prueba de seguridad de aplicaciones estáticas» (SAST), adelanta significativamente la fecha de la prueba. Para ello, se ejecutan programas especiales sobre el código en una etapa temprana para descubrir puntos débiles. Como regla general, estas herramientas también brindan recomendaciones sobre cómo se puede corregir una vulnerabilidad directamente.

Así es como funcionan las pruebas de seguridad de aplicaciones estáticas

SAST es un proceso denominado caja blanca. El código es visible y no es necesario que se esté ejecutando. Por eso hablamos de “estático”. Las pruebas pueden identificar tres tipos de amenazas a la seguridad.

  • Primero, existen lagunas funcionales. Por ejemplo, se puede inyectar «código contaminado». Estas son líneas que luego pueden pasar de contrabando malware.
  • En segundo lugar, hay líneas que pueden asociarse con archivos o determinadas clases de objetos. Aquí, también, la atención se centra en el contrabando de malware.
  • En tercer lugar, existen lagunas a nivel de la aplicación: ¿Se puede utilizar el código para interactuar con programas de terceros sin que nadie se dé cuenta? Los piratas informáticos utilizan estas vulnerabilidades, por ejemplo.

Como regla general, se deben ejecutar diferentes herramientas SAST sobre el código, y esto a intervalos regulares. Los escáneres también deben adaptarse a tus propias necesidades. No funcionan completamente «de fábrica» como le gustaría a la mayoría de los desarrolladores. La Fundación Open Web Application Security Project (OWASP) ofrece asistencia. No solo enumera las brechas de seguridad típicas, sino que también brinda recomendaciones para las herramientas SAST adecuadas.

Ventajas del enfoque SAST

Ventajas del enfoque SAST
Ventajas del enfoque SAST

En comparación con las pruebas de seguridad posteriores, el enfoque SAST ofrece las siguientes ventajas:

  • Las brechas de seguridad identificadas temprano pueden eliminarse mucho más barato (a veces diez veces más barato).
  • Por regla general, no solo se reconocen las lagunas, sino también las razones por las que podrían surgir. Esto no es posible con las pruebas posteriores de caja negra.
  • No es necesario ningún código de trabajo.
  • Los desarrolladores pueden realizar las pruebas. No se requieren expertos en seguridad para esto.
  • El 100 por ciento del código se puede examinar para detectar problemas de seguridad. Esto no es posible, por ejemplo, con pruebas dinámicas de aplicaciones o con pruebas de penetración.
  • Los escáneres a menudo se pueden complementar fácilmente con controles adicionales, por ejemplo, relacionados con la funcionalidad de ciertas partes del código.

Leer: Definición de Bourne Again shell (Bash)

Desventajas del enfoque SAST

En teoría, el enfoque SAST no tiene desventajas reales. En la práctica, sin embargo, a veces hay tres problemas básicos.

  • 1. El trabajo de programación a menudo se ve afectado, lo que a su vez se manifiesta en errores. Los desarrolladores se centran demasiado en las pruebas de seguridad y las correcciones de errores.
  • 2. Las herramientas están dando demasiados problemas. Esto sucede especialmente si los escáneres no se han adaptado individualmente a sus propias necesidades.
  • 3. SAST reemplaza a menudo las pruebas de seguridad posteriores. Sin embargo, no se detectan todos los problemas que están directamente relacionados con una aplicación en funcionamiento.

Deja un comentario