Vulnérabilité du serveur http Apache 2.4.49 permettant de recevoir des fichiers en dehors de la racine du site

Une mise à jour urgente du serveur http Apache 2.4.50 a été créée, qui élimine une vulnérabilité 0-day déjà activement exploitée (CVE-2021-41773), qui permet l'accès aux fichiers depuis des zones en dehors du répertoire racine du site. Grâce à cette vulnérabilité, il est possible de télécharger des fichiers système arbitraires et des textes sources de scripts Web, lisibles par l'utilisateur sous lequel le serveur http est exécuté. Les développeurs ont été informés du problème le 17 septembre, mais n'ont pu publier la mise à jour qu'aujourd'hui, après que des cas d'utilisation de la vulnérabilité pour attaquer des sites Web aient été enregistrés sur le réseau.

Pour atténuer le danger de cette vulnérabilité, le problème n'apparaît que dans la version 2.4.49 récemment publiée et n'affecte pas toutes les versions antérieures. Les branches stables des distributions de serveurs conservatrices n'ont pas encore utilisé la version 2.4.49 (Debian, RHEL, Ubuntu, SUSE), mais le problème a affecté les distributions continuellement mises à jour telles que Fedora, Arch Linux et Gentoo, ainsi que les ports de FreeBSD.

La vulnérabilité est due à un bug introduit lors d'une réécriture du code de normalisation des chemins dans les URI, à cause duquel un point codé "%2e" dans un chemin ne serait pas normalisé s'il était précédé d'un autre point. Ainsi, il était possible de substituer les caractères bruts « ../ » dans le chemin résultant en spécifiant la séquence « .%2e/ » dans la requête. Par exemple, une requête telle que « https://example.com/cgi-bin/.%2e/.%2e/.%2e/.%2e/etc/passwd » ou « https://example.com/cgi -bin /.%2e/%2e%2e/%2e%2e/%2e%2e/etc/hosts" permettait d'obtenir le contenu du fichier "/etc/passwd".

Le problème ne se produit pas si l'accès aux répertoires est explicitement refusé à l'aide du paramètre « exiger tout refusé ». Par exemple, pour une protection partielle vous pouvez spécifier dans le fichier de configuration : exiger que tout soit refusé

Apache httpd 2.4.50 corrige également une autre vulnérabilité (CVE-2021-41524) affectant un module implémentant le protocole HTTP/2. La vulnérabilité permettait de lancer un déréférencement de pointeur nul en envoyant une requête spécialement conçue et de provoquer le blocage du processus. Cette vulnérabilité apparaît également uniquement dans la version 2.4.49. Pour contourner la sécurité, vous pouvez désactiver la prise en charge du protocole HTTP/2.

Source: opennet.ru

Ajouter un commentaire