Come bucare un sito: le 10 falle più diffuse secondo OWASP

Come bucare un sito: le 10 falle più diffuse secondo OWASP

Tra le tante attività borderline che è possibile compiere sul web, sicuramente la possibilità di bucare un sito, di buttarlo giù o di prenderne il controllo è tra le più diffuse: qualsiasi attività online, del resto, dovrebbe tenere conto di questa eventualità ed attrezzarsi con le adeguate tecnologie di protezione. A tale riguardo, esiste un’organizzazione no profit che si chiama OWASP e che stila periodicamente dei report sulla sicurezza informatica e sulla protezione dei siti web, proponendo dei documenti standard di riferimento per la sicurezza in ambito WordPress e non solo. Esso rappresenta un focus molto dettagliato sui principali problemi che possono derivare dall’utilizzo di applicazioni su internet, ed include documenti ufficiali da parte di esperti del settore.

Che cos’è uno standard di sicurezza informatica

Si tratta di un livello ideale di protezione che OWASP invita tutte le aziende a seguire, per evitare problemi presenti e soprattutto in prospettiva, visto che ogni giorno i bollettini online di security sono invasi di segnalazioni di ogni tipo e, spesso, quando la segnalazione è uscita bisogna mettere una “pezza” in corsa e le patch a volte non sono neanche subito disponibili. Nonostante la sicurezza non sia per forza vista come una priorità dalle aziende (anzi, la pratica in larga scala dimostra l’esatto contrario), o comunque venga tirata in ballo quando i guai sono già presenti, il sito OWASP viene aggiornato periodicamente, e contiene informazioni di carattere generale sulla sicurezza informatica.

Come implementare la sicurezza sui siti web

La sicurezza di un sito passa in genere per due aspetti complementari:

  • un maggiore senso di sicurezza da infondere agli utenti, che dovrebbero evitare azioni azzardate su siti di dubbia qualità, soprattutto qualora offrano risorse free o promettano premi in denaro e simili;
  • un migliorato senso di responsabilità da parte dei siti delle aziende, che devono capire che un sito sicuro fa la differenza per l’ecosistema web ma anche a livello di branding, di sicurezza percepita e di numero di potenziali conversioni raggiungibili.

Molti attacchi, di fatto, possono ricadere in più di una categoria contemporaneamente, come successo ad esempio, un po’ di tempo fa, per OpenCart 1.5.6.4 che era affetto da Code Injection, SQL Injection, Path Traversal e Application Denial of Service.

Le recensioni dei migliori servizi

Hosting Serverplan
4.9 / 5 ( 14 voti )

Nel seguito, comunque, faremo riferimento a WordPress, come CMS tra i più utilizzati.

Tipi di attacchi informatici: Injection

La prima categoria da prendere in considerazione è la Injection: si tratta di un attacco text-based, ovvero basato sull’impartire impopriamente comandi e fare in modo di eseguire operazioni pericolose come quelle di cancellazione o modifica di dati sensibili.

Il modo migliore per capire se un’app di qualsiasi genere sia vulnerabile alla injection è quello di controllare che siano attivi degli opportuni filtri sui dati, e nel caso di SQL utilizzare prepared statement e stored procedure evitando query dinamiche. Questo viene fatto lato codice e, in genere, WordPress viene continuamente aggiornato da questo punto di vista: motivo per cui è fondamentale aggiornare sempre il CMS ed il vari theme e plugin all’ultima versione disponibile.

La vignetta seguente, ad esempio, ironizza su un attacco informatico di questo tipo: qualcuno ha provato a violare il database degli utenti inserendo come nome un comando MySQL per cancellare tutti i dati dal DB. Se il codice avesse previsto la sanificazione degli INPUT, come si dovrebbe sempre fare, non sarebbe mai successo.

Tipi di attacchi informatici: Broken Authentication

La Broken Authentication si basa su un furto di informazioni dall’esterno sfruttando tipicamente account rubati (come il leak di Gmail di qualche anno fa), cookie o session ID allo scopo di impersonificare altri utenti; in quest’ottica gli utenti più a rischio sono quelli che possiedono privilegi elevati, quindi gli utenti amministratori o super-amministratori, che diventano inconsapevoli vettori di attacco per minare la sicurezza e l’integrità dei dati.

Questo è un caso che avviene spesso in WP qualora, ad esempio, le credenziali di accesso di un utente amministratore  vengono pubblicate sul dark web o dumpate pubblicamente, in modo che chiunque possa accedervi: come prima cosa, cambiate password in questo caso.

Tipi di attacchi informatici: Cross Site Scripting (XSS)

Il Cross Site Scripting (XSS) è il terzo elemento da considerare nella sicurezza di un sito web, e casi molti recenti di attacchi del genere hanno riguardato alcune versioni di WordPress, ad esempio, ma anche siti ancora più grossi come Linkedin. Si tratta di un attacco che mira a sfruttare i mancati controlli all’interno del codice dei siti (e più in genere delle app che sfruttano internet), in modo da poter eseguire operazioni per cui non si avrebbero di norma i privilegi, e cancellare o manomettere i dati.

Si tratta anche qui di attacchi text-based, ovvero piuttosto banali da replicare e che non richiedono, il più delle volte, neanche un software specifico per poter essere eseguiti.

Tipi di attacchi informatici: Insecure Direct Object References

Una quarta categoria da considerare sono i cosiddetti Insecure Direct Object References, cioè riferimenti ad oggetti utilizzati dal software che vengano sfruttati per eseguire operazioni illecite. Un uso errato delle sessioni PHP, ad esempio, come richiesto da alcune personalizzazioni di WordPress, potrebbe portare in sè problemi del genere.

Tipi di attacchi informatici: Security Misconfiguration

La Security Misconfiguration è un ulteriore problema che si trova ad affrontare qualsiasi esperto o consulente di sicurezza informatica: in essa, un attaccante riesce ad acquisire informazioni riservate mediante account di prova lasciati incustoditi, pagine non utilizzate (e magari indicizzate da Google), file o directory non protette adeguatamente e simili.

Per estensione, qualsiasi attacco di ingegneria sociale – ovvero mirato ad acquisire conoscenze ingannando la vittima ed ispirandole fiducia – sono da far rientrare idealmente in questa categoria. Per saperne di più sull’argomento basta leggere uno dei libri di Kevin Mitnick.

Tipi di attacchi informatici: Sensitive Data Exposure

La Sensitive Data Exposure rientra poi in una categoria ulteriore, ovvero tutti i casi in cui avvengano furti di dati personali: quindi non tanto password quanto chiavi private, che permettano ad un attaccante di impadronirsi di account o credenziali non proprie. Ricadono in questa categoria gli attacchi di tipo man-in-the-middle.

Tipi di attacchi informatici: Missing Function Level Access Control

Altro caso decisamente comune avviene qualora si registri una manipolazione dell’URL da parte di un utente non autorizzato, e tale operazione in generale va sotto il nome di Missing Function Level Access Control: è bene chiedersi, in questi caso, se mediante un URL pubblico sia possibile accedere direttamente a funzioni private.

Tipi di attacchi informatici: Cross Site Request Forgery

Gli attacchi di ottavo tipo sono i cosiddetti CSRF (Cross-Site Request Forgery), per i quali esiste anche un software di test open source (owaspcsrftester): un caso recente è stato quello della stampante Canon su cui funzionava Doom, ovvero un dispositivo di rete, oppure un servizio web, non dispone degli opportuni controlli per cui diventa possibile far girare qualsiasi software unsigned su di esso.

Tipi di attacchi informatici: Using Components with know Vulnerabilities

Molti siti wordpress sono vittima di attacchi Using Components with Known Vulnerabilities, ovvero: l’attaccante fa una scansione del sito, rileva un plugin bucato, non aggiornato o troppo vecchio e lo sfrutta a proprio vantaggio. Plausibilmente quasi tutte le falle di WP relative a plugin instabili o mal programmati ricadono in questa categoria, tra cui Slider Revolution Plugin e MailPoet. Anche l’uso attuale di versioni di WP non aggiornate può farci ricadere in rischi assimilabili a questa categoria.

Nuovo theme per il tuo sito in WordPress

Guarda su ThemeForest

Tipi di attacchi informatici: Unvalidated Redirects and forwards

Ultimo tipo di attacco da considerare è chiamato Unvalidated Redirects and Forwards, cioè si verifica in caso di redirect illeciti, inattesi o obsoleti; molto comune sui siti di spam e su quelli che diffondono malware e virus, sfrutta la possibilità di manipolare URL dall’esterno al fine di redirezionare l’utente su un sito-trappola oppure di phishing.

Su WordPress, ad esempio, si sono verificati moltissimi casi di malware che andavano ad effettuare:

  • redirect solo da mobile, invisibili dall’utente desktop, che portavano a siti di spam;
  • redirect inattesi e non visibili agli amministratori, ma visibili dagli utenti esterni.
Visitatori su questa pagina: 22 Visite di oggi: 8

1 voto


Informazioni sull'autore

Salvatore Capolupo

Consulente SEO, ingegnere informatico e fondatore di Trovalost.it, Pagare.online, Lipercubo.it e tanti altri. Di solito passo inosservato e non ne approfitto.