[PHP] Cookie gaat voor session? (security)

Pagina: 1
Acties:

  • Bolk
  • Registratie: Februari 2001
  • Niet online

Bolk

Change the equation.

Topicstarter
Hi all,

in dit topic van gisteren [topic=459713/1/50] had ik problemen met een lastvisit. Dit werkt nu perfect alleen stuit ik nu op het volgende probleem.

Op ons forum krijg je een cookie met daarin je uid en je sessionid die in de db staat en die ik later explode.
code:
1
userid;sessid

ik sloop dat koekje uit elkaar door explode (";"... te gebruiken.

Het oude systeem werkte op 2 cookies waar je uid en md5 pass instond. Het hele systeem werkt op $u dat ik overal gebruik.

Wat is nu het geval, ik maak een session aan wanneer je op het forum komt en die heet u:

session_register("u");

Die u is dus je userid. Wat heeft onze grote forum h4xor DR nu gedaan. Hij heeft een cookie gemaakt met de waarde $u en daar staat dus een uid in. Als hij dan mijn uid invult in dat cookie dan heeft ie al mijn rechten.

Wat kan ik er aan doen dat vanaf buitenaf (cookies ed) er niet meer met die $u gekloot kan worden? Hij overschrijft als het ware de session die nu bestaat. De $u word op gecontroleerd met een isset(); Maar of het nu een session of cookie is maakt blijkbaar niets uit :?

Misschien makkelijk, misschien lastig, ik heb een formpje gemaak een aan de phpinfo geplakt, maar daar word ik niet veel wijzer van (http://enterprise.homelinux.com/test.php)

Alvast bedankt ;)

Ik bespeur hier een zekere mate van onethische logica.


  • Bolk
  • Registratie: Februari 2001
  • Niet online

Bolk

Change the equation.

Topicstarter
Ow shit, ik lees dit net een paar sec geleden in een ander topic:
PHP:
1
<?$HTTP_SESSION_VARS["eenvar"]="een waarde";?>

Iets ermee te maken :?

/edit: ja dus, mijn excuses voor mijn lompe actie :P

Ik bespeur hier een zekere mate van onethische logica.


  • SWINX
  • Registratie: Juni 2001
  • Laatst online: 02-06 23:18
precies, met $HTTP_SESSION_VARS :)

IRC Log:
[23:27:52] * @DR heeft vandaag maar 1 1337 ding gedaan met PHP :P
[23:28:07] <@SWINX> en dat is...
[23:28:22] <@DR> een forum gehaxored :P
[23:28:37] <@SWINX> :?
[23:28:55] <@DR> cookie fake :P
[23:29:07] <@DR> vooral cookie van een admin fake :P
:P

Mannen komen van Mars Tweakers, vrouwen van Venus Bokt


  • Gerco
  • Registratie: Mei 2000
  • Laatst online: 17:38

Gerco

Professional Newbie

Misschien ideetje:
code:
1
$u = $u.";".md5($u.$REMOTE_ADDR);

en dan bij het uitlezen:
code:
1
2
3
4
$u = explode($u, ";");
if ($u[2] != md5($userid.$sessid.$REMOTE_ADDR)) {
  print("Pleur op gore h4x0r!");
}

- "Als ik zou willen dat je het begreep, legde ik het wel beter uit!" | All number systems are base 10!


  • ACM
  • Registratie: Januari 2000
  • Niet online

ACM

Software Architect

Werkt hier

Op zaterdag 06 april 2002 13:58 schreef Gerco het volgende:
Misschien ideetje:
Nadeel is dat dat wat lastig werkt om mensen een jaar ingelogd te laten...

Gewoon naar de $HHTP_SESSION_VARS/$_SESSION kijken ;)

En/of in de php.ini die precedence aanpassen (ECPS dingen opzoeken)

  • Gerco
  • Registratie: Mei 2000
  • Laatst online: 17:38

Gerco

Professional Newbie

Op zaterdag 06 april 2002 14:24 schreef ACM het volgende:
Nadeel is dat dat wat lastig werkt om mensen een jaar ingelogd te laten...

Gewoon naar de $HHTP_SESSION_VARS/$_SESSION kijken ;)
Dat is ook weer waar, dat is gewoon een keuze die je moet maken. Veiligheid of gemak.

- "Als ik zou willen dat je het begreep, legde ik het wel beter uit!" | All number systems are base 10!


  • Bolk
  • Registratie: Februari 2001
  • Niet online

Bolk

Change the equation.

Topicstarter
Nagoed het werkt, alleen gaat het forum over de zeik wanneer iemand wil posten terwijl tie niet ingelogd is. Dan krijg je hier op GoT zo'n mooi login schermpje waarbij je realtime kan inloggen..

Had ik ook, alleen bij die sessions is dat een tikkie lastiger :{

Ik bespeur hier een zekere mate van onethische logica.

Pagina: 1