Sous les feux des projecteurs début 2021 quand des cyberpirates ont injecté un code malveillant connu sous le nom de Sunburst dans son système de développement de logiciels, SolarWinds a depuis tiré les enseignements de cette douloureuse période. L'éditeur d'Orion, qui compte bien faire des étincelles en Europe, a en effet introduit de nouvelles pratiques et technologies de développement de logiciels pour renforcer l'intégrité de son environnement de conception d'applications. Il comprend ce que SolarWinds dit être le premier processus de « conception parallèle » où le développement logiciel s'effectue « via plusieurs chemins doublement sécurisés » pour établir une base solide en matière de contrôles d'intégrité.

« Cette approche est une nette amélioration pour s'assurer que les binaires compilés correspondent au code source prévu et utilisé pour les créer », a expliqué Daniel Kennedy, directeur de recherche pour la sécurité de l'information et la mise en réseau chez 451 Research. « Le nouveau système a été développé en utilisant un calendrier accéléré, il n'y a donc aucune garantie qu'il sera entièrement sécurisé au début, mais il semble qu'il permette également des actions plus rapides et plus dynamiques, si de nouvelles menaces apparaissent. Ce système a également plus de transparence dans sa conception, permettant une amélioration, une maintenance et un développement plus rapides et plus fiables ».

Des processus de développement qui auraient pu prévenir l'attaque

« L'ensemble de l'approche du pipeline CI/CD d'AppDev n'est pas seulement linéaire mais repose essentiellement sur une seule ligne », ajoute Rik Turner, analyste principal principal pour la cybersécurité chez Omdia, une société de conseil en technologie. « L'introduction de lignes parallèles, peut-être avec une équipe vérifiant le travail de l'autre, ressemble à une approche pour obtenir un environnement plus sécurisé par défaut ».

« Si le nouveau schéma de construction avait été mis en place en mars 2020, il est probable que l'attaque aurait pu être prévenue ou traitée plus rapidement », estime de son côté Shital Thekdi, professeur agrégé d'analyse et d'opérations à l'Université de Richmond. « Le nouveau schéma de construction aurait considérablement réduit les chances que les pirates aient la possibilité de falsifier le système de construction sans être observés », ajoute quant à lui Ken Arora, ingénieur distingué au Bureau du CTO chez F5, un fournisseur de sécurité des applications et d'outils industriels. « Même si les attaquants avaient eu un certain succès, le compromis aurait été de courte durée en raison de la stratégie d'opération dynamique et de l'approche autodestructrice ».

Le dernier système de construction de SolarWinds est construit autour de quatre principes de securité by design :

- Les opérations sont dynamiques et utilisent des environnements de création de logiciels à court terme qui s'autodétruisent après avoir terminé une tâche spécifique ;
- Les produits sont systématiquement conçus de manière déterministe afin que tous les sous-produits nouvellement créés aient toujours des composants identiques et sécurisés ;
- Les processus contiennent des versions simultanées afin que les sous-produits de développement logiciel, tels que les modèles de données, puissent être créés en parallèle pour établir une base pour détecter les modifications inattendues des produits ;
- Des enregistrements détaillés sont conservés afin que chaque étape de conception du logiciel soit suivie pour une traçabilité complète et une preuve d'enregistrement permanente.

Certains composants open source publiés

Étant donné que le processus de construction de logiciels utilisé par SolarWinds au moment de l'attaque Sunburst est couramment utilisé par l'industrie, la société met certains composants de son dernier système de conception à la disposition du public en tant que logiciel open source. Selon le CEO et président de SolarWinds, Sudhakar Ramakrishna, « Communiquer de manière transparente et collaborer au sein de l'industrie est le seul moyen de protéger efficacement notre cyber infrastructure partagée contre l'évolution des menaces ».