Bypassing PHP WAF to Achieve Remote Code Execution In-Depth Analysis

DEV - 21/07
Avant de tester pour contourner WAF pour exécuter le code à distance, construire d'abord une télécommande simple et vulnérable...

Avant de tester pour contourner WAF pour exécuter le code distant, construire d'abord un script d'exécution de code à distance simple et vulnérable, comme le montre la figure

La ligne 6 est un code d'exécution de commande évident, et la ligne 3 tente d'intercepter des fonctions telles que système, exec, ou pass-thru (il y a beaucoup d'autres fonctions dans PHP qui peuvent exécuter des commandes système, ces trois sont les plus courantes).

Ce script est déployé derrière Cloudflare WAF et ModSecurity + OWASP CRS3. Pour le premier test, essayez de lire le contenu du passage.

/cfwaf.php?code=system("cat /etc/passwd");
Saisissez le mode plein écran

Comme vous pouvez le voir, il a été intercepté par CloudFlare, nous pouvons essayer de le contourner en utilisant des variables non initialisées, par exemple

cat /etc$u/passwd
Saisissez le mode plein écran

Cloudflare WAF a été contourné, mais parce que le script vérif...
[Courte citation de 8% de l'article original]

Loading...