Remote File Inclusion: differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
ZimbuBot (discussione | contributi)
m WPCleaner v2.03 - Disambigua corretto un collegamento - Vulnerabilità
Funzionalità collegamenti suggeriti: 1 collegamento inserito.
 
(Una versione intermedia di un altro utente non mostrate)
Riga 6:
Questo è un semplice esempio di un codice vulnerabile:
 
<sourcesyntaxhighlight lang=php>
<?php
$var = $_GET['var'];
include ($var);
?>
</syntaxhighlight>
</source>
 
con una conoscenza anche limitata del PHP è molto chiaro ciò che accade, andando su quella pagina e modificando la variabile $var (presente nell'[[Uniform Resource Locator|URL]]) a piacere si può vedere in azione il bug.
Riga 24:
 
==Come difendersi==
In genere quando si deve includere una pagina esterna nella propria [[applicazione web]] si vuole includere solo un insieme molto ristretto e numerato di possibili pagine, e non tutte le pagine web di questo mondo. Basta quindi fare uno switch-case sui possibili valori della variabile GET, e a seconda del valore includere la pagina desiderata, senza lasciare completamente libero arbitrio all'utente. Basta questa accortezza per evitare ogni tipo di vulnerabilità di RFI.
<nowiki>http://miosito.it/index.php?var=1</nowiki>
poi all'interno della pagina si effettua un controllo tra il possibile numero e il suo corrispettivo sito. Esempio:
 
<sourcesyntaxhighlight lang=php>
<?php
$var = $_GET['var'];
Riga 35:
else die('tentativo di intrusione');
?>
</syntaxhighlight>
</source>
 
[[Categoria:Sicurezza informatica]]