Apache 2.4 记录 PHP 命令 200 成功,但它在做什么?POST /?q=die('z!a'.'x'); 等等

Tim*_*Tim 6 hacking apache-2.4 php7

我正在使用 Apache 2.4.29 和 PHP 7.0.28 运行 CentOS 7.x VPS,我开始在日志中看到以下内容。我已经从网上的文章中尽可能保护了 php.ini 一段时间了,但我想知道为什么我在执行以下操作时看到 HTTP 状态代码为 200 成功并想知道它在做什么以及如何防止它? 据我所知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
Run Code Online (Sandbox Code Playgroud)

Mic*_*ton 11

这是对 PHP Web 应用程序漏洞的盲探。如果您有一个 PHP Web 应用程序,它以某种方式从不受信任的输入、给定的任何查询参数执行代码,那么脚本将终止并打印z!ax在网页输出中。

如果发生这种情况,探测器将在稍后(可能几秒钟后)返回以真正利用该漏洞。