INSA, examen de sécurité logicielle

tbowan , aryliin

17 Janvier 2020

L’examen fini, les copies corrigées, on peut enfin partager le sujet de cette année et sa correction. Amusez-vous bien.

Cette année, nous étions à l’INSA CVL pour notre cours de sécurité logicielle en Master 2 STI. Nous avons déjà partagé les supports de cours et l’examen de l’année précédente (et son corrigé).

Avec l’aimable autorisation de l’INSA CVL

L’examen étant terminé (et corrigé), on peut donc vous partager le sujet de cette année et son corrigé sans peur de fuites qui ruinerait ce contrôle des connaissances.

Le sujet

Le principe est le même que l’an passé : la société Speed-e-Dev a remis le couvert et proposé une nouvelle version de son blog, à vous de chercher les vulnérabilités dans leur code source.

Chaque vulnérabilité découverte rapporte deux points. Chaque erreur en fait perdre un. La note est sur vingt. Vous voulez tenter votre chance ?

Bugs : Trois erreurs sont présentes dans la version PDF et empêcheraient certaines pages de fonctionner. Sans incidence sur les vulnérabilité mais si vous voulez tester, c’est problématique. Ces bugs sont corrigés dans le code source dans l’archive . Et mentionnés sur le corrigé (si vous voulez les détails).

Avertissement : Vous vous doutez bien que pour que les étudiants puissent trouver des vulnérabilités, le code en est truffée, on vous déconseille donc de pousser ce code en prod, à moins que vous ne montiez un honey pot1. Sinon, autant publier vos codes d’accès SSH, vous gagnerez du temps.

Le corrigé

Comme promis, le code source contient au moins 15 vulnérabilités. À se demander pourquoi Speed-e-Dev continue de développer des applications vu leur niveau et surtout, comment trouvent-ils les financements ? Au programme :

  1. Informations sensibles mal protégées,
  2. Identifiants faibles,
  3. Injections SQL,
  4. Injection de commandes,
  5. Cross Site Scripting,
  6. Cross Site Request Forgery,
  7. Authentification défectueux,
  8. Contrôle d’accès défectueux,
  9. Fixation de session,
  10. Redirection arbitraires,
  11. Cryptographie défectueuse,
  12. Stockage des mots de passes,
  13. Débordement dans le tas,
  14. Double free.
  15. Variables non initialisées.

Si vous voulez plus de détails, voici le corrigé imprimable avec une petite explication pour chaque vulnérabilité.

Et après ?

Si vous voulez prendre du recul ou repartir des (supports de) cours, les voici.

Les arsouyes à l’INSA

30 octobre 2019 Après une semaine en famille à Bourges où nous avons donné un cours sur la sécurité des applications, voici nos supports de cours.


  1. Ou pot de miel en français. Une plateforme volontairement vulnérable pour attirer les pirates et surveiller leur activité.↩︎