Descriptif
Comme toute personne familière des sitcoms des années 1970 peut le confirmer, Mel, la cuisinière d'Alice, avait l'habitude de dire :
"la meilleure défense est une bonne attaque".
Dans le domaine de la cybersécurité, on pourrait dire que pour savoir comment sécuriser quelque chose, il faut d'abord savoir comment le compromettre et le casser.
C'est exactement ce que ce MODAL se propose de faire. Grâce à un ensemble de leçons, de tutoriels et de défis, nous comprendrons - et nous essaierons - comment "casser les choses". Cela peut inclure des sujets tels que :
- le détournement de connexion TCP et l'inondation SYN
- Les attaques par injection SQL sur les serveurs WWW
- Heartbleed - ce bogue SSL qui a provoqué l'effondrement de tout l'Internet
- Empoisonnement du cache DNS
...
Nous ferons également appel à des experts externes pour présenter leurs expériences, leurs attaques favorites et les contre-mesures possibles.
La partie pratique de ce cours consiste en une série de tutoriels et une série de défis.
- Les tutoriels : sont optionnels, et servent à aider les étudiants qui en ont besoin à acquérir un certain nombre de compétences. Chaque tutoriel nécessite la soumission d'un code, qui sera évalué, et une note (0-5) sera attribuée.
- Défis : chacun représente "une chose à pirater", telle que DNS, ou TCP, ou DHCP, ou invoquer un débordement de mémoire tampon, ou effectuer une attaque de type man-in-the-middle. Chaque défi sera accompagné d'une explication et d'un matériel de soutien pour ce qui est attendu, mais il nécessitera une réflexion indépendante. Chaque défi nécessite la soumission d'un code, qui sera évalué et une note (0-10) sera attribuée. Notez qu'un code qui "fait le travail, rien de plus, rien de moins" sera noté 5. Les notes dans l'intervalle (5-10) reflètent un effort supplémentaire, tel qu'un code hautement modulaire, flexible, robuste, ou supportant différentes approches d'attaque.
Nous vous encourageons à travailler dans un petit groupe de 1 à 2 étudiants pour chaque défi.
Vous choisirez de travailler sur les défis dans l'ordre qui vous convient, et vous en ferez autant que vous le souhaitez - ou que vous en avez besoin, afin d'obtenir suffisamment de points pour réussir le cours.
Objectifs pédagogiques
Les étudiants acquièrent une compréhension approfondie des protocoles Internet du monde réel, ainsi que les bases du fonctionnement et de la réflexion d'un "hacker".
effectifs minimal / maximal:
/48Diplôme(s) concerné(s)
- Programmes d'échange internationaux
- Diplôme EuroteQ
- Titre d’Ingénieur diplômé de l’École polytechnique
Parcours de rattachement
Pour les étudiants du diplôme Programmes d'échange internationaux
INF321 or INF311+INF411 (Having followed INF421 and/or INF431 probably won't harm you irrevocably)
Pour les étudiants du diplôme Diplôme EuroteQ
Vous devez avoir validé l'équation suivante : UE INF361 Ou UE INF371 Et UE INF411
Format des notes
Numérique sur 20Littérale/grade réduitPour les étudiants du diplôme Diplôme EuroteQ
L'UE est acquise si note finale transposée >= C- Crédits ECTS acquis : 6 ECTS
Pour les étudiants du diplôme Programmes d'échange internationaux
L'UE est acquise si note finale transposée >= C- Crédits ECTS acquis : 6 ECTS
La note obtenue rentre dans le calcul de votre GPA.
Pour les étudiants du diplôme Titre d’Ingénieur diplômé de l’École polytechnique
L'UE est acquise si note finale transposée >= C- Crédits ECTS acquis : 6 ECTS
Le coefficient de l'UE est : 13
La note obtenue rentre dans le calcul de votre GPA.
La note obtenue est classante.
Programme détaillé
Le cours permettra aux étudiants d'acquérir une compréhension de base du "fonctionnement de l'Internet" et de suivre un cours accéléré de programmation réseau en C.
Et, grâce à un mélange de théorie et d'exercices pratiques, les étudiants étudieront et pratiqueront diverses cyber-attaques réelles - par exemple, comment rediriger de manière transparente les connexions à un site web vers un site web "pirate", ou comment pirater des connexions réseau actives.