Rechercher
Contactez-nous Suivez-nous sur Twitter En francais English Language
 





















Abonnez-vous gratuitement à notre NEWSLETTER

Newsletter FR

Newsletter EN

Vulnérabilités

Se désabonner

Romain Morel, Nomios : Sécurité et développement, vers une attribution des rôles et une sensibilisation des chefs de projets, des développeurs et des architectes réseaux et sécurité

décembre 2011 par Romain Morel, Consultant Réseaux et Sécurité Nomios

Au cours des 10 dernières années, le monde de l’informatique a été révolutionné par les machines performantes, les connexions Internet à haut débit, les services Web et plus récemment les applications sur terminaux mobiles et les services SaaS. Toutes ces évolutions, liées à de nouveaux outils, entrées dans le quotidien de nombreux utilisateurs, sont-elles déployées de manière fiable et sécurisée ?

On observe trois types de population qui agissent, chacun à leur niveau, sur les projets de déploiement applicatifs. Alors, quelles sont les responsabilités de chaque intervenant pour que l’utilisation de ces nouveaux outils et nouvelles applications soit synonyme de sécurité et de fiabilité ?

Les chefs de projets

Chargé de mener le projet et de contrôler son bon déroulement, le chef de projet informatique doit fédérer les équipes sur la réalisation d’objectifs court terme. Pour s’organiser de manière optimale et réduire le cycle de vie logiciel, il devra choisir parmi de nombreuses méthodes de développement agiles type XP, RAD, Scrum, ou encore la SDL : « Security Development Lifecycle », méthode de Microsoft introduisant des phases de design et de tests dédiés à la sécurité.

Ces méthodes de développement permettront de dégager du temps à réinvestir dans la sécurité, mais partant du principe que les logiciels auront toujours des bugs et donc des failles, elles ne pourront que réduire le nombre de vulnérabilités introduites ainsi que leur gravité.

L’encadrement et la formation des équipes de développement sont très importants. Une équipe compétente et avertie sera beaucoup plus sensibilisée et réactive face aux nouvelles menaces. C’est pourquoi de nouveaux cursus de formation spécialisés, tels ceux proposés par le groupe SANS (formation Secure-Coding) et l’EC-COUNCIL (ECSP : EC-Council Secure Programmer) ont vu le jour. Dans une optique de sécurité offensive (Ethical Hacking), les participants apprennent à hacker leurs applications pour mieux les sécuriser. SQL-Injection, XSS, CSRF, gestion des sessions et cookies, tout est passé au crible.

Les développeurs

Le choix des bons outils est la base de tout projet applicatif. Ils doivent être maîtrisés et audités avant d’être déployés. Les Frameworks proposent aujourd’hui un bon nombre de fonctions liées à la sécurité : validation de données d’entrées, validation de robustesse des mots de passe, moteur de gestion de sessions. Malheureusement, leur évolution est à suivre en phase de pilotage car, comme toute portion de code, ces derniers peuvent introduire des failles. Le suivi des mailing-list de sécurité de l’éditeur et référentiels de vulnérabilités tels ceux de SecurityFocus, SANS, OWASP garantiront une réactivité face aux nouvelles failles découvertes.

Validation des données de formulaires, filtrage de caractères spéciaux, validation du code inclus (modules), stockage des données sensibles de manière cryptée ou hashée, le respect des règles de base de la sécurité est toujours un bon départ, mais désormais le pentest interne des applications devient une démarche nécessaire pour remonter les failles éventuelles. Pour cela, de nombreux outils, souvent méconnus, existent. Parmi les projets intéressants nous pouvons noter BackTrackLinux qui est une distribution Linux, véritable « couteau suisse » de l’audit de sécurité regroupant des Sniffers HTTP, WebFuzzers, et simulateurs de charge applicative visant à observer le comportement d’une application en situation anormale.

Pour s’initier aux problématiques de sécurité actuelles, quelques challenges d’auto-formation peuvent être relevés en ligne. En première ligne, le défi de Google-Gruyère accessible sur : http://google-gruyere.appspot.com permet de se placer dans la peau d’un hacker type, et de voir comment celui-ci trouve et exploite les failles pour mieux les contrer. Dans le cadre de ce défi, l’apprenti est guidé étape par étape dans l’attaque d’un site factice qui lui permettra de tirer un bon retour d’expérience dans une démarche pragmatique.

Les architectes réseaux et sécurité

Responsables de l’hébergement et de la disponibilité des applications, les architectes réseaux et sécurité sont chargés de choisir les équipements adaptés et de les configurer pour appliquer une politique de sécurité stricte.
Next-Generation firewalls, IPS, Data Loss Prevention, Web Application Firewalls, toute une panoplie d’équipements destinés à renforcer la sécurité des systèmes d’informations existe. Ces derniers, de plus en plus déployés dans les architectures sensibles, permettent de repousser les attaques connues en entrée de plateforme, mais aussi d’analyser le contenu du trafic et le comportement des utilisateurs. Ce premier rempart de sécurité permettra de garantir que l’application ne recevra que du trafic sain et qualifié de « normal », donc de protéger le réseau informatique : le vecteur de propagation.

En conclusion, un grand nombre de solutions existent pour sécuriser les outils et les applications. Aux différents intervenants de les adopter et de se sensibiliser sur le sujet de la sécurité pour appliquer une politique globale et ainsi combattre efficacement les nouvelles menaces.


Voir les articles précédents

    

Voir les articles suivants