Estratto del documento

UNIVERSITÀ DEGLI STUDI DI UDINE

Corso di Laurea in Scienze e Tecnologie Multimediali

WEB SECURITY:

ANALISI DI UN CMS BASATO SU WORDPRESS

A me,

perché questo modesto

lavoro non sia solo la

conclusione di un percorso

ma un nuovo punto di

partenza.

INDICE

Introduzione...............................................................................................................................1

el1.Lo stato dell’arte.................................................................................................................4

1.1Storia di Wordpress........................................................................................................................4

1.2Vulnerabilità del core.....................................................................................................................4

1.3 Vulnerabilità Componenti aggiuntivi plugin e temi......................................................................4

1.4 Panoramica di altre comuni vulnerabilità......................................................................................5

1.4.1. Esempio di vulnerabilità XSS già nota: attacco a paypal 2006.............................................7

1.5 Cenni su Common Vulnerabilities and Exposures........................................................................9

1.6 Dati forniti da WPScan e Wordfence..........................................................................................10

1.7 Web Application Firewall...........................................................................................................12

1.8 Strumenti per scansione delle vulnerabilità.................................................................................12

1.9 Problemi aperti...........................................................................................................................15

2. La sicurezza delle informazioni.........................................................................................18

2.1 La triade CIA..............................................................................................................................18

2.2 IL GDPR.....................................................................................................................................19

2.2.1 La gestione dei registri delle attività di trattamento.............................................................23

2.2.2 Quando e come eseguire una DPIA.....................................................................................23

2.2.3 Definizione di Data Breach..................................................................................................23

2.2.4 Il ripristino in caso di incidente (operazioni di backup).......................................................24

2.3 Cookie law..................................................................................................................................24

3.La sicurezza delle applicazioni Web...................................................................................27

3.1Il progetto OWASP......................................................................................................................27

3.2Creazione dell’ambiente di laboratorio........................................................................................30

3.3Teoria di alcune vulnerabilità.......................................................................................................33

3.3.1 SQL Injection (SQLi)...........................................................................................................33

3.3.2 Cross-Site Scripting (XSS)..................................................................................................39

3.3.3 Cross Site Request Forgery (CSRF).....................................................................................42

4.La sicurezza di Wordpress..................................................................................................44

4.1 Incidenza delle tipologie di vulnerabilità in Wordpress..............................................................44

4.2 Analisi di sicurezza di un sito in Wordpress................................................................................45

4.3 SQLi in un plugin che porta a Data Exfiltration......................................................................46

4.4 Credenziali Amministratore e Brute-force attack....................................................................50

4.5 XSS in Wordpress...................................................................................................................55

4.6 Caso di studio.............................................................................................................................59

4.7 Messa in sicurezza di un host Wordpress....................................................................................62

4.8 Considerazioni e discussione sui risultati ottenuti.......................................................................66

5 Conclusioni...........................................................................................................................68

Indice delle figur...............................................................................................................................70

Indice delle Tabelle...........................................................................................................................70

Bibliografia..............................................................................................................................70

Sitografia..................................................................................................................................72

Introduzione..............................................................................................................................1

1.Lo stato dell’arte....................................................................................................................5

1.1 Storia di Wordpress.................................................................................................................5

1.2 Vulnerabilità del core..............................................................................................................5

1.3 Vulnerabilità Componenti aggiuntivi plugin e temi......................................................................5

1.4 Panoramica di altre comuni vulnerabilità.....................................................................................6

1.4.1. Esempio di vulnerabilità XSS già nota: attacco a paypal 2006.............................................8

1.5 Cenni su Common Vulnerabilities and Exposures........................................................................9

1.6 Dati forniti da WPScan e Wordfence..........................................................................................11

1.7 Web Application Firewall...........................................................................................................12

1.8 Strumenti per scansione delle vulnerabilità................................................................................13

1.9 Problemi aperti...........................................................................................................................16

2. La sicurezza delle informazioni.........................................................................................19

2.1 La triade CIA..............................................................................................................................19

2.2 IL GDPR.....................................................................................................................................20

2.2.1 La gestione dei registri delle attività di trattamento.............................................................23

2.2.2 Quando e come eseguire una DPIA.....................................................................................24

2.2.3 Definizione di Data Breach..................................................................................................24

2.2.4 Il ripristino in caso di incidente (operazioni di backup).......................................................25

2.3 Cookie law..................................................................................................................................25

3.La sicurezza delle applicazioni Web...................................................................................28

3.1 Il progetto OWASP...............................................................................................................28

3.2Creazione dell’ambiente di laboratorio........................................................................................31

3.3Teoria di alcune vulnerabilità......................................................................................................34

3.3.1 SQL Injection (SQLi)..........................................................................................................34

3.3.2 Cross-Site Scripting (XSS)..................................................................................................40

3.3.3 Cross Site Request Forgery (CSRF)....................................................................................43

4.La sicurezza di Wordpress..................................................................................................45

4.1 Incidenza delle tipologie di vulnerabilità in Wordpress..............................................................45

4.2 Analisi di sicurezza di un sito in Wordpress................................................................................46

4.3 SQLi in un plugin che porta a Data Exfiltration.....................................................................47

4.4 Credenziali Amministratore e Brute-force attack....................................................................51

4.5 XSS in Wordpress...................................................................................................................56

4.6 Caso di studio.............................................................................................................................60

4.7 Messa in sicurezza di un host Wordpress....................................................................................62

4.8 Considerazioni e discussione sui risultati ottenuti......................................................................66

5 Conclusioni...........................................................................................................................68

Indice delle figure...........................................................................................................................70

Indice delle Tabelle.........................................................................................................................71

Bibliografia..............................................................................................................................72

Sitografia..................................................................................................................................73

Abstract

Wordpress is a very common choice when it comes to Content Management System (CMS) platforms

to create websites, that is mostly because it does not require any technical skill and because of how

simple it is to create with it, even for beginners. Unlike often thought, many e-commerce, websites,

blog and other platforms use this CMS all over the world, even when they have to manage sensitive

information such as user data. It is thought that, due to the open source code, Wordpress is widely

studied and therefore very often targeted by hackers. This is not always the case, as it depends on the

context and culture in terms of security. A poor management can lead to disastrous consequences if

common best practices to keep the website safe are not implemented or properly applied. In addition

to that, a good risk analysis for the detection and correction of vulnerabilities before the website goes

online, will help companies to avoid the costs of restoring the website after a hack or sanctions for

breaches they should pay in case of accidental data disclosure.

The sources initially used for this thesis are data from consulted reports about the most frequent recent

attacks made available by some leaders in cybersecurity. Regarding the security tools and their

practical implementation and in order to make this work replicable own websites and free and open-

source tools have been used.

Aim of the present work is to raise awareness among the users, as well as anyone who wants to

manage a portal based on this CMS, of its proper maintenance, because some of the potential problems

can be surely avoided or at least the possibility that they occur can be reduced.

In the first place, some of the most common threats affecting major web applications will be addressed

from a theoretical perspective, together with how they are used by attackers. Subsequently, practically

showing some of the various attack techniques described in the theoretical section of a Wordpress

website, how is it possible to hack a vulnerable website when there is no implementation of security

measures will be shown. The results collected will be used in the final part, showing how a Wordpress

GDPR compliant host was secured by the authors of this work to minimise the possibility of data

exposure in a real context.

INTRODUZIONE

Generalmente quando un’azienda o un privato si trova a dover sviluppare una soluzione web e si

interfaccia con un eventuale fornitore, ha due strade da valutare o farsi sviluppare una soluzione su

misura “ex novo”, o scegliere una soluzione che permette di agevolare il lavoro come un CMS

(Content Managment System) con qualche un particolare effetto grafico. I Web Content Management

Systems occupano sempre più spazio nell’ evoluzione di Internet, essi hanno come vantaggio una

maggiore semplicità di utilizzo un’interfaccia WYSIWIG, ovvero quello che vedi sullo schermo sarà

presentato ai visitatori del sito. Per contro essendo sviluppati in maniera più orientata al web hanno

una maggiore indicizzazione, ma una minore sicurezza.

Nonostante una nuova visione delle tecnologie per la costruzione dei siti web abbia compiuto notevoli

passi avanti, purtroppo in materia di sicurezza, le dovute misure di prevenzione non sono mai

sufficienti. Gli eventi sfavorevoli sono dovuti sia dai pochi investimenti che aziende ed enti interessati

dovrebbero fare ma anche per tecnologie poco adeguate, mancanti o da una scarsa formazione del

personale.

Studiare in modo dettagliato i protocolli e i paradigmi di funzionamento dei sistemi web a partire dalle

semplici pagine scritte in HTML per finire con i siti web progettati in linguaggi più articolati come il

PHP, Javascript o AJAX è un requisito indispensabile per avere coscienza delle vulnerabilità dei propri

sistemi e dei rischi connessi in caso di disastri.

La progettazione, l’ingegnerizzazione e la comprensione dei punti deboli fin dalle prime fasi di

sviluppo di un’applicazione, permetterebbe di adottare configurazioni appropriate e le migliori best

pratices in materia di sicurezza applicativa allo scopo di prevenirne la compromissione.

Il Web 3.0 ha l’uso massiccio di queste tecnologie in ambito commerciale B2B, o B2C ha permesso

che una mole di dati anche privati si propaghino sul web che molto spesso diventano bersaglio dei

malintenzionati. Purtroppo non tutti i proprietari di un sito hanno conoscenze di programmazione, e il

problema si fa importante.

Le vulnerabilità di sicurezza, i bug e i difetti rappresentano il punto debole di qualsiasi sistema e

dovrebbero essere analizzati tempestivamente per evitare un attacco. Le conseguenze abituali di

attacco sono: distruzione di dati riservati, modifica dei dati, uso improprio di un server Web per

attività illegali hanno delle ricadute anche sul piano giuridico. 1

Definizione del problema

In questo lavoro ci proponiamo di descrivere le fasi di un attacco dalla scoperta, allo sfruttamento.

Eseguiremo un’analisi di sicurezza di base di un noto CMS Wordpress, la scelta è dovuta meramente

per la sua maggiore diffusione [ CITATION htt \l 1040 ].

Adotteremo delle soluzioni attualmente esistenti come il test dei sistemi meglio noto come Penetration

Test e il Vulnerabily Assestment [ CITATION Oma \l 1040 ] che andrebbero condotti periodicamente

in un’azienda allo scopo di identificare le vulnerabilità critiche dei sistemi e preservare così la

continuità di servizio.

Lo scopo di questa attività è quello di delineare lo stato attuale dell’applicazione principali

vulnerabilità, determinare l’impatto di una violazione in termini di riservatezza, integrità dei sistemi e

dei dati aziendali e di fornire raccomandazioni sulla mitigazione del rischio per le vulnerabilità

scoperte.

Per questo scopo ci proponiamo di condurre un’analisi di base per un sito web le tecniche utilizzate

sono facilmente replicabili in altre realtà relative ad applicazioni similari e compatibili. La diffusione

dei risultati ha come scopo l’intenzione di sensibilizzare altri interessati in merito ai vantaggi derivanti

da questo tipo di metodologia utilizzata.

La tesi si presenta con la seguente struttura:

Capitolo 1 – Stato dell’arte

In questo capitolo parleremo, a grandi linee, di cos’è Wordpress dei problemi relativi alla sicurezza di

questo CMS, fino allo stato attuale.

Capitolo 2 – Il quadro normativo

In questo capitolo verrà presentato il quadro normativo di riferimento italiano, il General Data

Protection Regulation (GDPR), il ruolo chiave della sicurezza informatica nel trattamento dei dati

personali, il ripristino di questi ultimi in caso vengano accertate violazioni come nel contesto di un

1

Data Breach .

Capitolo 3 – OWASP e Teoria attacchi

Introdurremo poi il progetto Open Web Application Security Project (OWASP), gli attacchi più

comuni che avvengono su web application.

Vedremo dettaglio quali sono le principali vettori di attacco ad un sito web Wordpress portando

qualche esempio anche illustrativo.

Capitolo 4 – La sicurezza di Wordpress

1 Qualsivoglia violazione dei dati personali.

In questo capitolo porteremo un esempio di Penetration Test, degli strumenti e i tools che utilizzeremo

come Kali Linux, Sqlmap, WpScan e gli strumenti per un Vulnerability Assestment.

Capitolo

Anteprima
Vedrai una selezione di 18 pagine su 81
Web Security: analisi di un CMS basato su Wordpress Pag. 1 Web Security: analisi di un CMS basato su Wordpress Pag. 2
Anteprima di 18 pagg. su 81.
Scarica il documento per vederlo tutto.
Web Security: analisi di un CMS basato su Wordpress Pag. 6
Anteprima di 18 pagg. su 81.
Scarica il documento per vederlo tutto.
Web Security: analisi di un CMS basato su Wordpress Pag. 11
Anteprima di 18 pagg. su 81.
Scarica il documento per vederlo tutto.
Web Security: analisi di un CMS basato su Wordpress Pag. 16
Anteprima di 18 pagg. su 81.
Scarica il documento per vederlo tutto.
Web Security: analisi di un CMS basato su Wordpress Pag. 21
Anteprima di 18 pagg. su 81.
Scarica il documento per vederlo tutto.
Web Security: analisi di un CMS basato su Wordpress Pag. 26
Anteprima di 18 pagg. su 81.
Scarica il documento per vederlo tutto.
Web Security: analisi di un CMS basato su Wordpress Pag. 31
Anteprima di 18 pagg. su 81.
Scarica il documento per vederlo tutto.
Web Security: analisi di un CMS basato su Wordpress Pag. 36
Anteprima di 18 pagg. su 81.
Scarica il documento per vederlo tutto.
Web Security: analisi di un CMS basato su Wordpress Pag. 41
Anteprima di 18 pagg. su 81.
Scarica il documento per vederlo tutto.
Web Security: analisi di un CMS basato su Wordpress Pag. 46
Anteprima di 18 pagg. su 81.
Scarica il documento per vederlo tutto.
Web Security: analisi di un CMS basato su Wordpress Pag. 51
Anteprima di 18 pagg. su 81.
Scarica il documento per vederlo tutto.
Web Security: analisi di un CMS basato su Wordpress Pag. 56
Anteprima di 18 pagg. su 81.
Scarica il documento per vederlo tutto.
Web Security: analisi di un CMS basato su Wordpress Pag. 61
Anteprima di 18 pagg. su 81.
Scarica il documento per vederlo tutto.
Web Security: analisi di un CMS basato su Wordpress Pag. 66
Anteprima di 18 pagg. su 81.
Scarica il documento per vederlo tutto.
Web Security: analisi di un CMS basato su Wordpress Pag. 71
Anteprima di 18 pagg. su 81.
Scarica il documento per vederlo tutto.
Web Security: analisi di un CMS basato su Wordpress Pag. 76
Anteprima di 18 pagg. su 81.
Scarica il documento per vederlo tutto.
Web Security: analisi di un CMS basato su Wordpress Pag. 81
1 su 81
D/illustrazione/soddisfatti o rimborsati
Acquista con carta o PayPal
Scarica i documenti tutte le volte che vuoi
Dettagli
SSD
Scienze matematiche e informatiche INF/01 Informatica

I contenuti di questa pagina costituiscono rielaborazioni personali del Publisher syndy004 di informazioni apprese con la frequenza delle lezioni di Informatica e studio autonomo di eventuali libri di riferimento in preparazione dell'esame finale o della tesi. Non devono intendersi come materiale ufficiale dell'università Università degli Studi di Udine o del prof Foresti Gianluca.
Appunti correlati Invia appunti e guadagna

Domande e risposte

Hai bisogno di aiuto?
Chiedi alla community