Een hacker is acteif geweest op me site en kon inloggen:S op iemand anders acount. Ik kon de login bug niet vinde.
Daarom zoek ik iemand die me wil helpen.
Zoja dan pm ik jouw de login.php etc. wat je nodig hebt.
lek kan overal in zitten, als er ergens een exploit mogelijk is, kan het op een andere pagina als de login.php gebeurd zijn.
controleer overal of je $_GET en $_POST goed hebt beveiligd
Want als je dat niet doet, kan de gebruiker php gebruiken in die form. En na wat puzzelen en logisch denken, lukt het je wel om:
-De actieve functie af te sluiten
- een nieuwe functie te beginnen
- waarmee je je bv inlogd
meer info over deze zaken vind je in het Hackers Guide van Sijmen Ruwhof
Download de PDF versie, print ze eens uit, en lees het eens rustig door, is een erg leerzaam artikel (of moet ik zeggen miniboek) ...
$list_query=mysql_query("SELECT * FROM leden WHERE gebruikersnaam='".$_POST['gebruikersnaam']."' AND wachtwoord='".md5($_POST['wachtwoord'])."'")or die(mysql_error());
bekijk die hackersguide die freddy liet zien.
en laat je include script op de main page eens zien (waarmee je alle contents include) misschien zit daar wel een serieuze blunder in
Als je hier geen rekening mee houd kan men jou query aanpassen. Voorbeeld ik voer in:
Gebruikersnaam: Admin
Wachtwoord: OR != '' // weet niet of dit zo werkt, maar ergens in de buurt.
Op deze manier kun je dus ook gewoon hele tabellen weg gooien.
@Ontani $page = ?page=
$page moet dus eigenlijk $_GET['page'] worden
@ikkedikke hoe bedoel je?
@Shifty als ik geen userid en gebruikersnaam meer mag opslaan dan heb ik nog hash. dan kan ik nog wel controleren of cookie bestaat!
Maar nu zien van wie het is omdat userid weg is!
1. Meld je aan.
2. Verwijder je cookies.
3. Log nu in op de site.
4. Je hebt nu als het goed is een cookie van de site.
5. Zoek het profiel van de Beheerder, en kijk wat zijn gebruikersnaam & id is.
6. Sluit alle internet browsers nu af en open de cookie.
7. Nu zie je ergens staan: Gebruikersnaam en userid..
8. zo nee.. blijf zoekenÂ
9. Zo ja, wijzig die in die van de beheerder.
10. Ga nu naar de site en je beschikt over beheer rechtenÂ
wat een... "primitieve hacker"... iedereen die een beetje php kan weet dat dit onzin is... met een beetje verstand slaag je een gehashed password op in een cookie en controleer je met een simpele functie of het userid en pass overeen komen.
Zelf voeg ik deze samen via een andere functie en slaag ik dit gegevevn ook op in men tabel.
Zodat ik maar 1 cookie hoef te bakken.
if(IsSet($_COOKIE['username']) AND IsSet($_COOKIE['userid']) AND IsSet($_COOKIE['userhash'])){
$check_lid_query=mysql_query("SELECT * FROM leden WHERE gebruikersnaam='".$_COOKIE['username']."' AND id='".$_COOKIE['userid']."' AND wachtwoord='".$_COOKIE['userhash']."'")or die(mysql_error());