web-dev-qa-db-ja.com

Apache 2.4ログPHPコマンド200成功ですが、何をしていますか?POST /?q=die('z!a'.'x ');等

CentOS 7.x VPSとApache 2.4.29およびPHP 7.0.28を実行していますが、ログに次のように表示されます。私は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
6
Tim

これは、PHP Webアプリケーションの脆弱性に対するブラインドプローブです。PHP信頼できない入力からのコードを何らかのクエリパラメータから実行するWebアプリケーションがある場合指定すると、スクリプトは終了し、z!ax Webページ出力。

これが発生した場合、プローバは後で(おそらく数秒後に)戻って脆弱性を実際に悪用します。

11
Michael Hampton