Gestion des mises à jour logicielles
Jean-Marc Robert
Génie logiciel et des TI
Menaces et vulnérabilités
Menaces
Incidents non intentionnels
Activités inappropriées
Contenu inapproprié
Utilisation inappropriée des ressources informatiques
Harcèlement
Abus de privilèges et de droits
Activités frauduleuses
Fraudes
Vols
Sabotages
Attaques sur des sites externes
Vulnérabilités
Logiciels
Sans mises à jour
Systèmes informatiques
Comptes inactifs
Comptes par défaut
Mauvais mots de passe
Ingénierie sociale
…
Gestion des mises à jour logicielles
Les risques dus aux vulnérabilités logicielles sont très élevés.
Les vulnérabilités logicielles peuvent avoir de coûteux impacts:
1000 ordinateurs infectés × 8 heures × $70/heure = $560,000
Gestion des mises à jour logicielles – Tâches
Créer un inventaire des systèmes de l’entreprise.
Veille technologique – vulnérabilités, menaces, contre-mesures.
Évaluer les priorités des menaces et de leurs contre-mesures.
Analyse de risque !!!
Créer une liste de contre-mesures à appliquer dans l’entreprise.
Analyse de risque !!!
Tester les contre-mesures.
Évaluer l’impact au niveau de l’entreprise.
Déployer les contre-mesures.
Mise à jour logicielle, changement de configuration (pare-feu) ou simplement retirer l’application
Gestion des mises à jour logicielles – Tâches
Distribuer l’information pertinente aux administrateurs de systèmes.
Déployer automatiquement les mises à jour logicielles.
Seulement après les avoir testées.
Configurer si possible la mise à jour automatique des logiciels.
Vérifier l’efficacité des contre-mesures
Utiliser des outils de balayage (vulnerability scanning).
Réviser les fichiers journaux des mises à jour.
Former les divers intervenants au sujet des solutions à apporter aux diverses vulnérabilités.
Inventaire
Nom du système, connexion réseau, configuration matérielle, configuration logicielle, …
Regrouper les systèmes et déterminer leur priorité
Déterminer qui sont les responsables pour chacun des groupes
Dans une grande organisation, il serait souhaitable de limiter les configurations typiques.
Limiter les matériels utilisés (Dell ou HP ou …)
Uniformiser les versions des logiciels utilisés
Limiter le nombre de configurations des paramètres de sécurité des systèmes d’exploitation et des applications.
Veille technologique
Vendeurs (Web ou listes de distribution)
Précis mais peut-être lent à réagir (ils doivent développer les mises à jour)
Beaucoup de sites à consulter
Mises à jour fiables (? – ils ont produit ces mises à jour rapidement)
Tiers indépendants (Web ou listes de distribution)
Rapidité
Regroupement de plusieurs produits en un seul endroit – dans certains cas
Interactivité avec les intervenants (courriels ou Web permettant de commenter)
Pas de contre-mesure proposée ou des mises à jour indépendantes risquées.
Tiers gouvernementaux (Web ou listes de distribution)
US-Cert, SEI CERT
Base de données de vulnérabilités (p.ex. NIST NVD)
Veille technologique
Par surveillance des systèmes
Outils de balayage des vulnérabilités
Utiles pour évaluer le niveau d’exposition – versions périmées, rapports, etc.
Recherche des vulnérabilités
Leur précision dépend de la mise à jour de leur base de données.
Peuvent causer des problèmes: trafic important, panne d’un système lors du balayage, etc.
Outils de mise à jour de logiciels
Utiles pour évaluer le niveau d’exposition – versions périmées, rapports, etc.
Recherche des numéros de version
Leur précision dépend de la mise à jour de leur base de données.
Peuvent être configurés afin d’évaluer des systèmes spécifiques
Peuvent causer des problèmes: trafic important, panne d’un système lors du balayage, etc.
Tester les contre-mesures
Vérifier l’intégrité de la mise à jour (p.ex. empreinte du
logiciel avec ou sans signature – empreinte sur le site Web).
Vérifier si la mise à jour est exempte de virus.
Les mises à jour et les changements de configuration doivent être testés dans un environnement non opérationnel, mais
représentatif des systèmes déployés dans l’entreprise.
Vérifier l’impact de l’installation d’une mise à jour sur les mises à jour antérieures.
Chercher à connaître l’expérience d’autres équipes lors du déploiement d’une mise à jour (veille technologique).
Déploiement – Outils
Architecture à deux niveaux
Serveur central
Mises à jour logicielles devant être déployées
Ordinateurs hôtes
Sans agent de mise à jour
Outil de balayage réseau ayant un accès privilégié aux ordinateurs hôtes
Outil pouvant être intégré à un outil de balayage des vulnérabilités
Utilisation importante de la bande passante du réseau + lent pour un réseau important
Utilisation de ports dédiés.
Peut-être bloqué par un pare-feu local (ou nécessite l’ouverture de ports)
Inapproprié pour les télétravailleurs
Agent de mise à jour
Installation d’un agent devant avoir des droits privilégiés.
Communique avec le serveur central afin de connaître les mises à jour à effectuer.
Rapidité
Déploiement – Outils : Risques
Une mise à jour distribuée par le vendeur du logiciel peut être erronée ou même infectée par un virus.
Un employé du vendeur de l’outil de mise à jour peut altérer une mise à jour.
Un attaquant malveillant peut s’introduire dans le serveur central.
Altération des mises à jour.
Obtention des mots de passe (dans le cas « sans agent »)
Un attaquant malveillant peut exploiter une vulnérabilité (oups!) de l’outil de mise à jour.
Critères d’évaluation du processus
Processus dont l’efficacité doit être continuellement évaluée.
Mesurer la susceptibilité des systèmes aux attaques
Nombre de mises à jour devant être déployées
Nombre de vulnérabilités répertoriées
Nombre de services disponibles
Mesurer le temps de réponse
Temps nécessaire à l’équipe en charge de prendre connaissance d’une vulnérabilité
Temps nécessaire afin de déployer une mise à jour
Temps nécessaire afin d’effectuer un changement de configuration
Mesurer les coûts
Coût de l’équipe responsable
Coût du support aux administrateurs de système
Coût des outils
Coût lorsque le processus éprouve des failles
Critères et niveau de maturité
Référence
Peter Mell, Tiffany Bergeron et David Henning , Creating a Patch and Vulnerability Management Program, NIST SP 800- 40, 75 pages, 2005.