Hallo,
ich habe auf meinem Rootserver (1&1) laut phpinfo() einige Indices ('Indexe'?) nicht zur Verfügung - Zugriffsversuche darauf quittiert PHP mit Fehlermeldungen. Speziell handelt es sich um REMOTE_HOST (wobei REMOTE_ADDR existiert) und HTTP_REFERER.
Mit dem ersten kann ich soweit leben, aber wie bekomme ich ohne HTTP_REFERER einfach heraus, von welcher URL aus mein aktuelles Skript aufgerufen wurde? Ich benötige dies für Sicherheitsfunktionen innerhalb einiger Scripts.
PHP-Version ist 4.3.4, läuft als Apache-Modul.
TIA,
Michael
Fehlende Indices in $_SERVER
-
- Posts: 1675
- Joined: 2003-07-06 02:03
Re: Fehlende Indices in $_SERVER
Hallo,
REMOTE_HOST ist der Reverse-Lookup der IP des Besuchers. Entweder der hat keine oder Dein Server kann sie nicht bestimmen. Prüfe erstmal ob deine Einwahl-IP einen Reverse hat.
Gruß, Wolfgang
ist bei mir in phpinfo() garnicht drin - hast Du eine andere? :oops:mkss wrote:REMOTE_HOST
REMOTE_HOST ist der Reverse-Lookup der IP des Besuchers. Entweder der hat keine oder Dein Server kann sie nicht bestimmen. Prüfe erstmal ob deine Einwahl-IP einen Reverse hat.
Das ist die URL unter der ein Link auf deine Seite angeklickt wurde. Wenn die URL deiner Seite direkt eingegeben oder ein Bookmark verwendet wurde gibt's keinen Referer. Bei manchen Browsern (z.B. Opera) kann man den Referer auch sperren, da kann der Serverbetreiber nichts dagegen machen.HTTP_REFERER.
Dann mußt Du dabei einplanen daß manche Opera-Surfer die Referer-Sperre einschalten.Ich benötige dies für Sicherheitsfunktionen innerhalb einiger Scripts.
Gruß, Wolfgang
-
- Posts: 12
- Joined: 2004-12-23 01:22
Re: Fehlende Indices in $_SERVER
Hallo Wolfgang,
Und wenn Cookies oder REFERER oder JavaScript deaktiviert werden, kann ich die Funktion einfach nicht anbieten. Sicherheit geht vor, denke ich. Und damit muss der Seitenbesucher eben leben. Es geht im Speziellen um eine Art Formmailer mit konfigurierbaren Parametern.
Frohe Festtage!
Micha
Ich kenne die von PHP unter IIS (Windows). Da die Scripts vornehmlich auf IIS geschrieben werden, vermisse ich die jetzt natürlich. Aber das ist das kleinere Ã?bel ...mkss hat folgendes geschrieben:
REMOTE_HOST
ist bei mir in phpinfo() garnicht drin - hast Du eine andere?
Hmm.. ich wollte eigentlich prüfen, ob das Script von einer Seite auf demselben VHost/Server aufgerufen wird, um Missbrauch 'von aussen' zu verhindern. Mit Sessions arbeiten geht nicht, weil die aufrufenden Seiten HTML sind, und dagegen kann ich leider nicht viel tun. Dann muss ich das einfach mit Cookies und JavaScript lösen.HTTP_REFERER.
Das ist die URL unter der ein Link auf deine Seite angeklickt wurde. Wenn die URL deiner Seite direkt eingegeben oder ein Bookmark verwendet wurde gibt's keinen Referer. Bei manchen Browsern (z.B. Opera) kann man den Referer auch sperren, da kann der Serverbetreiber nichts dagegen machen.
Und wenn Cookies oder REFERER oder JavaScript deaktiviert werden, kann ich die Funktion einfach nicht anbieten. Sicherheit geht vor, denke ich. Und damit muss der Seitenbesucher eben leben. Es geht im Speziellen um eine Art Formmailer mit konfigurierbaren Parametern.
Frohe Festtage!
Micha
-
- Project Manager
- Posts: 11182
- Joined: 2003-02-27 01:00
- Location: Hamburg
Re: Fehlende Indices in $_SERVER
PayPal.Me/JoeUser ● FreeBSD Remote Installation
Wings for Life ● Wings for Life World Run
„If there’s more than one possible outcome of a job or task, and one
of those outcomes will result in disaster or an undesirable consequence,
then somebody will do it that way.“ -- Edward Aloysius Murphy Jr.
Wings for Life ● Wings for Life World Run
„If there’s more than one possible outcome of a job or task, and one
of those outcomes will result in disaster or an undesirable consequence,
then somebody will do it that way.“ -- Edward Aloysius Murphy Jr.
-
- Posts: 1675
- Joined: 2003-07-06 02:03
Re: Fehlende Indices in $_SERVER
Hallo,
Gruß, Wolfgang
kannst Du natürlich auch unter Linux ermitteln, steht nur nicht in der phpinfo.mkss wrote:[REMOTE_HOST] vermisse ich
Oh je - es ist kein Problem beim Aufruf einen falschen Referer zu übergeben. Natürlich nicht mit dem Browser, aber in C oder PHP ist das schnell geschrieben...Hmm.. ich wollte eigentlich prüfen, ob das Script von einer Seite auf demselben VHost/Server aufgerufen wird, um Missbrauch 'von aussen' zu verhindern.
... und wird schon seit Jahren von Spammern gemacht um genau diesen vermeintlichen Schutz auszuhebeln.Es geht im Speziellen um eine Art Formmailer mit konfigurierbaren Parametern.
Gruß, Wolfgang
-
- Posts: 158
- Joined: 2002-12-10 22:10
- Location: Ausgburg (Germany)
Re: Fehlende Indices in $_SERVER
wenn die anfrage von einer reinen html seite kommt, dann binde auf der eine grafik ein die per php automatisch generiert wird. und zwar so ein lustiger buchsteben/zahlencode.
den muss der user abtippen und du kannst serverseitig speichern, dass diese ip mit diesem code innerhalb der nächsten 5min das formular genau einmal benutzen darf.
keine cookies
kein javascript
kein referer ;)
den muss der user abtippen und du kannst serverseitig speichern, dass diese ip mit diesem code innerhalb der nächsten 5min das formular genau einmal benutzen darf.
keine cookies
kein javascript
kein referer ;)
-
- Posts: 12
- Joined: 2004-12-23 01:22
Re: Fehlende Indices in $_SERVER
Erstmal vielen Dank an alle. Die genannten Sicherheitsaspekte hatte ich natürlich nicht bedacht. Dann wird das Modul eben nach aussen abgeschottet. Ich lasse die Konfiguration von eMail-Zielen nur noch nach einer festen Tabelle oder nach einer dynamischen Tabelle in einer Datenbank zu. Um verschiedene Ziele abzudecken, gebe ich dann einfach den entsprechenden Index an, statt einer vollständig frei konfigurierbaren Adresse.
Und jeder Versuch, das Skript ohne $_POST-Parameter aufzurufen, generiert eine Abuse-Mail.
Funktioniert prima - danke nochmal!!
Micha
Und jeder Versuch, das Skript ohne $_POST-Parameter aufzurufen, generiert eine Abuse-Mail.
Funktioniert prima - danke nochmal!!
Micha