2024-05-06 23:46:06
Cisco Talos a signalé une faille de sécurité majeure, identifiée comme CVE-2023-49606, dans le logiciel Tinyproxy largement utilisé. Cette vulnérabilité, résultant d’une mauvaise gestion des en-têtes de connexion HTTP, expose les systèmes à une potentielle exécution de code à distance, ce qui pourrait permettre à des attaquants de prendre le contrôle des serveurs concernés.
APERÇU DE LA VULNÉRABILITÉ
Proxy HTTP minimaliste et open source, Tinyproxy est conçu pour la simplicité et l’efficacité, ce qui le rend populaire dans les environnements où des serveurs proxy légers sont requis. La vulnérabilité en question survient dans l’analyse des en-têtes de connexion HTTP, un composant critique destiné à spécifier quels en-têtes sont persistants lors d’une session HTTP.
Selon Le rapport de vulnérabilité Cisco Talos (TALOS-2023-1889), des versions spécifiques de Tinyproxy, à savoir 1.11.1 et 1.10.0, sont concernées. La faute existe dans le remove_connection_headers
Fonctionnalité Tinyproxy, où une erreur d’utilisation après libération peut se produire. Ce type d’erreur logicielle est particulièrement dangereux car il peut provoquer une corruption de la mémoire, offrant ainsi à l’attaquant un moyen d’exécuter du code arbitraire sur la machine hôte.
PANNE TECHNIQUE
Le problème survient lorsque Tinyproxy gère les en-têtes HTTP censés être supprimés conformément aux Connection
directives d’en-tête. Si un attaquant manipule les en-têtes Connection
ou , peut entraîner la réutilisation de la mémoire précédemment libérée. Proxy-Connection
Ce scénario d’utilisation après libération est déclenché comme suit :
- Tinyproxy parcourt les en-têtes spécifiés dans l’en-tête
Connection
oProxy-Connection
. - Chaque en-tête spécifié est supprimé d’un magasin clé-valeur (hashofheaders) et sa mémoire est ensuite libérée.
- Cependant, en raison d’une erreur dans la gestion de ces en-têtes, la mémoire libérée peut être réutilisée avant la fin de la fonction, provoquant une corruption de la mémoire.
Cette vulnérabilité est particulièrement préoccupante car elle peut être exploitée avec une simple requête HTTP mal formée, ce qui permet à un attaquant d’exploiter facilement et potentiellement de prendre le contrôle du système exécutant Tinyproxy.
EXPLOTABILITÉ ET IMPACT
Le score CVSSv3 de cette vulnérabilité est de 9,8 (critique), soulignant sa gravité. Un attaquant n’a pas besoin d’un accès authentifié au système cible, ce qui le rend accessible à toute entité malveillante pouvant envoyer des requêtes HTTP au proxy affecté. Les impacts potentiels incluent un accès non autorisé, des violations de données, une interruption de service et, dans les cas graves, une compromission complète du système.
Un problème d’utilisation après libération se produit lorsqu’une application continue d’utiliser une référence mémoire (pointeur) après avoir libéré la mémoire référencée par le pointeur. Cela peut entraîner un comportement imprévisible, notamment des pannes d’applications, une corruption des données et l’exécution de code arbitraire.
EXEMPLE D’EXPLOITATION POUR CVE-2023-49606
Mise en scène : Imaginez un scénario dans lequel un serveur exécute Tinyproxy version 1.11.1. Cette version est connue pour présenter une vulnérabilité d’utilisation après libération dans la manière dont elle traite les en-têtes de connexion HTTP.
Exploitation étape par étape :
- Requête HTTP initiale par l’attaquant :
- L’attaquant crée une requête HTTP qui inclut
Connection
en-têtes spécialement conçus. Le but est de manipuler ces en-têtes pour déclencher la condition d’utilisation après la publication. - Exemple de requête HTTP :
- OBTENIR / HTTP/1.1
- Hébergeur : vulnérabilité-proxy.com
- Connexion : keep-alive, malwareHeader
- malveillantEn-tête : freeThis
- L’attaquant crée une requête HTTP qui inclut
- Traitement de la demande :
- Tinyproxy reçoit la demande et analyse les en-têtes. En fonction des spécifications, vous devez supprimer les en-têtes qui apparaissent dans le
Connection
en-tête après avoir traité la demande. - On l’appelle
remove_connection_headers
fonction pour gérer cette tâche.
- Tinyproxy reçoit la demande et analyse les en-têtes. En fonction des spécifications, vous devez supprimer les en-têtes qui apparaissent dans le
- Activation de l’utilisation après la sortie :
- Pendant le traitement, Tinyproxy supprime
maliciousHeader
et libère la mémoire qui lui est associée. Cependant, en raison d’une défaillance dans la gestion de la mémoire proxy, cette mémoire libérée pourrait être réaffectée à de nouvelles données tout en étant toujours référencée par le processus en cours. - Supposons que la mémoire libérée soit rapidement réaffectée et remplie de données contrôlées par l’attaquant via une autre partie de l’application (ou une autre requête traitée simultanément).
- Pendant le traitement, Tinyproxy supprime
- Exploitation de la mémoire libérée :
- L’attaquant s’attend à ce que Tinyproxy accède à nouveau à cette mémoire libérée (et désormais réaffectée) avant la fin de la fonction. Si cette mémoire contient désormais du code exécutable ou des données créées par l’attaquant, elle peut être exécutée ou mal utilisée par l’application.
- Par exemple, si l’emplacement mémoire est utilisé pour stocker un pointeur de fonction, l’attaquant pourrait écraser ce pointeur par l’adresse de son code malveillant.
- Exécution de code arbitraire :
- Lorsque Tinyproxy tente d’accéder à la mémoire « libérée » dans le cadre de ses opérations normales (par exemple, pour enregistrer des détails ou continuer le traitement des en-têtes), il exécute par inadvertance le code pointé par le pointeur écrasé.
- Cela pourrait permettre à l’attaquant d’exécuter du code arbitraire sur le serveur exécutant Tinyproxy, lui donnant potentiellement un contrôle total sur le serveur.
Exemple d’impact malveillant :
- L’attaquant pourrait installer des portes dérobées, divulguer des données sensibles, lancer d’autres attaques à partir du serveur compromis ou perturber les opérations du serveur.
ATTÉNUATION ET RÉPONSE
Depuis la dernière mise à jour de Cisco Talos, il n’y a pas eu de correctif officiel ni de version de maintenance de la part des responsables de Tinyproxy pour résoudre cette vulnérabilité. Il est conseillé aux organisations utilisant Tinyproxy de surveiller de près leurs systèmes pour détecter toute activité inhabituelle et de mettre en œuvre des mesures de sécurité supplémentaires jusqu’à ce qu’un correctif soit disponible. Cela peut inclure :
- Implémentez des pare-feu d’application Web (WAF) pour filtrer les en-têtes HTTP malveillants.
- Isolez le serveur proxy des réseaux internes critiques.
- Mettez régulièrement à jour tous les logiciels vers les dernières versions lorsque cela est possible.
Pour les utilisateurs et administrateurs de Tinyproxy, il est essentiel de comprendre les mécanismes techniques de cette vulnérabilité et de rester vigilant dans la surveillance de votre trafic réseau. Il est recommandé de prendre des mesures immédiates pour atténuer les risques associés à cette vulnérabilité critique jusqu’à ce qu’un correctif permanent soit publié.
Il est un expert reconnu en matière de sécurité mobile et d’analyse des logiciels malveillants. Il a étudié l’informatique à NYU et a commencé à travailler comme analyste en cybersécurité en 2003. Il travaille activement en tant qu’expert anti-malware. Il a également travaillé pour des sociétés de sécurité telles que Kaspersky Lab. Son travail quotidien consiste à enquêter sur de nouveaux incidents liés aux logiciels malveillants et à la cybersécurité. Il possède également un niveau approfondi de connaissances en matière de sécurité mobile et de vulnérabilités mobiles.
Envoyez des conseils d’actualité à [email protected] ou www.instagram.com/iicsorg/
Vous pouvez également nous retrouver sur Telegram www.t.me/noticiasciberseguro
#Dans #quelle #mesure #votre #proxy #estil #sécurisé #Guide #étape #par #étape #pour #exploiter #vulnérabilité #Day #Tinyproxy
1715872255