wahsaga: +Ajax, Sicher machen

Beitrag lesen

hi,

Datei b.php sei nun ein Script, welches einen Request von index.php verarbeiten soll(AJAX).
Wie hindere ich nun jemenden drann die Datei b.php direkt aufzurufen?

OK, also hat das mit dem ganzen Konstanten-Kram gar nichts zu tun.

Womit wir wieder dabei wären, dass ein AJAX-Request sich durch nichts von einem "normalen" unterscheidet.

Entweder willst du also keinen von beiden zulassen, oder beide.

Du kannst natürlich beim AJAX-Request bspw. einen zusätzlichen GET-Parameter mitgeben, und in b.php auf diesen prüfen - aber der lässt sich natürlich auch bei jedem sonstigen Aufruf mitgeben, "Sicherheit" bringt das also keine.

Ebenfalls möglich wäre es, den AJAX-Request einen zusätzlichen HTTP-Request-Header generieren zu lassen (als selbstdefinierten natürlich mit "X-" beginnend), und auf diesen zu prüfen. Das habe ich mal erwogen, um AJAX-Requests von "normalen" halbwegs zuverlässig unterscheiden zu können. Habe es dann aber wieder verworfen, weil ich vermute, das zu viele "Personal Firewalls" und Proxies im Einsatz sind, die solche zusätzlichen Header auf Grund von Paranoia oder schlicht Blöd^WUnwissenheit blocken könnten.

Fazit: Wenn es der Sicherheit deiner Applikation einen Abbruch tut, wenn du nicht genau feststellen kannst, "woher" ein Request kommt, dann hast du m.E. beim Design etwas verkehrt gemacht.
Wenn lediglich die Befürchtung besteht, der Nutzer könnte für ihn unverständliche Daten geliefert bekommen, wenn eine Ressource anders als vorgesehen aufgerufen wird - nun, dass ist das Problem des Nutzers.

gruß,
wahsaga

--
/voodoo.css:
#GeorgeWBush { position:absolute; bottom:-6ft; }