Chargement
Léonard Namolaru

Outils pour la Cyber

Cyber offensif

Léonard Namolaru
Léonard Namolaru
Léonard Namolaru
Léonard Namolaru
Léonard Namolaru
Léonard Namolaru
Léonard Namolaru
Léonard Namolaru
Léonard Namolaru

Outils pour la Cyber

Cyber offensif

SecMalloc : Allocateur de mémoire sécurisé

  • Lieu de formation: École 2600 - École de Cybersécurité
  • UE : OS et prog. en C - S2
  • Année scolaire: Première année de la formation (niveau Bac + 3)
  • Dates: Mai - Juin 2024
  • Note : 20/20
GitHub

Ce projet porte sur la réécriture des fonctions malloc(), calloc(), realloc() et free() sous un axe de sécurité, étant donné que même si beaucoup de correction ont été apporté aux implémentations standard de malloc(), la gestion du tas reste encore un vecteur d’attaque puissant.

Principales fonctionnalités

  • Le comportement des fonctions réécrites (my_malloc()my_calloc()my_realloc() et my_free()) est le même que celui des fonctions correspondantes décrites dans man 3 malloc.
  • L’implémentation se fait à travers 2 pools distincts : un pool de data et un pool de meta-information.
  • Ajout d’un canari à la fin de chaque bloc mémoire afin de détecter un overflow.
  • Prise en charge des allocations mémoire pour les applications multithread grâce à l’utilisation de mutex afin de protéger les structures de données.
  • Détection dynamique de l’overflow via un thread de parcours du tas.
  • Détection des cas où le pointeur passé aux fonctions my_realloc() ou my_free() ne pointe pas vers une zone mémoire qui a été renvoyée par un précédent appel à my_malloc()my_calloc() ou my_realloc().
  • Détection de double free.
  • Possibilité de générer un rapport d’exécution dans un fichier dont le chemin est fourni par l’utilisateur à l’aide de la variable d’environnement MSM_OUPUT.
 
This site is registered on wpml.org as a development site. Switch to a production site key to remove this banner.