L'objet principal de l'exercice est rédigé en ces termes :

Student is to perform a remote security evaluation of one or more computer systems. The evaluation should be conducted over the Internet, using tools available in the public domain.

Et plus loin :

The student must provide a written report which has the following sections: Executive summary, description of tools and techniques used, dates and times of investigations, examples of data collected, evaluation data, overall evaluation of the system(s) including vulnerabilities.

Il me semble complètement surréaliste qu'un professeur puisse donner ce genre d'exercice, implicant manifestement des actions aggressives, quand elles ne sont pas illégales, à l'encontre des sites "évalués", sans définir un certain nombre de garde-fous, le plus élémentaire étant d'obtenir l'autorisation des administrateurs des sytèmes cible, chose que même le plus débutant des pentesters sait être nécessaire. Préciser cela à ses élèves ? Non. Leur indiquer un certain nombre de ressources autorisées ? Que nenni ! Leur monter une architecture spécialement destinée à cet effet ? Pfiouh, vous n'imaginez pas, ma bonne dame. Et l'université dans tout ça ? La direction n'a pas interdit l'exercice, mais a tout de même précisé que s'il était réalisé depuis et/ou sur ses machines, des sanctions seraient prises à l'encontre des élèves. Si vous devez faire des saloperies, OK, mais pas chez nous, merci bien.

Ce qui m'amène à me poser une question plus générale quant à la pertinence même de cet exercice. Si on écarte l'espace d'un instant la problématique juridique (supposons qu'ils aient les autorisations qui vont bien), il reste quand même à mon sens un gros problème d'égalité des chances dans la réalisation de la tâche. En effet, entre l'élève qui possède un accès Internet chez lui, avec ses propres machines, et celui qui doit tout réaliser depuis l'université, il y a une très nette différence. Tout auditeur sait combien il est plus facile de travailler sur sa machine, avec ses outils, que d'utiliser un système tiers. Et ceci reste valable même avec un Live CD. Une distribution comme BackTrack est certes formidable, je n'en reste pas moins plus à l'aise avec mon propre système. On peut ensuite examiner le type d'accès Internet disponible. Certains ne permettent pas, par exemple, le spoofing ou sont filtrés, et d'autres non, selon le type d'accès utilisé et/ou la politique du FAI. C'est d'ailleurs un problème connu et récurrent des épreuves réseau des challenges de sécurité, qui s'est par exemple posé lors du Securitech 2004 pour lequel il fallait forger un paquet spoofé...

Et que dire des cibles ? Comment s'assurer que les élèves disposent d'un panel de cibles équivalentes qui permettra de juger de leurs compétences ? Qui va empêcher un élève de monter deux ou trois machines chez des copains et lancer son test dessus ? On me répondra que ce qui compte, ce sont la démarche, la pertinence des moyens déployés et la qualité du rapport. Soit. Mais entre un rapport qui remonte un nombre conséquent de failles, de préférences variées, assorti de pleins d'informations, et un rapport presque vide malgré un travial acharné (des fois ça arrive, les pentesters le savent bien), on aura tendance à préférer le premier, sans pour autant savoir si le manque de matière du second n'est pas dû à un site particulièrement bien protégé et mis à jour. Évidemment, trouver un site pourri sur le net, ce n'est pas forcément très difficile, et avec un peu de chance, on peut se faire bâcher dans la moitié des conférences de sécurité de la planète parce qu'on est tombé sur un honeypot et ainsi généreusement contribuer au tour du monde d'un ou deux experts.

Et puis surtout, à la fin, comment le professeur en question va-t-il vérifier la pertinence des rapports rendus ? Il va se farcir tous les sites testés ? Tsss... La moindre des choses lorsqu'on propose ce genre d'exercice, au demeurant très didactique à mon sens, est de fournir un environnement commun à tous les élèves au sein d'un labo : même hardware, même live CD pour tout le monde, réseau commun, même architecture cible. Et si on est consciensieux, on peut réaliser tout ça avec un peu de segmentation et des machines virtuelles qui permettront à chaque élève d'attaquer une architecture qui lui est dédiée, évitant ainsi toute interférence. En outre, travailler en labo permet de récupérer les traces des actions menées qui pourront être analysé par la suite et comparé avec le rapport rendu. Mais forcément, ça demande du boulot...

Il ne leur a même pas demandé de remonter les failles découvertes aux administrateurs des sites testés. On pourrait croire qu'il préfère s'en attribuer le crédit (mais y'a-t-il quelque gloriole à retirer de cela), ou encore qu'il espère se faire faire une phase de découverte à pas cher pour se monter un botnet après coup...