Skip to main content

address-sanitizer

address-sanitizer

Catalogue généré le 2026-05-11

En une phrase

AddressSanitizer detects(ASan) memoryest errorsun during"détecteur fuzzing.de fumée" qu'on greffe au code C/C++ pour repérer en temps réel les bugs mémoire (buffer overflow, use-after-free) que l'œil ne voit jamais.

Quand l'utiliser

  • UsePendant whenune campagne de fuzzing C/C++ (combo classique fuzzer + ASan).
Pour tester du code toRust findqui bufferutilise overflowsunsafe. andPour use-after-freetraquer bugs.un bug mémoire suspect (corruption silencieuse, plantage aléatoire). Pour auditer une bibliothèque qui manipule beaucoup de pointeurs. Avant un release important d'un projet C ou C++.

Comment l'invoquer

  • Slash command : /address-sanitizer (si exposé dans ton CLI)
  • Phrases déclencheurs (texte) : voir"ASan", la"memory descriptionerror complètedetection", ci-dessous"AddressSanitizer setup"
  • Auto-invocation : surSur demande explicite

Description complètedétaillée

AddressSanitizer detects(ASan memorypour errorsles duringintimes) fuzzing.est Useun whenoutil de "sanitisation" : il instrumente ton code à la compilation pour ajouter des vérifications partout où ton programme touche à la mémoire. Du coup, dès qu'il détecte un accès illégal (lire un octet hors d'un tableau, utiliser un pointeur déjà libéré, double free…), il arrête le programme et te dit exactement où ça s'est passé, avec une stack trace propre.

C'est devenu le standard de l'industrie pour le fuzzing C/C++. codePourquoi to? findParce que beaucoup de bugs mémoire ne font pas planter le programme immédiatement — ils corrompent silencieusement la mémoire et causent des bugs aléatoires plus tard. Sans ASan, ton fuzzer pourrait passer à côté. Avec ASan, chaque accès interdit est attrapé sur le fait.

Le coût : ASan ralentit l'exécution de 2 à 4 fois et réserve 20TB de mémoire virtuelle (oui, terabytes — mais c'est virtuel, pas vraiment consommé). Il faut compiler avec -fsanitize=address. ASan détecte les classiques : buffer overflowsoverflow and(lecture/écriture hors zone), use-after-free bugs.(utilisation d'un pointeur libéré), double-free, memory leaks. À combiner avec UndefinedBehaviorSanitizer pour une couverture maximale.

Pour aller plus loin

AddressSanitizer

Pour (ASan)les

AddressSanitizerexemples (ASan)concrets, isoptions ade widelyconfiguration adoptedet memorypatterns error detection tool used extensively during software testing, particularly fuzzing. It helps detect memory corruption bugs that might otherwise go unnoticed, such as buffer overflows, use-after-free errors, and other memory safety violations.

Overview

ASan is a standard practice in fuzzing due to its effectiveness in identifying memory vulnerabilities. It instruments code at compile time to track memory allocations and accesses, detecting illegal operations at runtime.

Key Concepts

Concept Description Instrumentation ASan adds runtime checks to memory operations during compilation Shadow Memory Maps 20TB of virtual memory to track allocation state Performance Cost Approximately 2-4x slowdown compared to non-instrumented code Detection Scope Finds buffer overflows, use-after-free, double-free, and memory leaks

(extrait —avancés, voir le SKILL.md complet pour la suite)original.

Source

  • Plugin : trailofbits/testing-handbook-skills
  • Nom interne : address-sanitizer
  • Fichier : /home/thymon/.claude/plugins/cache/trailofbits/testing-handbook-skills/1.0.1/skills/address-sanitizer/SKILL.md