Découvrez comment intégrer facilement l'analyse statique, les tests unitaires et d'autres méthodes de test de logiciels C et C++ dans votre pipeline CI/CD. Inscrivez-vous pour la démo >>

La cyber-résilience signifie revenir à l'essentiel

De Kevin E. Greene

19 mai 2021

3  min lire

La réalisation de la cyber-résilience dans vos produits logiciels commence par la réduction des points vulnérables de votre logiciel. Cela commence par s'assurer que vous adoptez des normes de codage sécurisées. Lisez la suite pour savoir comment.

Les pratiques de cybersécurité doivent être solides face à des adversaires motivés et adroits. Ils doivent être fiables et dignes de confiance dans un cybermonde de plus en plus complexe.

«Nous sommes liés par une mission de lutte contre les cybermenaces qui sont, par nature, implacables. Cela est conçu par ceux qui tentent constamment de voler nos données, notre richesse et notre tranquillité d'esprit. Nous sommes également liés par des événements mondiaux qui menacent le fondement même de notre profession. Nous répondons en cherchant toujours plus profondément en nous-mêmes pour créer des solutions capables de résister et de se remettre rapidement de toute l'adversité qui nous est lancée.

-Extrait Conférence RSA 2021

Une présence numérique accrue augmente l'exposition

La pandémie actuelle n'a pas découragé les adversaires de lancer des cyberattaques. En fait, certains experts estiment qu'il y a une augmentation des cyberattaques dans le monde compte tenu de la dépendance accrue au télétravail et à la présence à distance.

Cette expansion oblige les organisations à exposer leurs actifs numériques et leur infrastructure pour prendre en charge et étendre les fonctions commerciales. En exposant plus de surfaces d'attaque, les organisations deviennent plus vulnérables aux cyberattaques et moins résilientes. Cela mine un principe de conception fondamental de la cyber-résilience: réduire la surface d'attaque.

Suivant le principe de conception de la cyber-résilience: réduire les surfaces d'attaque

Il est essentiel que toutes les activités de génie logiciel et de développement de logiciels respectent le principe de conception de la cyber-résilience et réduisent les surfaces d'attaque. Le principe encourage la moindre fonctionnalité (restriction des ports, protocoles et services) et appelle à:

  • Réduisez le nombre d'interfaces disponibles pour les utilisateurs non autorisés.
  • Dépréciez les fonctions dangereuses / non sécurisées.
  • Réduisez la complexité.
  • Minimisez le partage.
  • Éliminez les mécanismes les moins courants.

Le principe est conforme à ce que Brian Knapp, ingénieur logiciel, appelle "minimalisme logiciel», Qui, conclut-il, est la compétence la plus difficile à enseigner en génie logiciel. Le minimalisme logiciel met l'accent sur l'utilisation de la moindre quantité de code et de logiciel pour construire des systèmes et des applications afin de réduire la complexité et d'éviter d'accumuler des dettes techniques.

L'approche réduit considérablement la surface d'attaque pour un système logiciel donné, minimisant les points d'entrée disponibles et les vecteurs d'attaque pour les cyberattaques. Cependant, le développement logiciel moderne s'est écarté de cette approche classique de l'ingénierie logicielle et se concentre fortement sur l'intégration de plus de fonctionnalités et de fonctionnalités.

Les caractéristiques et fonctionnalités du produit génèrent un avantage concurrentiel. Ils sont utilisés pour mettre en évidence la proposition de valeur unique pour se différencier des concurrents. Le problème est que plus de fonctionnalités signifient plus de code.

Plus de code signifie plus de complexité.

Et plus de complexité signifie plus de problèmes, comme dans les cyberattaques.

Rendez-nous visite sur le marché RSAC!

Remarque : Pour accéder au lien, vous devez disposer d'un compte RSA Conference et être connecté à la plate-forme virtuelle de conférence RSA.

Le défi des systèmes de développement logiciel complexes et modernes

La complexité des systèmes de développement de logiciels modernes rend très difficile la mise à jour rapide des correctifs et la correction des vulnérabilités. Les deux augmentent la fenêtre d'exposition qui se traduit souvent par des cyberattaques.

La fenêtre d'exposition est une mesure clé pour atténuer les cyberattaques. Cependant, il devient difficile de localiser et de déterminer en raison de la friction dans les divulgations de vulnérabilités et de signaler les chercheurs se sont plaints de.

Des problèmes similaires sont survenus récemment avec Katie Moussouris, PDG de Luta Security, lorsque elle a révélé des bugs découvert au Clubhouse et avec Sick Codes dans leur découverte des problèmes de sécurité avec les API John Deere. Ces situations rappellent que le système est toujours en panne comme indiqué dans un Article de Threat Post en 2018 qui met en évidence les problèmes systémiques et les frictions persistantes entre les chercheurs.

La communauté de recherche joue un rôle clé en mettant un œil supplémentaire sur les bogues pour les rendre moins profonds, ainsi qu'en collaborant avec les entreprises pour rendre leurs produits plus sûrs. Compte tenu de notre paysage actuel des menaces, chaque jour compte. Ces hoquets dans les divulgations de vulnérabilités augmentent définitivement la fenêtre d'exposition.

Alors que la fenêtre d'exposition augmente, il semble que le temps d'exploitation diminue comme indiqué dans recherche menée par FireEye. La recherche a utilisé un ensemble d'échantillons de vulnérabilités et d'expositions communes (CVE) pour suivre le temps entre les divulgations, les versions de correctifs et les expositions aux vulnérabilités.

La recherche met en évidence que la majorité de l'exploitation dans la nature se produit pendant l'une des périodes suivantes:

  • Avant l'émission du correctif
  • Quelques jours après la mise à disposition d'un correctif ou d'un correctif
  • Dans un délai d'un mois après la date du patch

Cela n'est pas de bon augure pour les organisations qui ont du mal à corriger des systèmes complexes. Cela a été mis en évidence avec le Vulnérabilité Apache Struts (CVE-2017-5638) Cela aurait conduit à la violation d'Equifax où le fournisseur a corrigé la version vulnérable le 6 mars 2017. Trois jours plus tard, le bogue était attaqué en masse sur Internet. Ce n'est que plusieurs mois plus tard que la violation d'Equifax s'est produite.

Cybersécurité intégrée grâce aux normes de codage sécurisé CWE et CERT

La première ligne de défense contre les cyberattaques

L'ingénierie logicielle et le développement de logiciels jouent un rôle clé dans la cyber-résilience. En fait, ils constituent la première ligne de défense contre les cyberattaques. Les systèmes et applications logiciels doivent être conçus et développé d'anticiper, de résister, de récupérer et de s'adapter à toute épreuve qui survient dans le cyberdomaine. Pour ce faire, il faut adopter des pratiques de conception et de développement telles que le minimalisme logiciel pour réduire les surfaces d'attaque.

Ce n'est pas que nous devons creuser plus profondément en nous-mêmes pour créer des solutions. Au lieu de cela, nous devons revenir à l'essentiel. Cela signifie codifier des pratiques saines comme le minimalisme logiciel dans le développement de logiciels modernes pour rendre les systèmes logiciels et les applications plus résilients, plus capables de résister et de se remettre rapidement de toute adversité qui leur est lancée.

Découvrez comment votre équipe peut développer et fournir des logiciels conformes à la sécurité.

 

De Kevin E. Greene

Kevin, directeur des solutions de sécurité chez Parasoft, possède une vaste expérience et une vaste expertise en matière de sécurité logicielle, de cyber-recherche et développement et de DevOps. Il met à profit ses connaissances pour créer des solutions et des technologies significatives afin d'améliorer les pratiques de sécurité logicielle.

Recevez les dernières nouvelles et ressources sur les tests de logiciels dans votre boîte de réception.