Programmation orientée sécurité

Catalogue des cours de Télécom SudParis

Code

IGFF CSC 4534

Niveau

M1

Graduate

Graduate

Semestre

Fall

Domaine

Informatique

Programme

Programme Ingénieur

Langue

Français/French

Crédits ECTS

4

Heures programmées

45

Charge de travail

90

Coordonnateur(s)

Département

  • Réseaux et Services de Télécom

Organisation

Cours/TD/TP/projet/examen : 18/0/21/6/0

Acquis d'apprentissage

At the end of the course, the students should understand the stages of software development security, as well as common threats.They should learn automatic reflexes and best practices to apply when they program. Thus, they should be able to take the security into account in the early stages of the software development process.

Moreover, the students should develop a criticial eye during the cours, which should help them adapt when facing new threats.

Compétences CDIO

  • 1.3 - Advanced engineering fundamental knowledge, methods and tools
  • 2.1.5 - Solution and Recommendation
  • 3.2.6 - Oral Presentations
  • 4.3.4 - Development Project Management
  • 4.5.3 - Software Implementing Process
  • 4.5.5 - Test, Verification, Validation, and Certification
  • 4.6.3 - Supporting the System Lifecycle

Prérequis

Connaître un langage de programmation, Utilisation Unix

Mots-clés

développement, méthodologie, sécurité, qualité logicielle

Evaluation

La validation de cette UV se fait sur deux TP notés à réaliser individuellement, et sur un projet bibliographique en binôme présenté devant la classe. Le module fera également l'objet de quelques QCM rapides en début de sessions pour apporter un bonus de contrôle continu.

Formule de l'évaluation

Note = (TP1 + TP2 + Exposé) / 3 + CC
(Le contrôle continu consiste en des questionnaires réalisés pendant les séances et permet d'ajouter jusqu'à 2 points à la moyenne)

Bibliographie

Aucune lecture n'est nécessaire préalablement à ce cours, mais voici quelques liens utiles pour les étudiants intéressés :
- la liste de diffusion oss-security (http://www.openwall.com/lists/oss-security/) sur laquelle sont publiées des vulnérabilités et des correctifs de sécurité concernant des logiciels libres ;
- le site web du CERT-FR (http://www.cert.ssi.gouv.fr/) ou la liste de diffusion correspondante permet d'obtenir des informations sur les vulnérabilités existantes, ainsi que de l'information plus large sur l'actualité de la SSI ;
- Smashing Stack For Fun and Profit, l'article historique décrivant l'exploitation d'un dépassement de tampon (http://insecure.org/stf/smashstack.html) ;
- les études de l'ANSSI sur les langages de programmation: JavaSec (https://www.ssi.gouv.fr/javasec) et LaFoSec (https://www.ssi.gouv.fr/lafosec).

Approches pédagogiques

Le module repose sur une proportion importante de partique (travaux pratiques), et vise à donner les bases méthodologiques pour développer de manière propre et sécurisée. Il est également prévu un exposé en binôme pour développer la compréhension d'une faille logicielle.

Fiche mise à jour le 31/05/2019