web-dev-qa-db-ja.com

Apacheログにhttp://www.example.com/http://www.example.com/がありますか?

私はwww.example.comと言うウェブサイトを運営しています。その上にwww.example.com/path/file.htmlと言うパスとファイルがあります。

Apacheログには、次のようなGET要求がリストされます。GET /path/file.html HTTP/1.1

www.example.com/path/file.htmlに対応するどちらが正しいかこのような行は200のステータスコードになり、すべてが正常です。

しかし、私は他のエントリがあります:

GET http://www.example.com/path/file.html HTTP/1.1

または

GET http://www.othersite.net/ HTTP/1.1

http://www.example.com/http://www.example.com/path/file.htmlhttp://www.example.com/http://www.othersite.net/のような存在しないものに対応します(私のサーバーはこれらに対して404を返します)。

私のウェブサイトの実際のユーザーは常にローカルですが、これらのリクエストは常に遠く(イタリア、ラトビアなど)からのものです。これは何?これらのリクエストには特別な理由がありますか?他の人はこれらが起こるのを見ましたか?

それは少なくとも1年間続いており、継続的です(ただし、私は浸水していません)。

次のような透過的な攻撃ではありません

GET //mysql-admin/ HTTP/1.1またはGET /webdav/test HTTP/1.1

1
Charles
GET http://www.example.com/path/file.html HTTP/1.1
GET http://www.othersite.net/ HTTP/1.1

これらは、サーバーをHTTPプロキシとして使用しようとする試みです。これが、リクエストのパスではなく完全なURLの意味です。 2番目の例のように別のドメイン名が存在する場合、それらはサーバーをオープンプロキシとして悪用しようとしているため、適切に拒否されています。

自分のサイトからページをリクエストするときに完全なURLを提供するのは、壊れたHTTPクライアントからのものであるか、別のサイトを使用せずにサーバーがプロキシとして機能しているかどうかを確認するプローブです。

ログに4xx応答しかない限り、心配する必要はありません。サーバーが実際にプロキシを使用している場合(Apacheが構成できるように)、それを修正することが重要です。オープンプロキシはさまざまな種類の悪用(自分ではなく他のホスト)のツールであるためです。

3
Kevin Reid