Beveiliging in PHP de Basis

Door Bo az, 20 jaar geleden, 3.167x bekeken

Edit (26-04-2006):

Deze tutorial sloeg werkelijk nergens op zoals uit de comments ookal beleek, gelukkig heb ik in de tussen tijd ook nog wat bijgeleerd en de tutorial eens van een update voorzien.

Gesponsorde koppelingen

Inhoudsopgave

  1. Includes
  2. MySQL Injection
  3. Error afhandeling
  4. Externe variabelen

 

Er zijn 12 reacties op 'Beveiliging in php de basis'

PHP hulp
PHP hulp
0 seconden vanaf nu
 

Gesponsorde koppelingen
Mitch X
Mitch X
20 jaar geleden
 
0 +1 -0 -1
Sommige dingen moet je toch nog eens nalopen :)
Arend a
Arend a
20 jaar geleden
 
0 +1 -0 -1
Hmm, dr worden nogal wat open deuren met een stormram tegemoet gezien.
Arend a
Arend a
20 jaar geleden
 
0 +1 -0 -1
De hoofdgedachten zijn dus:
1: Sanatizen,
2: sanatizen,
3: laat ze je tabellen niet weten, wie weet wat ze verzinnen.
4: onzin voorbeeld waarbij je zomaar iedereen dingen uit een tabel laat verwijderen.

Ik stel voor dat je nog eens ingaat op het netjes sanatizen van je data. Daar worden nog best verstandige dingen gezegt; alleen door twee niet al te sterke voorbeelden. 3 en 4 vind ik al weer van een andere orde.
Mitch X
Mitch X
20 jaar geleden
 
0 +1 -0 -1
Hmmz, pagina 1 vind ik bv onzin.
Je laat toch niet zomaar een pagina includen?
Je zou het sowieso met een switch moeten doen:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
<?
switch($_GET['page'])
{
  case
"home":
  include("home.php");
  break;
  default:

  include("home.php");
}

?>

Dan kan niemand iets anders opgeven want dan include ie gewo0n home.php :)
Arnoldxp
arnoldxp
20 jaar geleden
 
0 +1 -0 -1
ik gebruik zelf wel het voorbeeld uit pagina vier. met de verwijder id methode. dit gaat echter om berichten waarbij hij eerst checkt of het bericht van hem is. hij kan dus alleen zijn eigen berichten deleten...


20 jaar geleden
 
0 +1 -0 -1
Ik gebruik volgens mij nog een hele oude methode, maar ik vind het betrouwbaar genoegt:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
<?php
if($pagina == "home" || $pagina == "") { include"home.php"; }
if($pagina == "hallo") { include"hallo.php"; }
?>

Maar ik weet niet of hier ook nog risico's aan verbonden zitten, weet iemand dit?
Bo az
Bo az
20 jaar geleden
 
0 +1 -0 -1
je doet eigleijk het zelfde als:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
<?
switch($_GET['page'])
{
  case
"home":
  include("home.php");
  break;
  default:

  include("home.php");
}

?>


maar dan een beetje fout :) , je gebruikt steeds
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<? if() ?>

maar je moet doen:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
<?
if()
elseif()
else
?>


:)

en je moet niet
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<? $pagina ?>

maar
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<? $_GET["pagina"] ?>
of
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<? $_POST["pagina"] ?>
gebruiken :)
De VeeWee
de VeeWee
20 jaar geleden
 
0 +1 -0 -1
ik gebruik pagina 4 ook maar je kan inderdaad slechts enkel op delete drukken als je aangemeld bent met de juiste bevoegdheden...

je kan misschien zeggen dat delen van deze tutorial slecht zijn en je het niet gebruikt maar als opeens je database eens weg zal je zeer blij zijn met deze tut!!!

Ik heb zonet al mijn paginas beveiligd met hulp van deze tut!
dank daarvoor ;)
Bjorn Vennema
Bjorn Vennema
20 jaar geleden
 
0 +1 -0 -1
wat jij op pagina 2 gebruikt vind ik persoonlijk een beetje raar.
wat ik geleerd heb (uit een boek) is:
$hyperlinks = strip_tags($hyperlinks);
Jos
Jos
19 jaar geleden
 
0 +1 -0 -1
# Externe variabelen:
POST vind ik niet echt veilig. Je kunt ook post commando faken. Net zo goed als get commando's.
Robert Deiman
Robert Deiman
19 jaar geleden
 
0 +1 -0 -1
Dat is zo, je kan alle variabelen checken, maar in combinatie met een check wat de locatie was waarvan de $_POST is verzonden, kan je al veel meer voorkomen.
Verder idd include is niet gevaarlijk, als je maar ervoor zorgt dat de mogelijkheden beperkt worden, dat kan je volgens mij het beste doen met een switch, of het voorbeeld van de else functies. Zo kan er NIETS anders worden gedaan dan dat jij wilt met die get. Anders werkt de pagina gewoon niet ;)
PHP hulp
PHP hulp
0 seconden vanaf nu
 

Gesponsorde koppelingen


19 jaar geleden
 
0 +1 -0 -1
Deze tutorial is een beetje outdated en klopt niet.

Om te reageren heb je een account nodig en je moet ingelogd zijn.

Inhoudsopgave

  1. Includes
  2. MySQL Injection
  3. Error afhandeling
  4. Externe variabelen

Labels

  • Geen tags toegevoegd.

PHP tutorial opties

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.