Rastrear los riesgos en el código del cliente
Si el sistema SAP está parado, muchos procesos de la empresa también lo están. Esta es la situación de Trumpf, uno de los principales proveedores mundiales de máquinas herramienta, láser y electrónica para aplicaciones industriales.
Esto se debe a que el grupo de alta tecnología con sede en Ditzingen, cerca de Stuttgart, opera su sistema ERP SAP central con un solo cliente, en todos los centros internacionales de producción y desarrollo, así como en gran parte de las organizaciones de ventas.
Varias iniciativas internas
Para lograr una alta fiabilidad en el funcionamiento del sistema SAP, Trumpf puso en marcha varias iniciativas internas, como la armonización de las funciones de autorización de SAP (SAP SafeT) y la profesionalización del desarrollo de software.
Hasta entonces, el desarrollo de aplicaciones informáticas se externalizaba principalmente a proveedores de servicios por proyectos, pero ahora se combina y estandariza en una unidad organizativa propia de la empresa.
Para ello, Trumpf ha ido aumentando sus capacidades internas de desarrollo, que cuentan con el apoyo de socios estratégicos en diversos proyectos de desarrollo a largo plazo.
Una tercera iniciativa consistió en la introducción de la solución de gestión de cambios Conigma CCM de Galileo para satisfacer las demandas de los auditores de una mejor trazabilidad de los cambios en el sistema SAP.
En estos proyectos, se hizo evidente que era indispensable una herramienta para el escaneado automático del código fuente. Los responsables informáticos de Trumpf se decidieron por Virtual Forge CodeProfiler, de cuya calidad ya se habían convencido durante una primera exploración del código.
La herramienta de análisis detectó vulnerabilidades muy críticas en el código cliente del sistema central SAP. Éstas podrían proporcionar a los posibles atacantes pasarelas para, en el peor de los casos, cerrar completamente la aplicación. La introducción de CodeProfiler siguió una hoja de ruta claramente estructurada y sólo duró cuatro días.
Autorizaciones SAP verificadas
En el proyecto SAP SafeT para armonizar las funciones de autorización de SAP, Trumpf utilizó CodeProfiler para comprobar automáticamente si los desarrollos internos de Abap también contienen las comprobaciones de autorización necesarias.
Con esta herramienta de análisis, esto puede llevarse a cabo de forma mucho más rápida, sencilla y exhaustiva que con los controles manuales. Así se garantiza que ningún empleado no autorizado pueda acceder a los datos SAP y, por tanto, hacer un posible uso indebido de ellos.
En el desarrollo de software, CodeProfiler se utiliza para comprobar la calidad y la seguridad del propio código Abap del cliente. La base para ello son las directrices de desarrollo, que Trumpf ha derivado en gran medida de los casos de prueba de CodeProfiler. Después de todo, no tiene mucho sentido dar a los programadores ciertas directrices si no es posible comprobar automáticamente si realmente se cumplen.
Aprobación técnica de los cambios
En interacción con la herramienta de gestión de cambios Conigma CCM de Galileo, CodeProfiler se utiliza para comprobar la corrección técnica de los cambios en el sistema SAP.
Trumpf utiliza Conigma para controlar y gestionar los cambios durante el transporte desde el sistema de desarrollo al de pruebas y producción.
El objetivo es que los procesos de gestión de cambios sean a prueba de auditorías. Conigma ofrece un flujo de trabajo de publicación que abarca desde los requisitos hasta los cambios y las funciones implantadas.
CodeProfiler de Virtual Forge se ha integrado en Conigma para comprobar automáticamente que los cambios en el código fuente cumplen las directrices de desarrollo.
Aunque Conigma ofrece una integración de CodeProfiler ya hecha, los responsables de TI de Trumpf optaron por una integración indirecta a través de Abap Test Cockpit (ATC) de SAP.
Se trata de un conjunto de pruebas incluido en el estándar SAP que proporciona diversas herramientas de análisis estático de código. El factor decisivo para utilizar ATC fue que Trumpf no quería bloquear el camino a futuros desarrollos de SAP en este ámbito, una buena elección a la vista de las nuevas funciones de NetWeaver 7.5x.
La integración del ATC en Conigma permite realizar una comprobación del ATC dentro del proceso para la solicitud de cambio y controlar el proceso posterior en función del resultado.
Si se incluyen los hallazgos de Prio 1, puede impedirse inicialmente el transporte desde el sistema de desarrollo al sistema de prueba. Actualmente, es posible que los desarrolladores contrarresten esto manualmente y también liberen los hallazgos Prio 1.
En el futuro, sin embargo, Trumpf tiene la intención de utilizar el ATC Exemption Browser. De este modo, se comprobará automáticamente si existen resultados de prioridad 1 que deban eliminarse o aprobarse a través del navegador de exenciones ATC. El paso de aprobación manual posterior se limitará entonces a cuestiones organizativas y formales.
Menos tiempo, más seguridad
Al utilizar CodeProfiler para la aceptación técnica de los cambios en el código Abap del cliente, Trumpf ahorra un tiempo considerable. Mientras que antes los desarrolladores necesitaban entre cinco y diez minutos para revisar un cambio, ahora solo necesitan unos 30 segundos para ver el resultado de una comprobación ATC.
Dado que cada día hay que comprobar y aprobar entre diez y quince cambios, la ventaja de tiempo es inmensa. Además, el uso de la herramienta de análisis de código da a los desarrolladores de Trumpf la buena sensación de no haber pasado por alto ningún error de seguridad y conformidad durante sus aprobaciones.
Dado que todos los cambios en los desarrollos propios de Abap se comprueban sistemáticamente, los responsables informáticos pueden estar seguros de que no aumentará el número de puntos de código críticos.
En el siguiente paso, Trumpf quiere integrar más casos de prueba en los análisis del código, sobre todo hallazgos de Hana. Así se garantiza que en la nueva codificación no se incorporen construcciones que funcionen en una base de datos clásica pero no con la tecnología Hana orientada al futuro.