Calendrier des semaines
# | Date | Cours | # | Date | Cours | # | Date | Cours |
---|---|---|---|---|---|---|---|---|
1 | 2024-01-12 | Chapitre 1 | 6 | 2024-02-15 | Chapitre 4 (suite) | 11 | 2024-03-29 | Férié |
2 | 2024-01-19 | Chapitre 2 | 7 | 2024-02-22 | Chapitre 5 | 12 | 2024-04-05 | Articles/outils |
3 | 2024-01-26 | Chapitre 3 | 8 | 2024-03-08 | Chapitre 6 | 13 | 2024-04-12 | Articles/outils |
4 | 2024-02-01 | Chapitre 3 (suite) | 9 | 2024-03-15 | ? | 14 | 2024-04-19 | Projets |
5 | 2024-02-08 | Chapitre 4 | 10 | 2024-03-22 | Intra | 15 | 2024-04-26 | Projets |
Évaluation
Évaluation | Pondération | Échéance |
---|---|---|
Examen intra | 30% | Semaine 10 |
Présentation d’articles | 30% | Semaine 12-13 |
Présentation d’outil | 30% | Semaine 14-15 |
Participation au cours | 10% | – |
Contenu du cours
- Chapitre 0 : Introduction à l’analyse de programmes
- Chapitre 1 : Fuzzing
- Chapitre 2 : Représentation intermédiaire et instrumentation
- Chapitre 3 : Exécution symbolique
- Chapitre 4 : Analyse de flot de données (dataflow analysis)
- Chapitre 5 : Contrôle de flot d’information (information-flow control)
- Chapitre 6 : Interprétation abstraite
Articles et outils
Chaque chapitre reprend en sa fin une sélection d’articles et d’outils qui peuvent être utilisés pour les présentations. Selon vos intérêts, vous pouvez sélectionner d’autres articles et outils.
Pour les articles, les critères suivants doivent être respectés :
- publication récente (<10 ans) ou fondamentale
- sur un sujet lié au cours
- à une conférence scientifique ou dans un journal scientifique reconnus
Pour les outils, vous pouvez consulter les listes suivantes reprenant divers outils d’analyse de programmes :
Veuillez valider le choix d’article et d’outil avec l’enseignant au plus tard pour l’intra. Pour la lecture de l’article, référez-vous à How to Read a Paper
Références
- The Fuzzing Book: Tools and Techniques for Generating Software Tests, Zeller, A., Gopinath, R., Böhme, M., Fraser, G., & Holler, C.
- Static program analysis, Møller, A., & Schwartzbach, M. I.
- Program Analysis, cours de Michael Pradel de 2020-2021.