
disable_functions と open_basedir を回避するためのツール
ペンテストで__disable_functions__と__open_basedir__をバイパスするためのお気に入りのツールです。
Linux上のPHPは、mail()関数が実行されるとバイナリ(sendmail)を呼び出します。putenv()が許可されていれば、環境変数"LD_PRELOAD"を設定して、任意の共有オブジェクトをプリロードできます。この共有オブジェクトは、PHPの制限を受けずにカスタムペイロード(バイナリまたはbashスクリプト)を実行するため、例えばリバースシェルを得ることができます。
構文は非常に簡単です:
$ python2 chankro.py --arch 64 --input rev.sh --output chan.php --path /var/www/html
注: pathは、.soが配置される絶対パスです。
$ git clone https://github.com/TarlogicSecurity/Chankro.git
$ cd Chankro
$ python2 chankro.py --help
# pacman -S chankro
$ chankro --help