Caricamento file arbitrario, serve JPG come PHP

2

Sto provando casuali exploit WordPress più vecchi sul mio server locale, al momento sto cercando di farlo funzionare:

link

Non legge alcuna intestazione, sembra solo filtrare le estensioni dei file. Sono in grado di caricare file {Filename} .php.jpg come indicato nell'URL specificato sopra. Ma ciò che attirò la mia curiosità fu;

Plugin does not properly filter filetypes, which allows for the upload of filetypes in the following format: 
filename.php.jpg
Vulnerable hosts will serve such files as a php file, allowing for malicious files to be uploaded and executed.

L'apertura di JPG fa sì che il mio browser lanci un errore, non vedendolo come immagine valida.

Che mi porta alla mia domanda

Perché un server dovrebbe mai servire un JPG come PHP? (senza modificare .htaccess o php require ())?

    
posta Stella 06.06.2015 - 13:06
fonte

1 risposta

1

Questo comportamento non è direttamente collegato a questo exploit, ma da una configurazione del server Web debole.

Ad esempio:

  • Apache offre attraverso mod_mime la possibilità di servire file con più estensioni . Questa estensione è progettata per servire allo stesso modo file come welcome.html.fr o welcome.fr.html (cioè versione francese del file welcome.html ). Tuttavia può essere ingannato interpretare myuploadedfile.php.jpg come script PHP ...
  • Nginx offre un sistema di directory virtuale che consente di avere sottodirectory virtuali al di sotto di uno script dinamico. Ad esempio, un URL come /agenda.php/2015/june/6 eseguirà il file agenda.php (SCRIPT_FILENAME) con /2015/june/6 come parametro (PATH_INFO). Tuttavia potresti indurlo a eseguire il tuo file caricato (che non ha nemmeno bisogno di includere l'estensione .php ) usando un URL come /myuploadedfile.jpg/anything.php : sarà accettato come script PHP a causa dell'estensione .php , quindi l'URL sarà diviso in SCRIPT_FILENAME e PATH_INFO come descritto sopra, e infine l'ordine verrà dato all'interprete PHP per eseguire myuploadedfile.jpg di contenuto.
risposta data 06.06.2015 - 13:56
fonte

Leggi altre domande sui tag