
Tool zur Umgehung von disable_functions und open_basedir
Dein Lieblingswerkzeug, um disable_functions und open_basedir bei deinen Pentests zu umgehen.
PHP ruft unter Linux eine Binärdatei (sendmail) auf, wenn die mail()-Funktion ausgeführt wird. Falls putenv() erlaubt ist, können wir die Umgebungsvariable "LD_PRELOAD" setzen, um ein beliebiges Shared Object vorzuladen. Unser Shared Object führt unseren benutzerdefinierten Payload (eine Binärdatei oder ein Bash-Skript) ohne die PHP-Einschränkungen aus, sodass wir beispielsweise eine Reverse Shell erhalten können.
Die Syntax ist ziemlich einfach:
$ python2 chankro.py --arch 64 --input rev.sh --output chan.php --path /var/www/html
Hinweis: path ist der absolute Pfad, in dem unsere .so abgelegt wird.
$ git clone https://github.com/TarlogicSecurity/Chankro.git
$ cd Chankro
$ python2 chankro.py --help
# pacman -S chankro
$ chankro --help