Uninitialized Memory
L'utilisation de mémoire non initialisée consiste à lire des variables ou tampons jamais assignés, pouvant faire fuir d'anciennes données de pile/tas.
Objectif
Comprendre les fuites d'information causées par la mémoire non initialisée et leurs défenses ; un défaut de sûreté mémoire et de confidentialité.
Mécanisme
La mémoire pile/tas n'est pas mise à zéro à l'allocation ; lire des régions non assignées renvoie le contenu laissé précédemment. Des attaquants peuvent l'exploiter pour faire fuiter clés, pointeurs et autres données sensibles. Défenses : initialisation, calloc, avertissements du compilateur.
Cas d’usage
- Vulnérabilités de fuite d'information
- Audit de sûreté mémoire
- Nettoyage des données résiduelles