Test d'intrusion applicatif et web


Dans quels cas un test d'intrusion applicatif est-il recommandé?

Le test d’intrusion applicatif est le test idéal si vous souhaitez évaluer la qualité de développement de votre applicatif à l'écoute sur Internet ou sur un Intranet. Le consultant se met à la place d’un attaquant et analyse l’intégralité de l’application. Il utilise pour ce faire l’intégralité des failles connues et documentées en matière d’audit web auxquelles il ajoute ses propres méthodes et découvertes réalisées en R&D.

Ce test d'intrusion est réalisable selon les trois méthodologies fréquemment rencontrées en sécurité informatique: en aveugle (boîte noire), en ayant des accès limités ou une connaissance relative de l'application (boîte grise), en ayant des accès étendus ou une connaissance documentée de l'application (boîte blanche). Ce test d'intrusion est intégré dans les audits red team.

Dans la peau d'un pirate


Les failles utilisées par les pirates sont nombreuses

Dans le cadre d’audits applicatifs web, nous testons tout d’abord les failles web les plus largement exploitées (Top 10 vulnerabilites - 2013 - OWASP)

  • Les injections
    • Les attaques par injection (SQL, OS, LDAP, ...) se produisent lorsque des données non fiables sont envoyées à l'interpréteur dans le cadre d'une commande ou d'une requête. Les données hostiles de l'attaquant peuvent tromper l'interpréteur en exécutant des commandes imprévues ou accéder à des données non autorisées (base de données dans son intégralité, accès au FS, accès au réseau via le LDAP,...).

  • Authentificaton mal conçue et gestion des sessions
    • Les fonctions liées à l'authentification de certaines applications ainsi que leur gestion des sessions sont souvent mises en place de façon incorrecte. Ceci permet aux attaquants de compromettre mots de passe, clés, jetons de sessions ou d'exploiter d'autres défauts liés à la mauvaise étanchéité des sessions permettant de subtiliser l'identité d'autres utilisateurs.

  • Cross-Site Scripting (XSS)
    • Les failles XSS se produisent à chaque fois qu'une application reçoit des données non fiables et les envoie à un navigateur Web sans avoir convenablement échappé les caractères transmis par l'attaquant. Ces vulnérabilités peuvent permettre à ce dernier d'exécuter des scripts à l'insu de l'internaute afin de détourner sa session. Elles permettent également de tenter d'exploiter des failles applicatives tierces (PDF, Flash, IE, FF, Chrome, ...) conduisant à la compromission de l'OS de l'internaute. Elles peuvent aussi permettre de défacer un site Internet ou rediriger l'internaute vers des sites malveillants.

  • Référence non sécurisée d'accès direct à un objet
    • Une référence d'accès direct à un objet se produit lorsqu'un développeur expose une référence à un objet interne comme un fichier, un répertoire ou une clé d'accès à la base de donnée. Sans contrôle d'accès ou toute autre protection, un attaquant peut manipuler ces références afin d'accéder à des données non autorisées.

  • Mauvaise configuration de sécurité
    • Une bonne sécurité nécessite d'avoir une configuration adéquate définie pour chaque application, framework, serveur d'application, serveur web, serveur de base de donnée et d'une manière générale la plateforme dans son intégralité. Tous ces paramètres doivent être définis, mis en oeuvre et entretenus de façon rigoureuse car ils ne font par partie intégrante des applications par défaut. Cela inclut, par exemple, de maintenir tous ses logiciels à jour.

  • Exposition de données sensibles
    • De nombreuses applications ne protègent pas convenablement les données sensibles, telles que les cartes de crédit, les identifiants fiscaux et cartes d'identité ou simplement informations de connexion. Les attaquants peuvent voler ou modifier ces données facilement afin de réaliser des vols d'identité, des fraudes bancaire en utilisant les cartes de crédit et d'autres délits. Les données sensibles méritent une protection supplémentaire comme le chiffrement de la connexion, mais aussi des données lors de leur stockage; en plus d'une bonne sécurisation de l'application.

  • Mauvaises gestion des ACL
    • La plupart des applications web vérifient les droits d'accès au contenu avant de l'afficher. Cependant, ces applications doivent effectuer le même type de contrôle d'accès au niveau du serveur lorsqu'un accès est effectué à chacune de ces fonctions en l'appelant directement, sans l'UI. Si ces demandes ne sont pas vérifiées, les attaquants peuvent être capable de forger des requêtes afin d'accéder à des fonctionnalités non autorisées.

  • Cross-Site Request Forgery (CSRF)
    • Une attaque CSRF force une victime connectée à envoyer à travers son navigateur et son cookie de session (et d'autre paramètres inclus automatiquement), une requête à une application web vulnérable. Ainsi l'attaquant peut forcer la victime à envoyer des requêtes qui seront acceptées par l'application vulnérable car considérée comme légitimes (même avec vérification de l'id de session et de l'IP émettrice). Ces requêtes permettent d'utiliser tout le scope applicatif vulnérable (gestion du mot de passe, virements, effacement d'informations, ...).

  • Utilisation de composants vulnérables
    • L'utilisation de composants vulnérables comme des librairies, des frameworks ou simplement des modules d'applications (Wordpress, Drupal, Joomla, ...) augmente largement la surface d'attaque de l'application. De plus, ces modules sont la plupart du temps exécutés avec des privilèges trop élevés et peuvent causer de graves pertes de données ou la compromission totale du serveur.

  • Redirections et transmission non vérifiées
    • Les applications web redirigent régulièrement les utilisateurs vers d'autres pages du site ou même vers d'autres sites en utilisant des données non vérifiées afin de déterminer la page de destination. Sans vérification, un attaquant peut rediriger les internautes vers des sites de phishing ou des sites malveillants ou utiliser ces mauvaises redirections afin d'accéder à des pages non autorisées.


Les intrusions sont aussi le produit d'une recherche spécifique

La méthodologie OWASP n'est pas suffisamment complète pour considérer un test d'intrusion terminé une fois celle-ci balayée. L'intégralité de nos tests d'intrusion applicatifs comportent également:

  • La collecte d’informations applicatives et métiers
    • Path disclosure
    • Découverte des versions logiciels
    • Découverte des versions CRM / CMS / ERP
  • Les failles découvertes au jour le jour par les chercheurs internationaux en sécurité informatique. Nous mettons quotidiennement à jour la liste de ces vulnérabilités grâce à notre activité de veille performante.
  • Les failles découvertes par notre équipe de recherche qui sont connues et exploitables uniquement par Wargan Solutions
  • La réalisation de POC (proof of concept) pour les failles découvertes lors du test d'intrusion
  • Un méthode interne très précise d’optimisation de découverte de failles basée sur un scanner développé par Wargan Solutions qui permet de recenser le maximum de points d'entrées. Aucun échange GPC n'est occulté.

Quels sont les livrables fournis suite à un test d'intrusion ?

Un rapport précis contenant les failles, leur criticité, les méthodes d’enrayement, les méthodes de contournement, la facilité d'exploitation, l'incidence de la faille et plusieurs graphiques comparatifs vous est remis. Ce rapport est suivi d'un double entretien personnalisé: un entretien axé sur le décisionnel expliquant les vulnérabilités découvertes, leur impact et la procédure à mettre en place; ainsi qu'un entretien technique permettant d'appréhender au mieux le contenu du rapport et surtout de mettre en place les contre-mesures le plus rapidement possible. Vous trouvez plus de détail sur la page notre méthodologie.

Il est important de noter que contrairement à d’autres sociétés nous ne nous cantonnons pas à exécuter un scanner de vulnérabilités. L'intégralité de nos tests d'intrusion sont réalisés à la main et nous testons chacune des possibilités offertes par l'applicatif. Nous terminons le test d'intrusion par l'exécuton d'un scan à l'aide d'un outil développé par Wargan Solutions afin de nous assurer que nous n’avons rien oublié et que tous les échanges GPC ont été analysés. Ainsi les deux axes fondamentaux d’investigation sont utilisés.