[PHP] Proxy Blocker

web2null

ehem. assactions
ID: 131418
L
20 April 2006
1.775
165
Ist es möglich mit PHP ein Proxy blocker zu machen, d.h. wenn ein user ein Proxy benutzt soll er kein zugang zu einer bestimmten seite haben.
 
Ist es möglich mit PHP ein Proxy blocker zu machen, d.h. wenn ein user ein Proxy benutzt soll er kein zugang zu einer bestimmten seite haben.

Das dürfte nur über eine Blacklist gehen. Dann kannst du einfach die IP des Users überprüfen und den Zugriff verweigern, wenn die IP auf der Blacklist steht.

Greetz

paddya
 
Natürlich. Guck dir das $_SERVER[]-Array mal an.

Ggf. kannst du sogar direkt über den Webserver (Apache) solche Aufrufe filtern und 403 zurückliefern.
 
Ist es möglich mit PHP ein Proxy blocker zu machen, d.h. wenn ein user ein Proxy benutzt soll er kein zugang zu einer bestimmten seite haben.

Je nachdem, ob der Proxy das ermöglicht.

Es gibt 3 Arten/Sicherheitsstufen von Proxys.

  1. Der Proxy gibt sich als solcher zu erkennen, und sendet Original-IP mit.
  2. Der Proxy gibt sich als solcher zu erkennen, schickt aber nur eine Random IP mit.
  3. Der Proxy schickt einen Header, als ob er ein normaler User wäre => nicht zu erkennen.
1. und 2. senden in "HTTP_X_FORWARDED_FOR" bzw. "HTTP_VIA" eine IP-Adresse mit ($_SERVER-Array).
3. sendet nur normal "REMOTE_IP" wie jeder andere User auch.
 
hab das hier

PHP:
if(isset($_SERVER['HTTP_X_FORWARDED_FOR']) || ($_SERVER['HTTP_USER_AGENT']=='') || ($_SERVER['HTTP_VIA']!='')){

die("");
}

aber da blockt der auch zahlreiche die keine Proxys benutzen
 
Na weil der User-Agent nicht nur bei Proxys leer sein kann.
Auch Firewalls oder "Proxys" in Firmen (das alle Rechner über eine Verbindung online gehen, aber bestimmte Anfragen geblockt werden: illegale Seiten usw) entfernen gerne mal den User-Agent.
 
Noch nie geprüft, aber bei AOL wäre es noch (durch diese komischen "globalen" Proxys:roll:) auch möglich, dass die ein ähnliches Verhalten aufweisen:ugly:
 
Es geht um ein "klickspiel" - da werden firmen denk ich mal nicht klicken - es muss doch ne möglichkeit geben user die versuchen Proxyklicks zu machen, auszusperren? Oder is es am besten ich mach ne schöne log und die muss ich dann halt alle paar tage durchsehen, und die user bannen/ermahnen ? Was meint ihr wie kann man das am besten lösen?
 
Blacklisting u.U. und die aktuellen Proxylists immer automatisch ziehen:-?

Und eben durchsehen, ne Kombination ist immer am besten wenns die Zeit zulässt;)
 
da werden firmen denk ich mal nicht klicken
Sicher? Kann durchaus Leute geben, die während ihrer Pausen- oder Arbeitszeiten :)evil:) da rumgeistern.

Die Proxy-Listen sind leider immer unvollständig, und es gibt keine Möglichkeit, 100% sicher zu ermitteln, ob ein Proxy verwendet wurde.

Ich schlage dir vor:
  • IPs, die zum Tor-Anonymizer gehören, findest du hier. Bei der Verwendung besteht die Gefahr, das du Leute (aus)sperrst, die deine Seite nie mit Tor betreten haben, aber für andere ihre Rechner für Tor bereitstellen.
  • Guck dir auch den Host-Namen ("REMOTE_HOST") an. Manche verraten sich durch den Namen im Host wie proxy.blah.xy.
  • Je nach Sicherheitsbedürfnis: im Auge behalten, zu welchen Ländern die IPs gehören (Eine Datenbank findest du unter GeoIP Database, Achtung: auch hier gilt, keine 100%-Trefferquote).
  • Natürlich wie schon vorgeschlagen, die Header auswerten

Wenn dein Skript "Alarm" schlägt: nicht direkt jemand verdächtigen oder gar verklagen, sondern erst beobachten, um Erfahrungswerte zu sammeln.
Man kann Maßnahmen durchführen wie:
  • Bei Auslösung (z.B. weil "proxy" im Hostnamen) den User auf manuelle Auszahlungen setzen.
  • Wenn dir wegen spezieller IPs Ärger oder Verluste drohen (weil Sponsor zu streng etc), musst du den User dann wohl oder übel für diesen Unterbereich sperren. (Dabei bitte dem Benutzer keine Fakerei unterstellen, sondern dich auf AGB berufen das du Teilnahmen aus technischen (oder gar beliebigen) Gründen ausschließen kannst)

Damit bin ich immer gut gefahren.
 
Dann sieht man es doch an proxy.uni-blablub.xy, oder? Spätestens bei der manuellen Drübersicht kann man es wieder in der Whitelist nehmen.

Hab ja extra gesagt, das man mit "Treffern" vorsichtig umgehen soll ;)

Und wenn es wirklich Ärger geben sollte, weil der Sponsor nur pro IP vergütet und 8 Studenten auf die Idee kommen, aus der Uni zu klicken, würde es eh auf Einschränkungen hinauslaufen, trotz Whitelist. Ich kenne leider nicht die Details; da müsste der Threadstarter genaueres sagen.
 
Zuletzt bearbeitet: