
解决php提权的时候因系统禁用函数导致无法执行命令的情况
bypass_disablefunc.php a trois paramètres GET : cmd, outpath et sopath.
Les paramètres sont très simples,
cmd est votre commande malveillante,
outpath est le chemin du fichier de sortie de la commande (lisible et inscriptible),
sopath est le chemin absolu de notre objet partagé bypass_disablefunc_x64.so. Par exemple :
Le premier est le paramètre cmd, la commande système à exécuter (comme pwd) ;
Le deuxième est le paramètre outpath, le chemin du fichier qui enregistre la sortie de l'exécution de la commande (comme / tmp / xx), pour faciliter l'affichage sur la page. De plus, pour ce paramètre, vous devez prêter attention à plusieurs points : le web dispose-t-il des droits de lecture/écriture, le web peut-il accéder à travers les répertoires, le fichier sera écrasé et supprimé, etc. ;
Le troisième est le paramètre sopath, qui spécifie le chemin absolu de l'objet partagé qui détourne les fonctions système (comme /var/www/bypass_disablefunc_x64.so). De plus, à propos de ce paramètre, vous devez noter si le web peut y accéder à travers les répertoires.
De plus, bypass_disablefunc.php concatène la commande et le chemin de sortie pour former une ligne de commande complète, vous n'avez donc pas besoin de redirection dans le paramètre cmd.
bypass_disablefunc_x64.so est l'objet partagé qui exécute les commandes, compilé à partir de bypass_disablefunc.c avec la commande gcc -shared -fPIC bypass_disablefunc.c -o bypass_disablefunc_x64.so
Si la cible est une architecture x86, vous devez ajouter l'option -m32 et recompiler bypass_disablefunc_x86.so
Trouvez un moyen de transférer bypass_disablefunc.php et bypass_disablefunc_x64.so vers la cible. Une fois les trois paramètres GET spécifiés, bypass_disablefunc.php peut contourner disable_functions
Problèmes connus :