Mucho más código abierto de lo que cree
En el Taller Europeo sobre Ecosistemas de Software (EWSECO), investigadores y profesionales debaten también sobre el desarrollo y uso de software de código abierto en productos comerciales y en el ecosistema SAP.
La SAP Community Network (SCN) tiene más de 41.000 visitas y el sitio web dedicado "Open Source & SAP" (https://sap.github.io) enumera proyectos interesantes en este campo de tensión.
Pero no sólo SAP, sino también muchos socios y clientes de SAP utilizan cada vez más el código abierto para realizar sus propias soluciones de forma más rápida, segura y rentable.
Esta tendencia genera grandes beneficios para SAP y todo el ecosistema SAP, por ejemplo, mediante ciclos de desarrollo más rápidos, mayor productividad de los desarrolladores y calidad en el desarrollo de soluciones comerciales.
Otras ventajas son una mayor apertura/interoperabilidad con otros sistemas y un importante ahorro de costes gracias al uso de entornos operativos como Linux y OpenStack, entre otros.
Sin embargo, el creciente uso del código abierto en el entorno empresarial conlleva inevitablemente retos totalmente nuevos, como la escasa o nula transparencia en su uso, las posibles vulnerabilidades de seguridad y los riesgos legales o financieros en el uso y la concesión de licencias.
Investigadores y profesionales informan en EWSECO, por ejemplo, de que las empresas y organizaciones utilizan mucho más código abierto de lo que ellas mismas creen o saben.
Así, en casi todas (99%) las auditorías de software empresarial se descubrieron componentes de código abierto, en el 75% desconocidos hasta entonces por la dirección y en más del 50% de los casos componentes con licencias GPL críticas.
Por regla general, durante las comprobaciones se encuentran más de cien componentes de código abierto diferentes en las aplicaciones, a veces incluso varios miles o más de diez mil.
En general, se puede afirmar que hoy en día alrededor de un tercio del código de las aplicaciones ya no consiste en desarrollos propios, sino en componentes de código abierto. (El estudio BlackDuck de 2016 habla incluso de un 35%).
El lado oscuro del código abierto
Aunque el uso del código abierto está creciendo y adquiriendo cada vez más importancia, la gran mayoría de las empresas no tienen (todavía) una visión general de los componentes de código abierto que utilizan.
Incluso entre las grandes organizaciones de TI, menos del 50% ha implantado una gobernanza eficaz del código abierto, según Gartner, y las que tienen "supervisión" sólo conocen el 50% de todos los componentes que utilizan.
Esto significa que la dirección simplemente desconoce muchos componentes de código abierto, aunque puedan contener tipos de licencia desconocidos/no claros o incluso virales y/o plantear riesgos potenciales de seguridad u operativos.
Por supuesto, también es problemático que las auditorías de software y las investigaciones profesionales sobre el uso del código abierto sólo suelan llevarse a cabo durante las próximas rondas de inversión, la diligencia debida de fusiones y adquisiciones, o poco antes de los acuerdos OEM/revendedores, por ejemplo, con SAP.
A menudo se descubren riesgos operativos, jurídicos y también de seguridad, que pueden ser bastante críticos para los proyectos previstos (por ejemplo, la venta de la empresa) y que normalmente sólo hay que "reparar" con mucho esfuerzo y en poco tiempo.
Desde el punto de vista operativo, por ejemplo, es importante saber qué componentes se utilizan en cada versión y qué antigüedad tienen. Para una evaluación jurídica, es importante la información sobre las licencias utilizadas, pero también saber si el uso de los componentes en el código propio se ajusta a ello (nube de palabras clave).
La información sobre las vulnerabilidades de los componentes, como la de la Base de Datos Nacional sobre Vulnerabilidades (NVD), que actualmente enumera más de 80.000 vulnerabilidades de código abierto, ayuda en las evaluaciones de seguridad.
Lo más importante es que las vulnerabilidades del código abierto descubiertas durante las auditorías se conocen desde hace una media de cinco años (y, por tanto, también las conocen los posibles atacantes) y el 90% de las vulnerabilidades descubiertas se clasifican como de riesgo medio o incluso alto.
Lo que se necesita, por tanto, es una supervisión proactiva y continua del código abierto que no sólo minimice los riesgos y prevenga los daños, sino que también ayude a reducir o evitar los esfuerzos y costes de las auditorías y los subsiguientes "trabajos de reparación".
Más de 10.000 clientes en todo el mundo y 30 años de experiencia en el ecosistema SAP convierten a Seeburger en líder del mercado de soluciones de integración B2B, algunas de las cuales se ofrecen también como soluciones OEM de SAP.
Como casi todas las soluciones de software empresarial de éxito, Seeburger también utiliza componentes de código abierto desde hace tiempo y en gran medida, y algunos de ellos se entregan a los clientes con o como parte de su propio software o se proporcionan como nuevas ofertas de software como servicio (SaaS) en la nube.
Con el fin de salvaguardar el uso de componentes de código abierto en Seeburger, pero también para clientes y socios (como SAP), Seeburger ha implementado procesos de cumplimiento adecuados desde el principio.
Gracias al uso de un sistema de supervisión integrado directamente en el proceso de desarrollo ágil de software, el proceso manual de los componentes de código abierto, pero también de los desarrollos internos (principalmente en Java), se ha automatizado casi por completo y se ha llevado al siguiente nivel.
Los directorios de componentes y licencias se crean pulsando un botón en Seeburger, las especificaciones de gestión se aplican automáticamente y se ahorran costes (un número medio de tres dígitos de horas de desarrollador de software al año).
El control activo de versiones garantiza que los componentes de código abierto utilizados (que, a diferencia de las aplicaciones móviles, no suelen disponer de un mecanismo de actualización automática) estén siempre al día.
Los desarrolladores ya no tienen que comprobar por sí mismos si los componentes utilizados están obsoletos y buscar nuevas versiones en distintas fuentes, sino que se les informa activamente. Esto ayuda a evitar proactivamente o eliminar rápidamente los problemas.
La supervisión automática de las licencias garantiza que los desarrolladores de software de Seeburger sólo utilicen las licencias de código abierto "deseadas" que hayan sido comprobadas y aprobadas previamente por la dirección.
De este modo se evitan riesgos legales al utilizar las soluciones de software como servicio suministradas, pero también las nuevas, y se garantizan importantes requisitos de cumplimiento en Seeburger, pero también en la empresa que utiliza el software de Seeburger.
Si se descubre una licencia que no está incluida en la "lista blanca" de Seeburger y, por tanto, no está autorizada, se interrumpe el proceso de compilación en el servidor de integración continua, evitando así que surjan más tarde mayores esfuerzos y riesgos.
Las alertas de seguridad sobre los componentes de código abierto utilizados ayudan a detectar más rápidamente posibles vulnerabilidades de seguridad y a eliminarlas lo antes posible. El conocimiento de qué componentes de código abierto se utilizan exactamente en qué versión en Seeburger se utiliza para este fin, lo que hace posible alertas de seguridad activas de grano fino y elimina el accionismo improductivo después de falsas alarmas que, de otro modo, serían frecuentes.
Seeburger utiliza para ello la solución VersionEye, que ofrece la empresa del mismo nombre en el centro de creación de empresas de Mannheim, Mafinex.
La base de datos VersionEye contiene metainformación como versiones, licencias e información de seguridad de más de 1,2 millones de proyectos de código abierto. La variante en la nube de versioneye.com cuenta ya con 40.000 usuarios registrados y registra 400.000 visitas al mes.
El software en sí es de código abierto y puede utilizarse de forma totalmente gratuita. Los clientes corporativos pueden obtener servicios empresariales adicionales de pago, como consultoría, asistencia y acceso a bases de datos a través de la API pública VersionEye.