Toon posts:

[PHP3] Inlogscherm ZONDER cookies/sessions

Pagina: 1
Acties:
  • 120 views sinds 30-01-2008
  • Reageer

Verwijderd

Topicstarter
Ik ben bezig met een inlogscherm voor mijn website (PHP/MySQL). Maar ik wil geen cookies gebruiken (te onveilig) en sessions kan ik niet gebruiken (ondersteunt m'n webhost niet).
Is het een gek idee om m'n hele website (memberarea) door één PHP-scriptje te laten genereren? Dus steeds een nieuwe action naar dit script sturen die dan steeds iets anders uitvoert. Zodat ik namelijk steeds $uid en $passwd tot m'n beschikking heb.

Oh en dan nog iets. Om in te loggen op de MySQL-server heb ik in een aparte file de username en password staan, maar nu blijkt dat ik die file gewoon via m'n browser kan bekijken/downloaden. Dat mag natuurlijk niet. Hoe kan ik dit voorkomen?

Alvast bedankt voor de hulp!

Michiel

  • Exterazzo
  • Registratie: Mei 2000
  • Laatst online: 22-08 23:26

Exterazzo

Qeasy

Dat lijkt me wel een heeeeel omslachtige methode. Maar het is te doen. Maar iig heel omslachtig :)

Audentia


Verwijderd

Vrep: Ik ben bezig met een inlogscherm voor mijn website (PHP/MySQL). Maar ik wil geen cookies gebruiken (te onveilig) en sessions kan ik niet gebruiken (ondersteunt m'n webhost niet).

Wat is er onveilig aan cookies? (Behalve dat ze te spoofen zijn, maar je kan een password ook kraken, dus dat maakt het verschil niet.)

Is het een gek idee om m'n hele website (memberarea) door één PHP-scriptje te laten genereren? Zodat ik namelijk steeds $uid en $passwd tot m'n beschikking heb.

En die komen waar vandaan? (Gokje: Apache authentication.)

Om in te loggen op de MySQL-server heb ik in een aparte file de username en password staan, maar nu blijkt dat ik die file gewoon via m'n browser kan bekijken/downloaden. Dat mag natuurlijk niet. Hoe kan ik dit voorkomen?

Onder je web root zetten.

Verwijderd

Topicstarter
De vraag is niet of cookies wel of niet veilig zijn. De vraag is of het in één php-script ook kan. Ik heb namelijk niet zo heel veel te melden op deze site. En met include/require kom je ook een heel eind.

Dank je wel voor de tip over de config file.

update:
ik heb nu met één enkele file alle mogelijke acties afgevangen. Het kan dus. Wat ik me nu afvraag is of het veilig is.
Kàn iemand aan de variabelen $uid of $password komen?

  • Le Mol
  • Registratie: April 2000
  • Niet online
Die config-file, zet ik altijd gewoon in de webdir, en dan noem ik het setup.php en daar staat dan bijvoorbeeld in:
code:
1
2
3
4
5
<?
$server="xx";
$passw="";
$user="";
?>

en in een browser zie je echt niets hoor! (er valt immers niets te tonen voor php!)

Logic brings you from a to b, your imagination can bring you anywhere


  • thijsc
  • Registratie: Augustus 2000
  • Laatst online: 22-12-2023
Om dat bestand te verbergen kun je hem voor de zekerheid .naam noemen.

  • SiliconError
  • Registratie: Januari 2000
  • Laatst online: 29-10-2025

SiliconError

:(){ :|:& };:

Als je het pwd doorstuurt als variabele doe het dan veilig :)
md5 het ofzo.
kun je met cookies ook doen, lijkt me handiger, maar dat was niet de vraag.
Wat je wilt doen lijkt me wel mogelijk

  • Tuinhark
  • Registratie: April 2000
  • Laatst online: 22-08 20:24

Tuinhark

Retro

Je kunt natuurlijk ook altijd zelf sessie support gaan bouwen met normale cookies + MySQL DB. :)

:Y)

  • chem
  • Registratie: Oktober 2000
  • Laatst online: 04-08 07:59

chem

Reist de wereld rond

als je geen "driemaal is uit" techniek hanteert KAN iemand achter de uid/pwd komen door domweg eindeloos te proberen (hier zijn scriptjes voor met 100,000 passwords of meer)

anders moet je mensen na 3 pogingen bannen (op IP basis) oid...

Klaar voor een nieuwe uitdaging.


Verwijderd

Topicstarter
Oke, bedankt. Dat zal ik zeker inbouwen. En misschien toch een sessie via MySQL DB aanmaken.

  • Tuinhark
  • Registratie: April 2000
  • Laatst online: 22-08 20:24

Tuinhark

Retro

Check dan www.hotscripts.com :)

:Y)

Verwijderd

Volgens mij is die 3x fout methode niet echt nodig hoor. Als je een voor een moet gaan proberen zijn er dus (bij een normaal pw van 6 chars) 36^6=2176782336 mogelijkheden...

  • brammetje
  • Registratie: Oktober 2000
  • Laatst online: 12-01-2025
Op vrijdag 09 februari 2001 21:12 schreef _Gilles_ het volgende:
Volgens mij is die 3x fout methode niet echt nodig hoor. Als je een voor een moet gaan proberen zijn er dus (bij een normaal pw van 6 chars) 36^6=2176782336 mogelijkheden...
ja, maar de meest passes zijn niet geheel random, en dan vallen er veel mogelijkheden af...

Verwijderd

Topicstarter
"3x is uit" is misschien niet echt nodig, maar ik neem graag het zekere voor het onzekere in dit geval. Is namelijk best belangrijke data (niet forumpje ofzo).

Verwijderd

Euh, waarom gebruik je niet gewoon de authenticatie van je webserver? Dan beveilig je gewoon het hele directory. En waarom verander je niet gewoon de rechten op dat ene filetje met de passwords - zodat "everyone" niet erbij kan? (chmod, en zo). *D
Je kunt wel een php pagina maken die dynamisch alles genereert, en je kunt ook sessies bijhouden in een MySQL tabelletje, keurig functies aanroepen uit andere PHP scripts, etcetera... maar ik kan je uit ervaring vertellen dat je dan wel een paar maanden aan het programmeren bent :9

  • Fox|IA
  • Registratie: Augustus 1999
  • Laatst online: 30-11-2022

Fox|IA

Official Bastard

Le Mol schreef op 08 February 2001 @ 20:14:
Die config-file, zet ik altijd gewoon in de webdir, en dan noem ik het setup.php en daar staat dan bijvoorbeeld in:
code:
1
2
3
4
5
<?
$server="xx";
$passw="";
$user="";
?>

en in een browser zie je echt niets hoor! (er valt immers niets te tonen voor php!)
Voeg eventueel nog toe:
if (ereg("setup.php", $_SERVER['PHP_SELF'])
header("Location: index.php");

Verwijderd

Fox schreef op 07 mei 2003 @ 16:25:
[...]

Voeg eventueel nog toe:
if (ereg("setup.php", $_SERVER['PHP_SELF'])
header("Location: index.php");
2 jaar geleden ging dat nog niet met $_SERVER ;)

En ik zet zo m'n vraagtekens bij de punt in jouw regular expression. Okay, het werkt, maar het is niet exact wat je eigenlijk wilt :)
En na de location header wel even het script stoppen misschien:
exit();
Pagina: 1