Hey,
laatst las ik een artikel over het gebruik van de $_SERVER variabelen 'SERVER_NAME' en 'HTTP_HOST'. Ik dacht eerst dat deze twee dezelfde functie hadden, maar na wat verder onderzoek blijkt de 'SERVER_NAME' het minst veilig te zijn. Zoals in het artikel te lezen is, zijn ze allebei echter makkelijk te misleiden.
Nu gebruik ik onderstaand script om HTTP header spoofing te detecteren, maar is dit genoeg? En zo nee, hoe zou ik het anders, beter, kunnen doen? En is zo'n header echt zo makkelijk te spoofen als in het artikel wordt voorgedaan?
Edit: uhm, foutje in de code : )
Alvast bedankt
laatst las ik een artikel over het gebruik van de $_SERVER variabelen 'SERVER_NAME' en 'HTTP_HOST'. Ik dacht eerst dat deze twee dezelfde functie hadden, maar na wat verder onderzoek blijkt de 'SERVER_NAME' het minst veilig te zijn. Zoals in het artikel te lezen is, zijn ze allebei echter makkelijk te misleiden.
Nu gebruik ik onderstaand script om HTTP header spoofing te detecteren, maar is dit genoeg? En zo nee, hoe zou ik het anders, beter, kunnen doen? En is zo'n header echt zo makkelijk te spoofen als in het artikel wordt voorgedaan?
PHP:
1
2
3
4
| if(empty($_SERVER['HTTP_HOST'])) { $BASEPATH = htmlentities(addslashes($_SERVER['SERVER_NAME'])); } else { $BASEPATH = htmlentities(addslashes($_SERVER['HTTP_HOST'])); } if(fsockopen($BASEPATH, 80, $errno, $errstr, 2)) { define("BASEPATH", $BASEPATH); } else { die('HTTP Header spoofing detected'); } |
Edit: uhm, foutje in de code : )
Alvast bedankt
[ Voor 4% gewijzigd door Svennetjee op 07-01-2009 20:34 ]