login  Naam:   Wachtwoord: 
Registreer je!
 Forum

veilig?

Offline superlol - 18/07/2007 22:21 (laatste wijziging 18/07/2007 22:23)
Avatar van superlolPHP interesse Hey

Ik wil dat mensen de url van mijn downloads niet kunnen achterhalen dus gebruik ik dit script :
  1. <?php
  2. if(file_exists("downloads8992/".base64_decode($_GET['id']))) {
  3. $file="downloads8992/".base64_decode($_GET['id']);
  4. $bn=explode("/", base64_decode($_GET['id']));
  5. $bneind=end($bn);
  6. header('Content-type: audio/mp3');
  7. header('Content-Disposition: attachment; filename="'.$bneind.'"');
  8. header('Content-Length: ' . filesize($file));
  9. readfile($file);
  10. } else {
  11. header("Location: http://www.google.nl");
  12. }
  13. ?>



Nu is mijn vraag, is dit gevaarlijk of dergelijke?
Kunnen bezoekers hiermee dingen doen waarvan ik liever niet heb dat ze het doen?


2.En nog een vraagje, als ik controleer of een artiest in de database voorkomt : script.php?artiest=Blaat , is het dan veilig om het zo te doen :
  1. mysql_query("SELECT * FROM artiesten WHERE naam='".mysql_real_escape_string($_GET['artiest'])."'");


Of moet ik ook nog HTMLENTITIES ofzo erdoorheen gooien?

Bvd!

16 antwoorden

Gesponsorde links
Offline Webtijn - 18/07/2007 22:58 (laatste wijziging 18/07/2007 23:00)
Avatar van Webtijn PHP interesse Het lijkt me dat 't bovenste niet veilig is, maar ik durf het niet met 100% zekerheid te zeggen..

Stel dat $_GET[ 'id' ] de waarde '../index.php' bevat en dat bestand bestaat ?
Offline superlol - 18/07/2007 23:37
Avatar van superlol PHP interesse Hoe kan ik dat dan beveiligen?
Offline Sitebase - 19/07/2007 02:08
Avatar van Sitebase PHP expert
Citaat:
Stel dat $_GET[ 'id' ] de waarde '../index.php' bevat en dat bestand bestaat ?


Dit gaat niets geven. Dit is zeker geen veiligheids probleem.
Offline superlol - 19/07/2007 02:20
Avatar van superlol PHP interesse Hi,

Jawel, ik heb het net geprobeer, ik kom zo in andere mappen, en kan de bestanden ook downloaden 
Offline marten - 19/07/2007 07:42
Avatar van marten Beheerder Haal je bestandsnamen door een md5, haal je gevraagde url door md5 zet .htaccess bestanden in de mappen waar ze niet mogen komen.
Offline Sitebase - 19/07/2007 12:00
Avatar van Sitebase PHP expert
WMP schreef:
[..quote..]

Dit gaat niets geven. Dit is zeker geen veiligheids probleem.


Ow idd, is wel niet echt veilig. Het was nogal laat gisteren.
Offline superlol - 19/07/2007 16:25
Avatar van superlol PHP interesse marten,
als ik de bestandnamen door de md5 haal, dan kan ik ze niet terugcoderen, dus kan ik de bestanden ook niet openen?
En met een .htaccess gaat ook niet werken volgens mij, want de bestanden staan buiten de root, dus daar kunnen de bezoekers zowieso niet bij zonder een PHP script..
Kan iemand nog verder helpen??
Offline Ultimatum - 19/07/2007 16:52
Avatar van Ultimatum PHP expert Tuurlijk kan je de bestandsnamen wel in md5 doen, en wie heeft het over terugcoderen?

Je zet de bestandsnamen gewoon neer en als je de md5 url gaat vergelijken met de bestandsnamen dan haal je de bestandsnamen door md5, niet eerder.
Offline superlol - 19/07/2007 17:03 (laatste wijziging 20/07/2007 21:03)
Avatar van superlol PHP interesse Hi,

bedankt voor je antwoord,
maar ik gebrijp het niet zo goed 
Kan je mss een voorbeeld geven aub?
Offline Webtijn - 20/07/2007 22:14 (laatste wijziging 20/07/2007 22:15)
Avatar van Webtijn PHP interesse
WMP schreef:
[..quote..]

Dit gaat niets geven. Dit is zeker geen veiligheids probleem.


Jazeker wel, daar ben ik van overtuigd.. Anders had ik het ook niet gepost ;)
Offline superlol - 21/07/2007 00:02 (laatste wijziging 21/07/2007 20:56)
Avatar van superlol PHP interesse Ja, ik heb het ook uitgeprobeerd, het is idd wel een veiligheidsprobleem,
maar weet iemand ook hoe ik het kan oplossen?
Offline Sitebase - 22/07/2007 02:44
Avatar van Sitebase PHP expert
Webtijn schreef:
[..quote..]

Jazeker wel, daar ben ik van overtuigd.. Anders had ik het ook niet gepost ;)


Eerst even alle reacties lezen Webtijn. Ik was ernaast, zoals je in mijn tweede reactie kan lezen.
Offline JBke - 22/07/2007 13:34
Avatar van JBke PHP gevorderde werk met mod_rewrite in .htaccess voor andere url's van je bestanden en idd met md5 is ook een mooie oplossing.
Offline superlol - 22/07/2007 23:35
Avatar van superlol PHP interesse Kunnen jullie dan misschien een voorbeeld geven van die MD5?
Offline wes - 23/07/2007 08:31 (laatste wijziging 23/07/2007 08:33)
Avatar van wes PHP interesse als je wil dat gebruikers alleen bij (bijv.) de pagina download.php die bestanden kunnen downloaden, en niet direct naar de url gaan. Dan kun je dit doen:

in de map downloads8992 maak je een .htaccess met daarin:

  1. order allow,deny
  2. deny from all


dus als de gebruikers dan toch nog achter de url komen, dan kunnen ze er weer moeilijker bij 

edit:

dan moet download.php dan natuurlijk niet in de map downloads8992 staan, want in die map moeten alle beveiligde downloads staan.
Offline superlol - 23/07/2007 15:28
Avatar van superlol PHP interesse Bedankt, maar wat doet die order allow, deny, deny from all eigelijk?
En kan iemand nog een voorbeeld geven van MD5 aub.?
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.212s