Un’altra applicazione pratica del nostro amato PHP. Una piccola utility per caricare in upload sul nostro server dei file. L’esercizio prevede una pagina HTML con la form per il caricamento, un piccolo javascript fa un controllo semplice e pratico che si stia inviando un file. Lo script PHP invocato controlla prima che l’estensione sia supportata e con poche istruzioni carica il file con un feedback esaustivo per l’utente. Va creata una cartella Upload nella cartella dei nostri file php ed html. Se siete su Linux, vanno assegnati i permessi corretti alla nostra directory di upload con un comando simile a chmod -R 777 /var/www/…/Upload sostituendo ovviamente il percorso corretto.
PHP
Esercizi, esempi e guide su PHP con applicazioni riferite al corso di Sistemi & Reti e TPSIT degli istituti tecnici piano Informatica
Il login debole e forte in PHP con le funzioni di hash
Negli esempi iniziali visti col PHP e il nostro database, le password compaiono sempre in chiaro come campi di testo all’interno delle nostre tabelle di anagrafica. Questa è una pratica sconsigliata nel mondo reale. Abbiamo già visto che una debolezza nei controlli SQL Injection permetterebbe di visualizzare dati sensibili e le password sono estremamente importanti! Più in generale, un backup sbagliato, un occhio non autorizzato al nostro database sarebbe pericolosissimo. Ma del resto non serve a nessuno che quelle password siano salvate in chiaro, a noi basta una sua versione incenerita!
Captcha e Immagini generate da PHP
Uno degli aspetti di sicurezza di cui non ci rendiamo conto, è che con linguaggi come Python e simili è molto facile automatizzare delle operazioni con cicli infiniti sui siti web, come riempire delle form di registrazione in automatico per creare utenti fasulli, cliccar in automatico su pubblicità per trarre profitti, piuttosto che provare degli accessi su login con attacchi a forza bruta. Ecco perché in giro per il web ci imbattiamo spesso nei captcha, piccoli indovinelli da risolvere per dimostrare all’applicativo web che stiamo usando che siamo umani.
Esempio di SQL Injection in PHP (parte 2)
Un altro esempio sull’argomento delle SQL Injection dopo l’articolo gia visto precedentemente con la form di login che potete rileggere qui. Questa volta invece di compilare la form in modo malevolo, sfruttiamo una possibile vulnerabilità del PHP: il passaggio di parametri attraverso URL e la funzione GET[].
Esempio di SQL Injection in PHP (parte 1)
Le SQL Injection sono un genere di attacco informatico molto semplice ma potenzialmente molto dannoso. Si basa su una vulnerabilità del codice ormai nota e nei sistemi software complessi quasi del tutto debellata a patto che lo sviluppatore abbia un pizzico di esperienza sull’argomento.