Cyber Security: Des logiciels résilients pour les entreprises numériques

min de lecture

Les questions de sécurité au cours du développement dʼun logiciel ont toujours été une priorité pour les programmeurs dʼAbacus. Depuis deux ans, un soutien leur est apporté. En effet, un Information Security Manager contrôle les aspects sécuritaires dans le cycle de vie des logiciels ERP. Lʼobjectif de son travail est dʼempêcher les cyber-attaques, la fuite de données ainsi que les erreurs de logiciel.

Stefan Schwizer est Information Security Manager chez Abacus et vérifie que les directives et les objectifs de qualité soient bien respectés lors du développement du logiciel.

La sécurité logicielle est une discipline informatique, visant à empêcher lʼextraction non autorisée des données issues des logiciels. La dépendance croissante de solutions numériques a rendu nécessaire lʼétablissement de mesures de sécurité adéquates lors du développement de programmes. Avec la transformation numérique grandissante, les entreprises font de plus en plus confiance aux systèmes ERP pour optimiser leurs processus de travail. Lʼéchange de données qui en résulte permet, dans la plupart des cas, de gérer les ressources de manière efficace et dʼautomatiser les processus.

Cependant, le traitement de données financières et de clients est une cible attrayante pour des éventuelles cyber-attaques. Il faut donc protéger ces données du mieux possible. Lors des développements, Abacus se base sur des objectifs de protection, respectivement sur les valeurs fondamentales de la sécurité des informations. Celles-ci englobent la confidentialité, lʼintégrité et la disponibilité. La signification de ces valeurs fondamentales peut être mise en lumière avec lʼexemple dʼun virement bancaire: la confidentialité garantit que les informations telles que le destinataire, lʼexpéditeur et le montant restent secrètes. Lʼintégrité assure que le montant du virement ne peut pas être modifié. La disponibilité garantit que le virement est transmis à la banque avec succès. On peut parler dʼun traitement réussi uniquement lorsque ces valeurs fondamentales nʼont pas été enfreintes.

Processus sécurisés pour des logiciels sécurisés

Les risques des logiciels peuvent être réduits à un minimum grâce à lʼimplémentation de processus sécurisés tout au long du cycle de vie du logiciel. En effet, la plupart du temps, les fuites de données proviennent dʼun enchaînement de petites erreurs ou dʼimprécisions. Depuis 38 ans, Abacus peut présenter un bilan solide, notamment par lʼactualisation continuelle de connaissances professionnelles dans ce domaine. Néanmoins, des failles de sécurité sont apparues dans le passé, mais elles ont pu être identifiées et résolues à temps, de sorte quʼaucun dommage nʼa été causé aux utilisateurs.

Lors du développement du logiciel Abacus, les aspects de sécurité ont depuis toujours une haute priorité pour les programmeurs responsables. Il y a deux ans, un poste dʼInformation Security Manager a été créé afin dʼavoir un soutien supplémentaire en matière de sécurité logicielle. Cette fonction est exercée par Stefan Schwizer. Il ne sʼoccupe pas seulement du processus de création dʼun logiciel, mais accompagne en intégralité le cycle de vie du logiciel. Il vérifie notamment que les directives et les objectifs de qualité soient bien respectés lors du développement du logiciel. Le but de son activité est dʼempêcher les cyber-attaques. En effet, lorsque les aspects de sécurité sont continuellement sous surveillance, lʼintégrité et la résilience des logiciels sont garanties durant toute leur durée dʼutilisation.

Les aspects de sécurité sont importants à chaque phase du cycle de vie du produit: depuis lʼidée de départ en passant par la programmation jusquʼà lʼexploitation continuelle et lʼentretien.

La sécurité de A à Z

Afin de planifier, de développer et de surveiller des logiciels sécurisés, Abacus utilise lʼapproche «DevSecOps». Cet acronyme provient de «Development», «Security» et «Operation», cʼest-à-dire développement, sécurité et exploitation en français. Il sʼagit dʼintégrer les aspects de sécurité dès le départ dans le cycle de vie du développement dʼune application. Le processus décrit les activités répétitives à travers les différentes phases de vie du logiciel. Les aspects de sécurité sont pris en compte lors du développement et de lʼexploitation et soutiennent ces processus.

Le spécialiste en sécurité dʼAbacus ainsi que la spécialiste juridique pour la protection des données et le CTO sont sollicités dès le processus de planification dʼun nouveau logiciel. Ils restent impliqués durant lʼintégralité du développement. Ils sont également membres de lʼ«Abacus Security Board», tout comme lʼéquipe dirigeante; ils peuvent notamment prendre des décisions rapides en cas de cas graves. Durant la «Phase de code», une première vérification de la qualité du code source nouvellement développé est réalisée. En effet, un code source sans erreur est la base pour un logiciel sécurisé. Le contrôle qualité comporte environ 1‘800 règles adaptées à la langue de programmation utilisée par Abacus, Java. Celles-ci sont divisées en différentes catégories et niveaux de gravité, et sont vérifiées automatiquement. Seuls les logiciels qui répondent à ces exigences de qualité sont autorisés. Lors de la «Phase de test», Abacus procède à de nombreux tests, quʼil sʼagisse de tests entièrement automatisés ou bien de vérifications manuelles. Ainsi, les aspects fonctionnels tout comme les questions concernant la sécurité et la protection de données sont contrôlés.

Lors des développements, Abacus se base sur des objectifs de protection, respectivement sur les valeurs fondamentales de la sécurité des informations. Celles-ci englobent la confidentialité, lʼintégrité et la disponibilité.

En amont dʼune publication de logiciel, une attaque simulée est régulièrement effectuée par une entreprise de sécurité mandatée par Abacus. Ainsi, la sécurité logicielle est contrôlée en matière de vulnérabilités, pour que ces dernières puissent être corrigées avant quʼun réel dommage ne soit causé. Le code est signé durant le contrôle de réception, qui constitue lʼétape finale du processus de développement. Celui-ci sert de document à lʼintégrité du logiciel. De cette manière, le client reçoit la garantie que le code provient dʼAbacus et quʼil nʼa subi aucune modification. Bien quʼAbacus ne soit pas directement responsable de la mise en service, cʼest-à-dire de la mise à disposition des logiciels chez lʼutilisateur (cette tâche incombe au partenaire), il sʼagit dʼune étape significative et potentiellement risquée. Pour cela, Abacus propose un soutien complet pour les clients et partenaires durant cette étape.

Soin continu et surveillance

Pour garantir la résilience dʼun logiciel durant lʼintégralité de son cycle de vie, des hotfixes sont développés chaque mois. Ces adaptations sont de moindre ampleur et contribuent essentiellement à la sécurité. Grâce à une charge réduite dʼactualisations par des petites mises à jour, les utilisateurs peuvent utiliser la version la plus actuelle, et donc, la plus sûre. Durant la «phase de surveillance», la surveillance continue dʼune application est la priorité principale, et permet dʼidentifier les failles de sécurité ou bien les tentatives dʼattaque le plus tôt possible. Entre autres, tous les composants logiciels développés par des tiers sont contrôlés au niveau de vulnérabilités éventuelles. Un composant concerné est soit actualisé, soit remplacé par un autre composant qui garantit une sécurité intégrale. Actuellement, les 4 versions actives du logiciel ERP sont contrôlées avec environ 600 composants externes différents chacune. Ceci entraîne en moyenne 60 événements au cours dʼune année. De toutes les vulnérabilités signalées, environ 80% sont corrigées à lʼaide dʼune mise à jour. Les 20% restants sont traités par lʼ«Abacus Security Board» et requièrent des stratégies plus exigeantes. Certains cas critiques sont, après avoir été solutionnés avec succès, publiés sur le site des partenaires Abacus. Ainsi, les informations importantes sont retenues pendant au moins 90 jours, ce qui laisse suffisamment de temps à tous les utilisateurs pour effectuer une mise à jour.

En effet, lorsque les aspects de sécurité sont continuellement sous surveillance, lʼintégrité et la résilience des logiciels sont garanties durant toute leur durée dʼutilisation.

Conclusion

La somme de petites activités permet à Abacus depuis 38 ans de développer avec succès des logiciels résilients pour les clients. Toutefois, il est tout aussi important que les utilisateurs et les partenaires apportent leur contribution en matière de sécurité. En sʼinformant sur le portail des partenaires sur les thèmes de sécurité, en prenant compte de la procédure à suivre proposée par Abacus et surtout en mettant leurs logiciels à jour en permanence.