Ik heb me de laatste tijd een klein beetje verdiept in proxies, of eigenlijk meer het detecteren van het gebruik ervan. Ik heb nauwelijks verstand van PHP, maar mijn verhaal bevat PHP elementen en dus hoop ik dat het topic hier toch bestaansrecht heeft.
Goed, ik zou dus graag willen weten hoe het gebruik van een publiekelijk toegankelijke, anonieme proxy te detecteren is. Bij een gewone anonieme proxy lijkt dat eenvoudig: met HTTP_X_FORWARDED_FOR, HTTP_VIA en/of HTTP_PROXY_CONNECTION zou dat in theorie mogelijk moeten zijn. Bij high anonimity proxies echter, worden die variabelen niet meegezonden en wordt het hele verhaal al een stuk moeilijker. In een ander topic hierover las ik dat een manier zou zijn om een connectie te maken met het betreffende IP om te zien of het een proxy is. Maar, hoe doe je dat, en hoe verwerk je dat in een PHP script?
Ik heb een voorbeeld van een IP dat een proxy is, als ik daar op nmap krijg ik te zien dat poort 3128 open is, en poort 8080 filtered. Poort 3128 is de poort die door squid wordt gebruikt als ik me niet vergis, hoe zit dat bij andere proxies? Of eigenlijk beter gezegd, is poort 8080 niet degene die ik eigenlijk wil hebben in m'n mini-onderzoekje van een IP? In weer een ander topic las ik dat provider-proxies geen 8080-connecties toelaten van buitenaf, maar dat bezwaar is in mijn geval geen bezwaar omdat een providerproxy geen vrij toegankelijke, anonieme proxy is.
Kortom is mijn vraag: naast de hierboven genoemde variabelen lijkt een goede manier om te bepalen of een IP adres een open, anonieme proxy is om verbinding te maken met het IP op een bepaalde poort. Hoe doe je dat in PHP, of in ieder geval hoe lees je het resultaat uit door middel van PHP, en is dit een juiste manier?
Goed, ik zou dus graag willen weten hoe het gebruik van een publiekelijk toegankelijke, anonieme proxy te detecteren is. Bij een gewone anonieme proxy lijkt dat eenvoudig: met HTTP_X_FORWARDED_FOR, HTTP_VIA en/of HTTP_PROXY_CONNECTION zou dat in theorie mogelijk moeten zijn. Bij high anonimity proxies echter, worden die variabelen niet meegezonden en wordt het hele verhaal al een stuk moeilijker. In een ander topic hierover las ik dat een manier zou zijn om een connectie te maken met het betreffende IP om te zien of het een proxy is. Maar, hoe doe je dat, en hoe verwerk je dat in een PHP script?
Ik heb een voorbeeld van een IP dat een proxy is, als ik daar op nmap krijg ik te zien dat poort 3128 open is, en poort 8080 filtered. Poort 3128 is de poort die door squid wordt gebruikt als ik me niet vergis, hoe zit dat bij andere proxies? Of eigenlijk beter gezegd, is poort 8080 niet degene die ik eigenlijk wil hebben in m'n mini-onderzoekje van een IP? In weer een ander topic las ik dat provider-proxies geen 8080-connecties toelaten van buitenaf, maar dat bezwaar is in mijn geval geen bezwaar omdat een providerproxy geen vrij toegankelijke, anonieme proxy is.
Kortom is mijn vraag: naast de hierboven genoemde variabelen lijkt een goede manier om te bepalen of een IP adres een open, anonieme proxy is om verbinding te maken met het IP op een bepaalde poort. Hoe doe je dat in PHP, of in ieder geval hoe lees je het resultaat uit door middel van PHP, en is dit een juiste manier?