Nooit zomaar een $_POST/$_GET in een query rammen, geen wachtwoorden in cookies of andere 'gevaarlijke' info, controle op IPs; anti-session-hack, e.d... Zo kom je al ver (;
Elke sessie heeft een eigen ID.
Als Mr Evil van een van je gebruikers het sessieID steelt zou hij de sessie over kunnen nemen, met alle gevolgen van dien.
Om dit op te lossen koppel je een sessie aan het ip van de gebruiker, dat hoort namelijk niet te veranderen tijdens een sessie.