Il existe une vulnérabilité d'overflow d'entier dans la bibliothèque Libarchive incluse dans Microsoft Windows, en raison de vérifications de limites insuffisantes sur la longueur du bloc d'un filtre RARVM utilisé pour le prétraitement Intel E8 dans un archive RAR. Un attaquant distant pourrait exploiter cette vulnérabilité en incitant un utilisateur ciblé à extraire un archive RAR frauduleuse, ce qui pourrait potentiellement entraîner l'exécution de code arbitraire dans le contexte de l'application utilisant la bibliothèque vulnérable. La vulnérabilité est liée au parsing d'un archive RAR, qui se compose d'une série de blocs de longueur variable, chacun commençant par un en-tête. La vulnérabilité se produit lorsque un filtre RARVM avec une empreinte digitale spécifique est exécuté, provoquant un overflow d'entier dans la condition de boucle de la fonction execute_filter_e8(). Cet overflow entraîne des accès mémoire qui sortent des limites du buffer basé sur le tas représentant la mémoire VM. Pour détecter une attaque exploitant cette vulnérabilité, un appareil de détection doit surveiller et parser le trafic sur les ports courants où un archive RAR pourrait être envoyé, tels que FTP, HTTP, SMTP, IMAP, SMB et POP3. L'appareil doit identifier le marqueur de bloc Rar, l'en-tête Arc et l'en-tête de fichier, puis parser les données compressées du fichier. L'appareil doit extraire chaque bloc selon l'algorithme utilisé pour le compresser, et si un bloc compressé à l'aide de l'algorithme LZ est rencontré, décodage des tables de Huffman et des symboles. Si un symbole 257 est rencontré, l'appareil doit parser les données suivantes comme un filtre RARVM et calculer la taille du champ Code. L'appareil doit ensuite parser le champ Code selon la structure spécifiée et lire les champs numériques selon l'algorithme mis en œuvre.
thezdi.com
CVE-2024-20697: Windows Libarchive Remote Code Execution Vulnerability
Create attached notes ...
