Surface d'attaque logicielle
La surface d'attaque logicielle est le profil complet de toutes les fonctions de tout code s'exécutant dans un système donné qui sont disponibles pour un utilisateur non authentifié.
Plus la surface est grande, plus il y a de chances qu'un attaquant ou un logiciel malveillant puisse utiliser divers exploits pour accéder et exécuter du code sur la machine cible. La surface d'attaque logicielle est particulièrement à risque dans le cas des applications Web, qui exposent le codage à Internet.
Les fonctions défectueuses peuvent conduire à la compromission d'un réseau entier ou d'un autre système en permettant à un utilisateur non vérifié -- qui peut être un pirate ou un espion d'entreprise -- de voler des données ou d'obtenir un accès supplémentaire, peut-être en élevant les privilèges au niveau d'administrateur. Les fonctions individuelles présentant des failles de sécurité peuvent être considérées comme des vecteurs d'attaque ; celles qui peuvent être exploitées pour obtenir un accès supplémentaire peuvent être considérées comme des vulnérabilités.
Un autre élément à prendre en compte dans la surface d'attaque des logiciels est la menace des initiés. Les utilisateurs qui s'authentifient avec des informations d'identification valides peuvent être en mesure d'accéder à des données non protégées au-delà de leurs niveaux d'autorisation si les contrôles d'accès sont mis en œuvre de manière lâche.
Parce que tout code en cours d'exécution peut présenter des vulnérabilités exploitables, l'une des façons les plus simples de limiter la surface d'attaque des logiciels est de réduire la quantité de code en cours d'exécution à un moment donné. Si un programme n'est pas utilisé ou si d'autres logiciels installés peuvent effectuer la même tâche, il doit être éliminé. Les antivirus et les pare-feu matériels et logiciels peuvent contribuer à bloquer l'accès aux vulnérabilités existantes ; les mises à jour du système d'exploitation et des applications permettent parfois de corriger ces faiblesses. Cependant, il est préférable, pour la sécurité globale, de minimiser le nombre de vulnérabilités dès le départ. À cette fin, les développeurs prennent de plus en plus en compte les vecteurs d'attaque dans la conception de leurs logiciels.
Parce que de nombreuses approches d'attaque exploitent une combinaison de types de surface d'attaque pour accéder aux ressources souhaitées, une analyse complète de la surface d'attaque est cruciale pour configurer correctement les systèmes de détection des brèches (BDS), le pare-feu, les systèmes de prévention des intrusions, la politique de données et d'autres mesures de sécurité. Les outils disponibles pour guider cette analyse comprennent WebInspect, l'analyseur de surface d'attaque de Microsoft et CORE Impact.
Voir aussi : surface d'attaque réseau, surface d'attaque physique, surface d'attaque d'ingénierie sociale
.