Flux RSS du Blog de Sécurité en Ligne de Google

Analyseur d'adresses pour les firmwares bare-metal

Follow
Le firmware Android est de plus en plus vulnérable aux attaques en raison de son examen moins rigoureux comparé aux utilisateurs Android et au noyau. L'Address Sanitizer du noyau (KASan) est un outil qui peut détecter proactivement les vulnérabilités du firmware en identifiant les opérations d'accès mémoire invalides pendant l'exécution. KASan peut être utilisé pour une grande variété de cibles de firmware et s'applique à la fois à la mémoire heap et à la mémoire stack. Pour activer KASan pour le firmware bare-metal, un runtime personnalisé doit être mis en œuvre pour vérifier les opérations d'accès mémoire et gérer la mémoire d'ombre, qui suit l'état des régions de mémoire couvertes par KASan. La mémoire d'ombre est une région de mémoire dédiée où chaque octet correspond à une région de mémoire de 8 octets et encode son état. Le runtime KASan inclut des fonctions pour effectuer des vérifications d'accès mémoire, gérer la mémoire d'ombre et accrocher les routines d'allocation de mémoire heap. En instrumentant les opérations d'accès mémoire avec ces fonctions, KASan peut détecter les vulnérabilités de corruption de mémoire, y compris l'accès mémoire hors limites, l'utilisation après libération, la double/libération invalide et l'utilisation après retour. Pour éviter les faux positifs pour les fonctions noreturn, la routine __asan_handle_no_return est utilisée pour supprimer les zones rouges autour des variables de pile. KASan peut être activé pour le heap, le stack et les variables globales en utilisant des options de compilateur spécifiques pendant la compilation. Un petit projet est fourni pour démontrer une mise en œuvre de KASan pour les cibles bare-metal utilisant l'émulateur de système QEMU. Cette mise en œuvre peut être utilisée comme référence pour les détails techniques. KASan a été utilisé pour détecter et corriger plus de 40 bugs et vulnérabilités de sécurité de mémoire dans les cibles de firmware, y compris certaines de gravité critique. En exploitant KASan dans le développement de firmware, la sécurité des appareils peut être significativement améliorée.
favicon
security.googleblog.com
Address Sanitizer for Bare-metal Firmware
Create attached notes ...