> Tech > Royaume 2 : les applications

Royaume 2 : les applications

Tech - Par Renaud ROSSET - Publié le 17 février 2014
email

Les applications tournent sur des ordinateurs connectés aux réseaux et aux stockages de données, comme des unités SA et NAS.

Royaume 2 : les applications

Autrement dit, les applications sont devenues des îlots informatiques dans un océan de ressources IT. Les hackers dirigent souvent leurs attaques contre les applications parce que les DSI sont moins rigoureux avec la sécurité de ces dernières, soit parce qu’ils s’abritent derrière la sécurité du réseau, soit parce qu’ils ignorent leurs fragilités.

Il est facile de ne considérer les applications que comme des programmes liés à la conduite du business et à la gestion de la relation client (CRM). En réalité, elles se trouvent en beaucoup d’endroits, y compris des appliances réseaux consacrées au stockage des e-mails et des fichiers, des serveurs d’authentification des utilisateurs, et des serveurs VPN, comme des passerelles SSL VPN. Vous devez veiller à la sécurité de toutes ces applications pour une bonne protection globale. Trois outils sont à votre service dans le royaume des applications :

Evaluation de la vulnérabilité

Bien que la plupart des entreprises soignent l’étanchéité de leur périmètre réseau avec des pare-feu efficaces, il reste de nombreuse failles, via des logiciels malveillants, l’ingénierie sociale, ou d’autres attaques internes sournoises. Les systèmes d’exploitation, comme Windows, subissent un flot constant de nouvelles vulnérabilités, corrigées par un flot de patches tout aussi constant. Les unités de réseaux nécessitent aussi des correctifs périodiques pour des vulnérabilités connues, comme les débordements de buffer, des injections SQL défectueuses, et des scripts multi-plates-formes. La surveillance du réseau et du trafic contre des attaques actives ne suffit pas. Vous devez aussi traquer les faiblesses potentielles et les corriger avant qu’un logiciel malveillant ou un pirate n’en tire parti.

La première application open source pour l’évaluation de la vulnérabilité (vulnerability assessment, VA) est Nessus. Parmi les produits open source, le scanner de vulnérabilité de réseaux Nessus est unique. À l’origine strictement gratuit, Nessus est aujourd’hui un croisement entre open source et propriétaire. Nessus scrute systématiquement votre réseau interne ou externe, en soumettant chaque unité et chaque service à un torrent d’attaques simulées, appelées audits, en enregistrant la réussite ou l’échec de chacune. Nessus produit ensuite un rapport des vulnérabilités constatées, en les classant par degré de gravité et en indiquant comment les corriger.

Un bon outil VA se met à jour continuellement avec les derniers audits disponibles, pour garder en
permanence son efficacité. À la fois Nessus et sa variante open source (dérivé), OpenVAS, assurent des mises à jour quotidiennes, mais avec Nessus il faut payer pour les mises à jour les plus récentes. Il existe aussi des produits VA entièrement propriétaires, certains destinés à des matériels spécifiques, comme l’IBM i.

Informations sur la sécurité et gestion des événements

Quand des hackers prennent une application pour cible, il leur faut souvent soumettre des milliers ou des millions de transactions factices pour mettre l’application à genoux. Et ils savent bien qu’une trop grande masse de ces transactions allumera des voyants chez la victime : supervision de réseaux, analyse de trafic, ou IDS. Ils sont suffisamment rusés pour envoyer les paquets d’attaque assez lentement pour déjouer les outils de détection habituels.

La plupart des applications donnent souvent des signes d’une attaque en cours, par la journalisation des événements d’erreur et de défaillance des transactions. L’exemple le plus classique d’une telle intrusion est une attaque par mot de passe à outrance, en essayant de se connecter à une application à l’aide d’une liste de millions d’ID et de mots de passe utilisateur potentiels. Certes, la plupart des applications enregistrent les tentatives de mots de passe avortées, mais si personne ne consulte les journaux, l’attaque passe inaperçue. De la même manière, les applications journalisent souvent les événements de débordements de buffer, les défaillances de bases de données et de scripts, et les effondrements partiels d’applications.

Malheureusement, très peu d’informaticiens ont le temps de consulter les journaux des applications, et encore moins de les étudier continuellement. De plus, le signe d’une attaque n’apparaît parfois qu’en examinant côte à côte les événements provenant de deux ou plusieurs journaux : c’est leur corrélation plutôt que les événements eux-mêmes, qui donne l’alerte. Vous l’avez sûrement deviné,il existe une catégorie d’outils permettant d’automatiser la supervision et la corrélation des journaux d’événements d’applications : Security Information and Event Management (SIEM).

Un utilitaire de corrélation d’événements SIEM collecte et stocke des événements dans une base de données, puis les trie pour les grouper de manière à révéler des profils sous-jacents dans le comportement d’une application.

Par exemple, une augmentation du nombre d’échecs de login n’est peut-être pas grave, mais si elle coïncide avec un grand nombre d’ID de login uniques, elle peut révéler qu’une attaque est en cours. SIEM peut corréler les journaux provenant de diverses sources, comme des applications web, des appliances VPN, des pare-feu, et des serveurs d’e-mail. Lorsque les événements provenant de sources multiples s’accumulent à des moments plus spécifiques, c’est un indice très net d’attaque délibérée. Les outils SIEM peuvent alerter sur la nature et la fréquence de la corrélation, un procédé heuristique utile pour surveiller la sécurité.

Simple Event Correlator

est un outil open source qui accepte des événements provenant du syslog UNIX-style, des journaux d’événements Windows, des pare-feu, et d’autres unités de réseaux, en les journalisant dans une base de données et en appliquant des règles stockées dans des fichiers texte pour générer des alertes en cas de corrélation significative.

SEC est l’un des outils open source les plus rudimentaires. Il ne fonctionne que sur des systèmes de type UNIX (AIX, HP-UX, FreeBSD, Mac OSX, OpenBSD, et l’environnement Windows CygWin Posix).

Si vous ne maîtrisez pas les tâches de mise en place et de maintenance plutôt complexes de SEC, rassurez-vous : de nombreux produits commerciaux offrent des versions d’évaluation gratuites ou peu onéreuses que vous pouvez déployer dans un réseau de production, pour utiliser à plein le concept de corrélation d’événements.

L’un de ces produits est Splunk, qui vous permet d’explorer interactivement les corrélations d’événements à partir de sa base de données intrinsèque. Une version gratuite (figure ci-dessous) peut être utilisée en production pour traiter quotidiennement jusqu’à 500 Mo de données de journaux.

Pare-feu d’applications

Il existe une excellente défense contre les attaques d’applications : une couche de sécurité consacrée à la détection et au détournement d’attaques connues. Par exemple, les débordements de buffer figurent parmi les vulnérabilités les plus courantes. Or, les attaques tentant de les exploiter sont souvent détectées par de simples contrôles de vraisemblance portant sur les tailles des enregistrements de transactions. Un pare-feu d’applications est un moyen de fournir cette couche de protection, de superviser les transactions, et de rejeter celles qui sont suspectes. Notons au passage qu’une transaction d’applications n’est pas la même chose qu’un paquet de réseau, parce qu’une transaction est généralement constituée de plusieurs échanges de paquets dans les deux sens. Un pare-feu d’applications agit au milieu d’une transaction et examine les paquets dans les deux sens pour vérifier qu’ils respectent les séquences et les quantités d’informations autorisées.

Les pare-feu d’applications peuvent être des appliances réseau autonomes, parfois combinées avec d’autres services applicatifs tels que l’offloading SSL/TLS ou la mise en cache. Ils peuvent être aussi un service réseau résidant sur un autre serveur, comme un proxy HTTP, par lequel les transactions sont acheminées. Ou encore une couche de logiciel sur le serveur d’applications lui-même, intercalée entre l’application et le monde extérieur. Dans tous les cas, comme le pare-feu d’applications examine le trafic dans un contexte transactionnel, il peut détecter des données malveillantes, comme l’injection SQL, ainsi que des tentatives pour canaliser le trafic non autorisé par un protocole d’application, comme un tunnel SSH au travers d’un serveur web.

ModSecurity for Apache

est un moteur pare-feu d’applications open source pour applications Web. Son rôle est double : il protège contre les attaques d’applications web courantes et il effectue l’analyse et la journalisation du trafic en temps réel. Quand ModSecurity détecte des transactions web malveillantes, il les évince avant qu’elles n’atteignent l’application visée sur le web.

ModSecurity fonctionne comme un plugin d’Apache, mais un pare-feu d’application peut fonctionner comme un processus autonome sur un serveur HTTP/HTTPS ou sur une unité séparée située sur un autre réseau, en ne transmettant au serveur cible que les transactions ayant satisfait à l’inspection.

Les pare-feu d’applications commerciaux existent sous forme d’addons pour des plates-formes d’applications spécifiques (par exemple, IIS), des applications spécifiques (par exemple, SAP), ou des appliances génériques. Un parefeu d’applications ne dispense pas les auteurs de créer des applications sûres, mais il renforce l’arsenal défensif.

Téléchargez cette ressource

Préparer l’entreprise à l’IA et aux technologies interconnectées

Préparer l’entreprise à l’IA et aux technologies interconnectées

Avec la « quatrième révolution industrielle », les environnements hyperconnectés entraînent de nouveaux risques en matière de sécurité. Découvrez, dans ce guide Kaspersky, comment faire face à cette nouvelle ère de vulnérabilité.

Tech - Par Renaud ROSSET - Publié le 17 février 2014