Warum werden externe Domänen in meinen Apache-Protokollen angezeigt?

10

Ich habe mehrere Protokolleinträge, die auf eine externe Domain verweisen - hauptsächlich auf eine russische Suchmaschine ( http://www.yandex.ru/ ).

Wie erscheinen diese in meinen Protokollen?

82.146.58.53 - - [10/Jun/2010:00:49:11 +0000] "GET http://www.yandex.ru/ HTTP/1.0" 200 8859 "http://www.yandex.ru/" "Opera/9.80 (Windows NT 5.1; U; ru) Presto/2.5.22 Version/10.50"`
82.146.59.209 - - [10/Jun/2010:01:54:10 +0000] "GET http://www.yandex.ru/ HTTP/1.0" 200 8859 "http://www.yandex.ru/" "Mozilla/5.0 (Windows; U; Windows NT 5.1; ru; rv:1.9.2.2) Gecko/20100316 Firefox/3.6.2"`
82.146.41.7 - - [10/Jun/2010:02:55:34 +0000] "GET http://www.yandex.ru/ HTTP/1.0" 200 8859 "http://www.yandex.ru/" "Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US) AppleWebKit/532.5 (KHTML, like Gecko) Chrome/4.1.249.1045 Safari/532.5"
125.45.109.166 - - [09/Jun/2010:11:04:17 +0000] "GET http://proxyjudge1.proxyfire.net/fastenv HTTP/1.1" 404 1010 "-" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)"
Johan
quelle

Antworten:

8

Die Tests werden von Crackern durchgeführt, die nach offenen Proxys suchen: Einige (schlecht konfigurierte) Reverse-Proxys stellen eine Verbindung zu einer beliebigen Domäne her, nicht nur zu der Domäne, die sie bedienen sollen. Sie versuchen, Ihren Server zu verwenden, um eine Verbindung zu einer anderen Site herzustellen und diese zu missbrauchen.

Andrew Aylett
quelle
Die Einträge in den Protokollen geben also keinen Anlass zur Sorge - es sei denn, ich fungiere als Proxy.
Johan
Das ist richtig. Die Chancen, dass Sie ein öffentlicher Proxy sind, ohne es zu merken, sind sehr gering, insbesondere wenn Sie Ihre Website direkt von Ihrem Server aus ohne Proxy bereitstellen.
Andrew Aylett
Dumme Folgefrage: Warum sollte der Rückkehrcode 200 sein, wenn der Apache die Anfrage nicht tatsächlich weiterleitet?
Frank Hopkins
Und um meine eigene Frage zu beantworten: Es kann vorkommen, dass der Apache mit einem Catch All konfiguriert ist. Daher wird jede nicht zugeordnete Domain von dieser Standardseite bedient, was zu einem 200-Antwortcode führt (zusammen mit dem Inhalt der konfigurierten Elemente) als diese Standardseite.
Frank Hopkins
3

Jeder kann sich mit einem Webserver verbinden und von jedem Host eine beliebige URL anfordern. Es wird dann in Ihrem Protokoll angezeigt. Ein Beispiel,

$ nc www.whateveryourdomainishere.com 80
GET / HTTP/1.1
host: www.asdfasdfasdfsdafsdf.com

Sie erhalten einen Eintrag in Ihr Apache-Protokoll für www.asdfasdfasdfsdafsdf.com

Schmiere
quelle
Das wusste ich nicht. Ich habe gerade Ihr Beispiel ausprobiert und erhalte 82.69.xx - - [10 / Jun / 2010: 09: 45: 24 +0000] "GET / HTTP / 1.1" 400 350 "-" "-" Keine Erwähnung von asdfxxxetc Aber wenn das das Wie ist - was ist das Warum?
Johan
Wahrscheinlich würde ich sehen, ob sie eine Anfrage von Ihrer Website umleiten können, um ihre Spuren zu verbergen. Überprüfen Sie, ob Sie als Proxy fungieren oder nach einem Exploit suchen können.
Bart Silverstrim
Sie müssen "GET example.com HTTP / 1.1" als Anforderung zum Initiieren des Proxys ausgeben. Versuchen Sie dies, und Sie werden es (wahrscheinlich) im Protokoll sehen.
Vatine