LFI – Come individuare e proteggersi dalla vulnerabilità Local File Inclusion Part.2

Nella prima parte dell’articolo ho spiegato cosa è la vulnerabilità LFI soffermandomi anche su alcune tecniche di protezione a livello di programmazione, mentre in questo post affronterò l’aspetto sistemistico. Per circoscrivere l’area di lavoro di un applicativo web, e quindi di un eventuale Local File Inclusion, è possibile ricorrere almeno a tre soluzioni: Utilizzo della funzione php open_basedir Configurazione di un ambiente chroot per Apache Applicazione delle regole di selinux per Apache PHP openbasedir anti LFI La funzione php open_basedir permette di limitare l’area d’azione di un applicativo ed è possibile configurarla a livello globale o tramite virtualhost specifici....

June 26, 2014 · 4 min · claudio

Filtri command injection: escapeshellarg escapeshellcmd

Proteggere i propri applicativi php è importantissimo sia, per l’integrità dei dati che del sistema. Nello scorso articolo ho fatto una panoramica sulla vulnerabilità Local File Inclusion, mentre oggi lo scopo dei test sarà quello di applicare al codice php dei filtri command injection, ovvero normalizzare le richieste in input eliminando la possibilità di eseguire comandi non autorizzati. Esempi di command injection Qui di seguito riporto un esempio di script php (filter-injection....

June 14, 2014 · 3 min · claudio

LFI – Come individuare e proteggersi dalla vulnerabilità Local File Inclusion Part.1

LFI – Introduzione Analizzando pagine web dinamiche di vari siti o ad esempio dei CMS (WordPress, Drupal, Joomla) è possibile notare come gli sviluppatori ottimizzino il codice distribuendolo su più pagine. In questo modo i programmatori evitano di creare file (ad esempio php) troppo grandi e di conseguenza meno chiari/flessibili. Per incorporare il contenuto di una pagina php dentro l’altra, vengono utilizzate le funzioni: include(‘pagina2.php’); include_once(‘pagina2.php’); require(‘pagina2.php’); require_once(‘pagina2.php’); Cosa può accadere se il nome della pagine inclusa viene richiamata col metodo GET o POST senza l’inserimento di adeguati filtri?...

June 11, 2014 · 6 min · claudio

Come installare Java su CentOS 6 (JDK)

Download ed installazione Java (ultima versione) Aprire il browser e inserie l’indirizzo: http://www.oracle.com/technetwork/java/javase/overview/index.html Cliccare sul bottone Download: Cliccare sull’icona Download:   Selezionare il bottone ratio “Accept License Agreement“: Scaricare il pacchetto rpm a seconda dell’architettura del proprio sistema: jdk-8u5-linux-i586.rpm jdk-8u5-linux-x64.rpm Copiare il file rpm tramite scp client (se la macchina CentOS 6 è remota). Con i privilegi di root installare il pacchetto rpm (nel mio caso i586) :...

May 22, 2014 · 2 min · claudio

Come installare VMware Player su Linux

La seguente procedura è stata testata sia su CentOS 6 che Ubuntu 14.04, ma è applicabile anche ad altre distribuzioni. Sul sistema linux dovrà essere installato l’ambiente grafico, in caso contrario potete far riferimento al mio articolo che spiega come installarlo sulle distribuzioni CentOS: http://www.homelab.it/index.php/2014/05/21/come-installare-lambiente-grafico-su-linux-centos-in-tre-passi/ Download VMware Player Per prima cosa scariscari la versione più aggiornata di VMware Player dal sito ufficiale: http://www.vmware.com/ Nel menu Downloads è possibile cliccare la voce “Player“:...

May 21, 2014 · 2 min · claudio