Apache 2.4 日誌 PH​​P 指令 200 成功,但它在做什麼? POST /?q=die('z!a'.'x'); ETC

Apache 2.4 日誌 PH​​P 指令 200 成功,但它在做什麼? POST /?q=die('z!a'.'x'); ETC

我正在使用 Apache 2.4.29 和 PHP 7.0.28 運行 CentOS 7.x VPS,我開始在日誌中看到以下內容。我已經從線上文章中盡可能地保護了 php.ini 一段時間,但我想知道為什麼當他們執行以下操作時我會看到 200 成功的 HTTP 狀態代碼,並想知道它在做什麼以及如何防止它?據我所知,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 Web 應用程式漏洞的盲目探測。如果您有一個 PHP Web 應用程序,它以某種方式從不信任的輸入、給定的任何查詢參數執行程式碼,那麼腳本將終止並z!ax在網頁輸出中列印。

如果發生這種情況,探測器將稍後(可能幾秒鐘後)返回以真正利用漏洞。

相關內容