Come hackerare un sito
Da un po' di tempo ti stai occupando di un sito Web, frutto di una progettazione e di uno sviluppo durati molti mesi. Ti servirebbe però chiarire un punto fondamentale che riguarda la sicurezza dello stesso: come è possibile far sì che il portale non venga attaccato da qualcuno che, armato delle peggiori intenzioni, potrebbe vanificare il tuo duro lavoro? Se è questo ciò che ti stai domandando e le tue conoscenze sull'argomento sono ben poche, direi che sei arrivato nel posto giusto.
Ebbene, quando i malintenzionati si domandano come hackerare un sito, purtroppo sono diverse le strade a loro disposizione. Conoscere i sistemi più comuni che i criminali informatici usano per violare portali Web di vario tipo può dunque aiutarti anche a prevenire situazioni spiacevoli prima che queste accadano (augurandosi ovviamente che ciò non avvenga mai). La conoscenza è infatti sempre importante per capire come agire in questi casi.
Ecco allora che proseguire nella lettura dell'approfondimento in questione ti aiuterà non solo a venire a conoscenza a livello generale dei metodi utilizzati dai malintenzionati in questo caso (ovviamente solo a scopo di protezione del proprio portale, quindi non mi assumo nessuna responsabilità circa utilizzi scorretti di quanto citato, anche perché si tratta esclusivamente di informazioni generiche). Detto questo, a me non resta che augurarti buona lettura e farti un grosso in bocca al lupo per tutto!
Indice
- Informazioni preliminari
- Come fanno i malintenzionati a hackerare un sito
- Come proteggere il proprio sito
Informazioni preliminari
Prima ancora di analizzare la questione e di illustrarti alcune tecniche utilizzate dai criminali informatici in questo campo, è bene che tu conosca il significato di determinati termini strettamente collegati all'argomento che mi accingo a trattare. Di seguito trovi dunque un rapido riassunto.
- Backdoor: è un canale d'accesso che i criminali informatici lasciano aperto di proposito, in modo da poter rientrare nel server Web anche dopo l'attacco, con semplicità. Backdoor significa, letteralmente, “porta sul retro”.
- Botnet: è il termine tecnico per definire un insieme di computer controllati da un “server di controllo”, il quale li induce a compiere una serie di operazioni per proprio conto, senza che il legittimo proprietario di ciascuna macchina ne sia a conoscenza.
- Bug: è il termine tecnico usato per definire un errore di programmazione di un software che, in qualche modo, conduce a conseguenze sul suo funzionamento. Non sempre i bug sono strettamente collegati alla sicurezza ma, ahimè, non è raro ritrovarsi con problemi di questo tipo. Generalmente, i bug vengono risolti dagli aggiornamenti.
- CMS: acronimo di “Content Management System”, questo termine si riferisce a un insieme di programmi e tecnologie in grado di semplificare notevolmente la realizzazione di contenuti dinamici, come, appunto, i siti Web. Un esempio tra i più famosi è WordPress.
- Deface: è il nome di una particolare pratica attuata dai criminali informatici, che consiste nel violare un sito e stravolgerne del tutto la home page o, peggio ancora, l'intero contenuto.
- Exploit: è il termine tecnico usato per denotare un programma progettato con lo scopo di sfruttare un bug, a pieno vantaggio del criminale informatico che lo sviluppa (o che lo utilizza).
- Firewall: si tratta del sistema di sicurezza che protegge i dati in transito da e verso gli apparecchi informatici (server, computer, router, smartphone, tablet e così via). Può essere di tipo software, oppure hardware.
- Patch: con questo termine si identificano le soluzioni rilasciate dai programmatori mirate alla risoluzione dei bug. In genere, le patch vengono rilasciate sotto forma di aggiornamento ma, in alcuni casi, vengono applicate manualmente.
- 0-day: si definiscono con questa parola gli exploit di “primo pelo”, quelli non ancora noti alle software house che lavorano nell'ambito della sicurezza, né ai progettisti dei software coinvolti. In alcuni casi, gli 0-day possono rivelarsi estremamente più dannosi degli exploit comunemente conosciuti.
- DDoS: un attacco Distributed Denial of Service punta a inondare un server/un sito Web di richieste, in modo da bloccarne il normale funzionamento. Si tratta di un tentativo ostile che prevede il generare un enorme volume di traffico dannoso, sfruttando anche botnet.
Al netto dei termini, i sistemi utilizzati dai malintenzionati possono essere molteplici ma hanno quasi sempre un punto in comune: richiedono un profondo studio e un'attenta analisi del “bersaglio” dell'attacco. Dunque, al contrario di quanto si potrebbe pensare, hackerare un sito Web non è un'operazione immediata, tantomeno semplice. Oltretutto, come capirai a breve, il successo dei criminali informatici è, nella maggior parte dei casi, riconducibile a qualche disattenzione di chi lavora in questo ambito. In ogni caso, in questa sede sarà mia cura esporti, a puro scopo informativo, alcune delle più conosciute tecniche di hacking messe in pratica in modalità remota, cioè senza avere accesso fisico al server “vittima” (cosa che, praticamente, non capita quasi mai).
Come fanno i malintenzionati a hackerare un sito
Come già accennato in precedenza e come avrai intuito dalle tante terminologie utilizzate in questo campo, quando i malintenzionati si chiedono come hackerare un sito, purtroppo sono diverse le strade che possono tentare di seguire. Al contrario di quanto si possa pensare, tra l'altro, i metodi più insidiosi a volte possono essere quelli che a prima vista potrebbero sembrare “banali”.
Social engineering
In un mondo iperconnesso e con tante persone coinvolte in un singolo progetto, è un attimo avere delle disattenzioni o comunque dei momenti di debolezza. Purtroppo anche i malintenzionati sono ben a conoscenza di questa situazione e infatti tentato spesso di mettere in atto delle tecniche di social engineering, ovvero di ingegneria sociale. Queste prevedono, per farla breve, il raggiro dell'ignara vittima.
Se nel mondo reale una tipica tecnica di ingegneria sociale consiste in dei malintenzionati che fingono un'urgenza per farsi prestare un computer e accedere così in modo fraudolento ai dati in esso contenuti, installando anche software spia, sul Web è più probabile incappare in criminali che tentano di fingersi una realtà credibile, per esempio il webmaster o il datore di lavoro, per farsi dare le credenziali dalla vittima, per esempio, via e-mail. Attenzione, insomma, a strane richieste che sembrano provenire anche da persone che si conoscono, visto che dall'altra parte potrebbe esserci qualcuno che sta tentando di generare un “senso d'urgenza” per farsi consegnare essenzialmente le chiavi del portale.
Dato che, soprattutto nell'era dell'intelligenza artificiale, questioni di questo tipo sono all'ordine del giorno, è importante mantenere sempre alta l'attenzione, nonché informare i propri dipendenti e collaboratori dell'importanza di tali questioni.
Vulnerabilità dei server
Al netto delle questioni relative alle fragilità umane, i siti Web sono delle entità informatiche e, in quanto tali, sono composti da file, che vengono generati e gestiti da appositi programmi in esecuzione su un computer (in questo caso, si parla di server Web). Il lavoro di tali macchine non si limita alla mera esecuzione del server Web, anzi: per un corretto funzionamento dell'intero sistema è necessario tenere in esecuzione decine di software contemporaneamente, scambiando di continuo dati con il mondo esterno.
Purtroppo, è sufficiente anche un singolo bug su uno degli applicativi eseguiti per mettere in pericolo l'integrità dei dati ospitati sul server, oltre che del server stesso: le vulnerabilità più sfruttate riguardano in genere il sistema operativo in uso sul server, i suoi componenti fondamentali o, meno spesso, i driver di periferica dell'hardware. A dispetto di ciò, progettare l'attacco ai danni di un server fortunatamente non è semplice: bisogna analizzare il comportamento dei programmi in esecuzione, insieme con gli eventuali bug presenti negli stessi e, per riuscirci con successo, è indispensabile bypassare le restrizioni di sicurezza imposte dai meccanismi di protezione in uso, tra cui il firewall.
Laddove il server dovesse cadere effettivamente vittima di un attacco, attraverso uno 0-day o un exploit noto, i criminali riescono in genere a forzare l'esecuzione di codice arbitrario sullo stesso, che potrebbe dar luogo a diverse conseguenze non gradevoli: lo stravolgimento dei dati sul server Web, la creazione di una backdoor per l'accesso futuro, l'aggiunta a una botnet già esistente o altre cose di questo tipo. Nel peggiore dei casi, i malintenzionati potrebbero dar luogo a una vera e propria fuga di dati.
Vulnerabilità dei componenti installati
Come puoi facilmente immaginare, lo stesso discorso visto nel paragrafo precedente non è valido soltanto per il sistema operativo in esecuzione su di un server Web, ma anche per l'intero parco di programmi installati nello stesso!
Una singola vulnerabilità in un qualsiasi software (anche nel gestore del database o nel sistema di compressione delle immagini, per intenderci) potrebbe essere sufficiente per spianare la strada a un criminale informatico, consentendogli di prendere il controllo del programma, di accedere ai file e alle cartelle collegate al sito o, peggio ancora, di stravolgere il comportamento dell'intero server Web.
Vulnerabilità dei sistemi di autenticazione e data breach
Un altro usato vettore d'attacco usato dai criminali informatici più abili consiste nello sfruttare le vulnerabilità dei sistemi di autenticazione in uso per i vari siti Web. Tanto per farti qualche esempio, l'uso di un protocollo obsoleto, di un algoritmo di cifratura violato o, peggio ancora, uno scambio di password in modalità non protetta, potrebbero consentire a un criminale di appropriarsi delle credenziali di amministrazione del portare o, peggio ancora, fornirgli pieno accesso ai dati presenti nella cartella del sito Web e/o all'interno database.
Nei casi più comuni, l'impiego di tale strategia d'attacco comporta il deface del sito Web, ossia lo stravolgimento completo dei contenuti della home page o delle altre pagine sul sito. Laddove sul portale fosse in uso un sistema di salvataggio dei dati più usati in memoria (comunemente denominato sistema di caching), un criminale potrebbe avere accesso anche a questi ultimi, con conseguenze devastanti: la cache di un portale Web, in alcuni casi, potrebbe infatti contenere i dati sensibili relativi agli utenti che vi hanno avuto accesso di recente.
Una delle migliori tecniche di difesa per scongiurare questa eventualità consiste nel controllare che i dati in transito da e per il sito Web siano opportunamente protetti con cifratura SSL, configurando il server per l'utilizzo del protocollo di connessione sicura HTTPS. Inoltre, se il sito contiene pagine di login, bisogna verificare costantemente che esse funzionino in modo corretto, specie dopo aver agito sulla cache, aver aggiornato il codice di una o più parti del portale/CMS o aver portato a termine altre operazioni di questo tipo.
Naturalmente, bisogna proteggere tutti gli accessi al sito (inclusi eventuali account amministrativi) con delle password sicure e molto complesse da indovinare. Non credo di dovermi dilungare di più su questo aspetto: dovrebbe essere, di fatto, l'abc della vita su Internet. Tieni contro, tra l'altro, che al giorno d'oggi purtroppo la circolazione delle credenziali d'accesso può passare anche per fughe di dati relative a database di terze parti (questione nota anche come data breach), visto il numero di servizi che utilizziamo in contesti simili. Maggiori dettagli qui.
Altre vulnerabilità sfruttate dai malintenzionati
Giunto a questo punto della guida, avrai ben compreso che in un contesto simile sono davvero tante le tecniche messe in atto dai malintenzionati, in una situazione che tra l'altro è in continua evoluzione (visto che i cybercriminali ne tentano sempre di nuove).
Tra le altre questioni da tenere in considerazione, per esempio, ci sono le vulnerabilità relative a CMS e plugin. Come ti ho spiegato nel capitolo iniziale di questa guida, un CMS è un sistema che consente di creare, aggiornare e gestire portali Web di vario tipo, sia semplici che complessi, senza avere particolari conoscenze in termini di programmazione. Tanto per farti un esempio, WordPress è un famosissimo CMS usato per realizzare siti dinamici, blog e altri portali di vario tipo. Anche i CMS sono programmi e, per tale motivo, possono essere soggetti a bug e malfunzionamenti di vario tipo, che possono condurre a conseguenze anche sgradevoli.
Per esempio, i problemi di sicurezza dei CMS open source vengono molto spesso “stanati” e resi noti dalla comunità di utenti: se è vero che ciò, da un lato, consente agli sviluppatori di sviluppare rapidamente patch di sicurezza, è altrettanto vero che, sul frangente opposto, trova i criminali informatici pronti a creare exploit in grado di sfruttarli. Exploit di questo tipo, purtroppo, vengono spesso usati (con discreto successo) sui siti realizzati tramite CMS non aggiornati, con tutto ciò che ne comporta.
Il discorso fatto poc'anzi vale anche per i plugin installati nei vari CMS: basta un bug all'interno di un componente di questo tipo per compromettere la stabilità del sito e del sistema di gestione dei contenuti, anche se quest'ultimo, nativamente, è esente da bug.
Come proteggere il proprio sito
Dopo aver trattato le principali tipologie di minacce informatiche che possono coinvolgere i siti Web, direi che è giunto il momento di comprendere il più possibile come proteggere il proprio portale da questa tipologia di operazioni malevole. D'altro canto, per quanto l'argomento sia vasto e in continua evoluzione, ci sono alcune best practice che puoi tenere a mente: le trovi di seguito.
Mantere tutto aggiornato
Un'accortezza sempre valida in ambito di sicurezza informatica è relativa al mantenere tutto aggiornato. Come accennato in un precedente capitolo, infatti, possono esserci delle vulnerabilità relative al CMS (ovvero il sistema di gestione del sito Web) o come accade più spesso ai plugin installati (penso, per esempio, a quanto può accadere sul popolarissimo WordPress).
Ecco allora che tenere d'occhio la questione su questi fronti, effettuando gli update quando disponibili, non ti consente solo di accedere a eventuali nuove funzionalità ma anche di mantenere il sito Web maggiormente al sicuro. D'altro canto, come già detto, un portale non aggiornato può risultare una “preda” per gli hacker, visto che la presenza di falle di sicurezza e bug è dietro l'angolo.
Per saperne di più sulla questione e comprendere al meglio l'importanza degli aggiornamenti in questo campo, ti consiglio di dare un'occhiata, per esempio, alla documentazione di WordPress, valutando anche le possibilità offerte dalle opzioni relative agli update automatici.
Formare il personale
Una questione spesso sottovalutata nell'era dell'intelligenza artificiale e delle minacce informatiche dietro l'angolo è relativa alla formazione del personale.
Visto infatti il diffondersi delle tecniche di ingegneria sociale, spesso più insidiose di quanto si possa pensare, è importante che i propri dipendenti e collaboratori, anche in smart working, siano a conoscenza dei pericoli del Web. Mi riferisco, per esempio, a tecniche di phishing e altre operazioni malevole che potrebbero mettere a rischio informazioni importanti come le credenziali d'accesso al portale.
Anche il personale dovrebbe sapere, insomma, di evitare strani link e allegati e in generale di mantenere alta l'attenzione (prestando attenzione anche, per esempio, alle fatture false che possono circolare, che potrebbero in realtà risultare “un'esca” per tentare di far scaricare un allegato malevolo, visto che ormai i malintenzionati le tentano tutte per cercare di generare un “senso d'urgenza”, ma in questi casi bisogna sempre ragionare a mente fredda).
Formando il personale su questa tipologia di minaccia e sulle tante altre questioni di cybersecurity, campo in continua evoluzione, sta diventando sempre più importante in un mondo iperconnesso come quello in cui viviamo. Se sei interessato ad approfondire maggiormente questo campo, potrebbe farti piacere partire dando un'occhiata alla mia selezione per quel che riguarda le migliori certificazioni in ambito di cybersecurity.
Tenere monitorate le fughe di dati
In ottica di sicurezza generale, al netto del mantenere tutto aggiornato e rimanendo anche in tema di formazione del personale, potrebbe interessarti prestare attenzione alle fughe di dati, conosciute anche come data breach.
Certo, in questo caso non si fa riferimento a un attacco diretto al tuo sito Web o alla tua infrastruttura, bensì a malintenzionati che cercano di reperire informazioni sensibili collegati alla tua attività sul Web ottenendo accesso in modo malevolo a database di aziende di terze parti associate ai servizi che sei solito utilizzare.
Capisci bene, per esempio, che se e-mail aziendali o altre informazioni finiscono, per esempio, sul Dark Web, si potrebbe informare il personale al fine di fargli prestare particolare attenzione a strane comunicazioni, nonché eventualmente di prendere le dovute precauzioni (a partire dal cambio delle password scegliendone di più sicure). Come fare per sapere se un-email è finita “nel giro dei malintenzionati”, anche sul Dark Web? Sono portali come Data Leak Checker di Surfshark e Have I Been Pwned a permettere, semplicemente digitando il proprio indirizzo e-mail e seguendo le indicazioni a schermo, a comprendere qual è la situazione.
Chiaramente il fatto che un'email sia finita in un data breach non significa necessariamente che sia stata compromessa, anche perché i sistemi di protezione in ottica password al giorno d'oggi sono fortunatamente avanzati, ma essere a conoscenza della situazione può aiutare a comprendere meglio la situazione (e magari a capire meglio da dove provengono le strane comunicazioni dell'ultimo periodo). Per approfondire al meglio la questione, ti consiglio in ogni caso di fare riferimento alle mie guide specifiche relative a come scoprire i data leak gratis e come proteggersi dalle fughe di dati.
Altre questioni da tenere in considerazione
In conclusione, al netto delle questioni di sicurezza principali indicate finora, sono tante le valutazioni da fare, anche in ottica webmaster. A tal proposito, ti puoi informare in merito a come difendersi dagli attacchi DDoS o questioni simili, approfondendo, per esempio, i metodi di prevenzione consigliati da Cloudflare o comunque effettuando delle ricerche specifiche su Google. Un'altra fonte da tenere d'occhio è Google Search Central, ma se gestisci un sito Web sicuramente sarai già a conoscenza di questa tipologia di questioni di base (compreso quanto relativo a plug-in per la sicurezza come BulletProof Security, protocollo HTTPS e così via).
Al netto di questo, in ottica di protezione dei computer aziendali utilizzati dai dipendenti e dai collaboratori, potresti reputare interessante valutare, anche solo in termini di consigli, l'utilizzo di soluzioni antivirus avanzate e/o di servizi VPN con funzioni di sicurezza integrate. Per esempio, potrebbe interessarti dare un'occhiata all'ormai particolarmente popolare NordVPN, che oltre a essere un valido servizio VPN per la protezione della privacy online (la mia recensione qui) integra anche una funzione chiamata Threat Protection che si occupa di bloccare, per esempio, gli URL infetti da malware, scansionando inoltre i file in fase di download. Potresti insomma vedere questo tipo di soluzione come utili per proteggere i PC dei singoli, evitando il più possibile che vengano scaricati file malevoli.
Altre soluzioni simili che puoi valutare, soprattutto in ottica privacy, sono poi Surfshark (puoi trovare la mia valutazione qui), ExpressVPN (in grado di garantire una protezione a 360 gradi senza spendere poi così tanto) e PrivadoVPN (puoi approfondire questo servizio tramite il mio tutorial generale su come funziona PrivadoVPN). Fatto sta che, come avrai intuito, mantenere il più al sicuro possibile anche i computer utilizzati dai dipendenti non è una cosa da sottovalutare in questo contesto.
Se vuoi saperne di più in generale, dunque, potrebbe farti piacere approfondire anche i miei tutorial che riguardano come proteggere il computer e come blindare il PC, nelle quali ho spiegato in modo più approfondito cosa si può fare in questi casi.

Autore
Salvatore Aranzulla
Salvatore Aranzulla è il blogger e divulgatore informatico più letto in Italia. Noto per aver scoperto delle vulnerabilità nei siti di Google e Microsoft. Collabora con riviste di informatica e cura la rubrica tecnologica del quotidiano Il Messaggero. È il fondatore di Aranzulla.it, uno dei trenta siti più visitati d'Italia, nel quale risponde con semplicità a migliaia di dubbi di tipo informatico. Ha pubblicato per Mondadori e Mondadori Informatica.