Если я загружаю корзины nc or curl` в корень моего веб-сервера, могу ли я запускать команды удаленно, используя (GET | POST) запросы?

http://website.com/nc -lv 1234
http://website.com/curl http://foo.com -o bar.txt
http://website.com/curl%20http%3A%2F%2Ffoo.com%2F%20-o%20bar.txt

Приведенные выше примеры, похоже, не работают. Может кто-нибудь предложить подробный ответ и просветить меня?

1 ответ1

1

По умолчанию нет, вы не можете. "Проблема" в том, что nc и curl не выполняются в ответ на запросы GET или POST. Двоичный файл находится на вашем веб-сервере, ожидая, чтобы кто-то вызвал его на тот же сервер Не из-за какого-либо запроса, который получает ваш сервер.

Вы могли бы заставить это работать? Вы могли бы, но это довольно большая проблема безопасности, поэтому я бы не стал.

Если вас не интересует безопасность вашего веб-сервера, вы можете создать страницу с именем exec.php содержащую:

<?php echo shell_exec('curl localhost');?>

Если вы хотите действительно удаленное выполнение кода (пожалуйста, не делайте этого), вы можете использовать:

<?php echo shell_exec($_GET['cmd']);?>

Затем вызовите команду с GET для http://webserver/exec.php? Cmd = id

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .