Apache 2.4 log PHP команда 200 выполнена успешно, но что она делает? POST /?q=die('z!a'.'x'); и т.д.

Apache 2.4 log PHP команда 200 выполнена успешно, но что она делает? POST /?q=die('z!a'.'x'); и т.д.

Я работаю на CentOS 7.x VPS с Apache 2.4.29 и PHP 7.0.28, и я начал видеть следующее в своих журналах. Я уже некоторое время защищаю php.ini настолько хорошо, насколько могу, из статей в интернете, но мне интересно, почему я вижу код статуса HTTP 200 success, когда они делают следующее, и интересно, что он делает и как это предотвратить? Насколько я могу судить, die()это эквивалент exit(). Это известный старый эксплойт переполнения буфера?

Но суть в том, почему он возвращается с успехом и какой ущерб он нанес?

[18/Mar/2018:09:57:21 +0000] "POST /?q=die('z!a'.'x');&w=die('z!a'.'x');&e=die('z!a'.'x');&r=die('z!a'.'x');&t=die('z!a'.'x');&y=die('z!a'.'x');&u=die('z!a'.'x');&i=die('z!a'.'x');&o=die('z!a'.'x');&p=die('z!a'.'x');&a=die('z!a'.'x');&s=die('z!a'.'x');&d=die('z!a'.'x');&f=die('z!a'.'x');&g=die('z!a'.'x');&h=die('z!a'.'x');&j=die('z!a'.'x');&k=die('z!a'.'x');&l=die('z!a'.'x');&z=die('z!a'.'x');&x=die('z!a'.'x');&c=die('z!a'.'x');&v=die('z!a'.'x');&b=die('z!a'.'x');&n=die('z!a'.'x');&m=die('z!a'.'x');&eval=die('z!a'.'x');&enter=die('z!a'.'x'); HTTP/1.1" 200 3564

решение1

Это слепой зонд для уязвимостей веб-приложений PHP. Если у вас есть веб-приложение PHP, которое каким-то образом выполняет код из ненадежных входных данных, из любого из указанных параметров запроса, то скрипт умрет и выведет z!axна экран вывод веб-страницы.

Если это произойдет, то хакер вернется позже (возможно, через несколько секунд), чтобы по-настоящему воспользоваться уязвимостью.

Связанный контент