samedi 19 avril 2008

[CISSP] Learn about pentest

Aujourd'hui cher agent, vous allez devoir progresser dans la théorie ! Or, dans le cadre de l'apprentissage de l'examen CISSP, un module intitulé "Access Control Systems" tient compte des tests d'intrusion. Ce post - assez particulier - se propose de voir les notions à connaître et illustrer certains concepts.


Avant-propos

Le module que nous allons voir fait partie de la liste des 10 domaines à connaître pour réussir l'examen. Plus d'information sont disponible ici. Aussi, des pré-requis sont nécessaires comme des diplômes et quelques années d'expérience. Finalement, il vous faudra atteindre un score de 70% pour obtenir le CISSP. Avant de commencer, je tiens à préciser que ce post ne garantit pas une note quelconque ne serait-ce que pour le module abordé. Cependant, j'espère qu'il vous y aidera ;). Enfin, les diapos d'illustration sont en anglais car les livres que vous trouverez sur le sujet le seront aussi très certainement.


Part I - Quelques concepts à connaître ...

La sécurité informatique, c'est un combat permanent entre les hackers et les entreprises. Chacune dispose de ses caractéristiques et de ses buts, ce que ce premier schéma illustre de manière très simplifiée :



En bleu, nous avons les besoins de l'entreprise (synthétisés par la police de sécurité) alors qu'en noir, les contraintes portées à l'entreprise pouvant être concrétiser par l'attaquant (dont les points forts sont le temps, sa motivation et son esprit de défi par exemple). Pour bien faire la différence entre "Vulnérabilité", "menace" et "risque", prenons pour exemple une machine sous Windows XP SP2. Si une faille, mentionnée par Microsoft par exemple, impacte les machines Windows XP SP2 et moins, alors, il y a vulnérabilité. Si cette vulnérabilité est exploitée par un ver, alors ce dernier représente la menace. Pour terminer, plus les données contenues sur la machines sont sensibles et plus elle est atteignable pour un attaquant, plus le risque est grand (et inversement).

Dans un deuxième temps, le module demande à ce que les solutions de sécurité - en sens large - soient classifiées. Nous trouverons trois types de sécurité (organisationnelle, logique/technique et physique) et deux approches (préventive et post-active). Un exemple pour chacun est fourni ci-dessous :



Pour être précis dans notre classification, nous devons noter que dans une entreprise (organization), plusieurs rôles doivent être définis qui correspondent à des métiers et/ou fonctions. Dans ces rôles, nous trouvons les employés ou aussi utilisateurs au sens SI. Chacun d'eux disposent d'objets tels que des documents par exemple. Cela est très utile pour définir correctement les contrôles d'accès de manière granulaire.

La dernière sous-partie du module demande une connaissance générale des attaques les plus connues. Cette troisième image en fait l'illustration :



Je ne reviendra pas sur ces attaques que vous connaissez certainement déjà. Sinon, n'hésitez pas à vous documenter sur le Net. Enfin, il est toujours possible de poser des questions sur ce blog ;) Tout de même, nous allons voir pour exemple la "SYN Flood Attack" car très largement utilisée et d'ailleurs, c'était le sabre utilisé pour la dernière grande attaque portée contre les serveurs DNS racines d'autant plus que des scripts rendent l'attaque très simple. Pour comprendre, il faut savoir qu'une connexion s'établit en trois temps :
  • Le client envoie une requête "SYN" au serveur ;
  • Le serveur répond par un "SYN/ACK" pour confirmer la demande ;
  • Le client doit alors confirmer par un "ACK".
Si ce troisième échange n'a pas lieu, le serveur reste en attente jusqu'à provoquer un timeout. Pour chaque demande en cours, une socket est occupée. Alors si un certain nombre de machines effectuent ce genre de requête en laissant en attente les communications, nous sommes bien dans le cas d'un DDoS attaque basée sur le SYN Flood.


Part II - Les tests d'intrusion

Avant de commencer un test d'intrusion, il est très important de le définir avec l'entreprise. Il existe de nombreuses combinaisons en fonction des besoins :
  1. 1) S'agit-il d'un test interne ou externe ?
  2. 2) S'agit-il d'un test en boîte blanche, grise ou noire ?
  3. 3) Jusqu'où doit-on dérouler le test ? (en suivant la démarche logique quoiqu'il en soit)


Pour bien aborder le concept de contrôle d'accès, il est nécessaire maintenant de comprendre ce qu'est l'identification et l'authentification. C'est le but du slide suivant :



Il y a donc trois façon de s'authentifier : A partir de quelque chose que l'on est, que l'on sait ou que l'on a. Il est possible de combiner plusieurs éléments. Nous parlons d'authentification forte à partir du moment que deux éléments ou plus sont combinés (par exemple, une carte à puce contenant le certificat d'authentification, cette première étant protégée par un code PIN).
En l'occurrence, lorsque nous parlons d'authentification, il est important de connaître ce que la biométrie et le SSO (pour Single Sign On) :



Il existe de nombreux systèmes de SSO mais il en est un que nous utilisons tous les jours : Kerberos. C'est pourquoi nous le prenons pour exemple ici :



Ensuite, le contrôle d'accès a pour objectif d'assurer l'intégrité, la confidentialité et la disponibilité des données. Or, généralement, celles-ci sont contenues dans les bases de données (BDD). Le lecteur doit donc connaître les principes des BDD et du langage associé, SQL.



Pour terminer, le chapitre, nous traitons des solutions de sécurité de type IDS dont SNORT est le plus connu en tant que solution Open Source. Même si l'image suivante n'est pas animée, elle illustre ce dernier point :



Il y a ici deux notions à comprendre. Un IDS peut fonctionner de deux manières différentes et nous avons alors :
  • mode IDS-Système ;
  • mode IDS-Réseau.
Mais attention, un même outil, comme SNORT encore une fois, peut être configuré dans chacun de ces deux modes. La différence est que dans le premier cas, la sonde IDS pourra vérifier les éléments du système (exemple : les logs) alors que dans le deuxième cas, la sonde fonctionne en temps réel pour analyser les paquets transitant sur le réseau et sera plus utile pour détecter une attaque en cours. Enfin, il faut savoir qu'une sonde IDS travaille à partir de "patern matching" de signatures et de contrôle de comportement basé sur des règles.


Conclusion

Voilà un résumé pour vous préparer à ce module. Néanmoins, il est indispensable d'approfondir toutes ces connaissances pour être capable de répondre aux questions du CISSP. Pour ceux que cela intéresse, je peux envoyer la présentation sur simple demande. Aussi, n'hésitez pas si vous avez des questions ;)

1 commentaire:

Anonyme a dit…

Hi,

Un post bien sympa pour résumer ce module.

Etant en pleine préparation de l'exam je suis preneur pour la présentation :-)

=> foojipe[nospamremovemeblablabla]@gmail.com

Tks !

Locations of visitors to this page