Я просто тестирование и возиться с вещами безопасности, когда я заметил, что я не могу получить результат из следующего:shell_exec() не может выполнять определенные команды
<?php echo shell_exec('history'); ?>
То же самое относится к:
<?php echo shell_exec('fc -l 1'); ?>
Оба были опробованы с 2>&1
в конце, но в конце концов - history
не является командой. Пробовали также в CLI:
php -r "echo shell_exec('fc -l 1');"
который ничего не возвращает. Была предпринята попытка с system()
и exec()
также (= не возвращает результат). В то же время:
- Я могу выполнить как
history
иfc -l 1
через SSH; - Я могу выполнять другие команды, такие как
ls
через PHP (shell_exec()
как в Интернете, так и в CLI); - Я запускаю того же пользователя;
history
иfc -l 1
do return results;
Вы действительно точно знаете, что это тот самый пользователь? попробуйте 'whoami' оба способа убедиться. – SZenC
Да, это тот же пользователь. Подтвердили это с помощью 'whoami'. – McJohnson
Хорошо, тогда я не знаю, извините – SZenC