Web Application Security: Bug Hunting e Code Review
|
|
|
- Flavia Pagano
- 10 anni fa
- Просмотров:
Транскрипт
1 Web Application Security: Bug Hunting e Code Review Pisa 11 Dicembre 2008 Antonio Parata [email protected] Francesco Ongaro [email protected]
2 Chi siamo? Antonio Parata Antonio Parata - Lavoro nel SOC di Telecomitalia come security auditor per conto di Emaze Networks (siamo alla ricerca di (! personale - Membro del gruppo di ricerca indipendente USH - Faccio parte del gruppo Owasp Italy - IT Security researcher
3 Chi siamo? Francesco Ongaro Francesco Ongaro - IT Security consultant - Fondatore del gruppo di ricerca indipendente USH - IT Security researcher
4 Introduzione A chi è rivolto? Professionisti del settore - Ethical hackers - Source code auditors Programmatori Web Computer security enthusiasts
5 Vulnerability Assessment È il processo che identifica, quantifica e valuta le vulnerabilità presenti in un sistema (nel nostro.( webun applicazionecaso BLACK BOX TESTING GRAY BOX TESTING WHITE BOX TESTING
6 Vulnerability Assessment Tipologie di testing - Black box testing Nessuna conoscenza sul sistema - Gray Box Testing fornitevengono delle informazioni sul sistema, come ad esempio tipo di applicazione, policy implementate, account di prova - White box testing pienoho accesso alle codiceilcompreso, dell applicazioneinformazioni sorgente
7 BLACK BOX TESTING
8 Vulnerability Assessment Penetration Testing Process Application Profiling Vulnerability Discovery Report Exploitation Vulnerability Evaluation
9 Application Profiling Cosa identificare Si cerca di capire con che tipo di applicazione si ha a che fare e che tecnologie utilizza: ( Custom, Webmail - Tipo di applicazione (CMS, Forum, ( NET.ASP, Java, PHP ) - Linguaggio di programmazione (, Jboss - Web Server e Application Server (Apache, IIS, (, Oracle, ServerSQLMS, Acces - Database Server (MySQL, (, Linux, Windows ) - Sistema operativo ( etc - Architettura (numero di tier,
10 Application Profiling A che scopo fare profiling Per identificare eventuali debolezze note: - Stored Forum XSS - Webmail Header Injection (per mail ( spamming - Arbitrary CMS file upload (code ( execution Capire quali attacchi possono essere portati a termine a seconda del linguaggio utilizzato: - difficile NET.ASP, Java Code Execution, Web Server Misconfiguration - PHP SQLi, RCE, LFI, Capire che tipo di operazioni si possono fare sul DB. (eseguire codice, query annidate, stacked (, tabellecreare, query
11 Vulnerability Discovery In questa fase si identifica il maggior numero di vulnerabilità, facendo tesoro di quanto appreso nella fase di profiling per ottimizzare i tempi. Un aiuto non indifferente viene fornito dai tool automatici: - Dirbuster - W3af ( 30K - Appscan (commerciale, costo circa ( 30K - Webinspect (commerciale, costo circa ( 6K - Acunetix (commerciale, costo circa
12 Web application vulnerabilities 1. ( XSS ) Cross Site Scripting 2. Injection Flaw (sqli, OS Injection, xpath (, injection 3. ( LFI,RFI ) Malicious File Execution 4. Insecure Direct Object Reference 5. ( CSRF/XSRF ) Cross Site Request Forgery 6. Information Leakage and Improper Error Handling 7. Broken Authentication and Session Management 8. Insecure Cryptographic Storage 9. Insecure Communications 10. Failure to Restrict URL Access
13 SQL Injection vulnerability fal applicazionecuiincasiqueiinpresentasi utilizzo di un Database come strumento di storage. Si cerca di alterare la struttura delle query eseguite sul DB per scopi malevoli. Modificando la query si può: - Bypassare routine di autenticazione - Ottenere username e password degli utenti dell applicazione - Eseguire codice sul macchina su cui è installato il DB
14 SQL Injection vulnerability Query di autenticazione con DB Mysql: SELECT * FROM Utenti WHERE username= <input User> and password=md5( <input Pass> )
15 SQL Injection vulnerability Gli sviluppatori web sono ormai coscienti di questo tipo di attacco non più tanto comune, o per lo meno nella sua forma standard Blind SQL Injection Second Order SQL Injection
16 SQL Injection vulnerability Blind SQL Injection sededucesiottenutarispostadi tipo albasein la query è andata a buon fine o meno. Necessita di una prima fase di scoperta della vulnerabilità: ( vera (query sempre 2 = 1 OR 1 = 1 OR 1 ( falsa (query sempre 2 = 1 OR 2 = 1 OR 1 Le risposte ricevute verranno utilizzate per discriminare sul risultato della query.
17 SQL Injection vulnerability Blind SQL Injection Calcoliamo il valore della risposta sempre vera:
18 SQL Injection vulnerability Blind SQL Injection Calcoliamo il valore della risposta sempre falsa:
19 SQL Injection vulnerability Blind SQL Injection Attacco:
20 SQL Injection vulnerability Second Order SQL Injection filtratovengautentel inputcheaccadevoltea correttamente salvo poi essere riutilizzato in un secondo momento in modo errato:
21 SQL Injection vulnerability Attack Optimization Le vulnerabilità di tipo SQLi (in particolare di tipo Blind) richiedono un alto numero di richieste. Esistono varie tecniche per poter ottimizzare il numero di richieste: - Ricerca Binaria - Mappable Blind SQL Injection hack-charmap/charmap_0.1.tar.gz
22 SQL Injection vulnerability Problemi di automazione Purtroppo esistono alcuni impedimenti ad una completa automazione degli attacchi di tipo SQLi: - La non stabilità della pagina, attualmente rappresenta la sfida più impegnativa da parte degli sviluppatori di tool automatici (esistono comunque degli ( pubblicati studi a riguardo non ancora - Complessità delle query, in particolare la presenza adcome )particolarikeyworddil utilizzoeparentesidi esempio LIKE) complica la fase di automatizzazione dell attacco
23 SQL Injection vulnerability Tools Tool che vale la pena di provare: - Sqlmap - Sqlninja - Absinthe Altri tool: - BSQL - Scrawl
24 OS Command Injection Utilizza funzioni che permettono di eseguire comandi di sistema o valutazione dinamica di codice di scripting: - System - Exec - Eval ( perl - Open (per script - inalteratoarrivautentedell inputsechedireinutile in una di queste funzioni, cose molto brutte possono accadere
25 OS Command Injection Considerazioni È buona regola non far passare input utente a tali sidell input funzioni: anche in caso di escaping possono avere brutte sorprese. Esempio: system('ls '.escapeshellarg($dir)); Ma se siamo su sistemi linux cosa succede se mettiamo: $dir= `ls` `ls` il codice viene eseguito
26 Malicious File Execution Permette di eseguire codice sul sistema. Rappresenta una delle vulnerabilità a maggior impatto. Tipologie: - Remote File Inclusion - Local File Inclusion - OS Command Injection
27 Malicious File Execution Remote File Inclusion Sfrutta le funzioni di inclusione dinamica di file per eseguire codice: - include() - include_once() - require() - require_once() Esempio (Joomla Component Simple RSS Reader 1.0): include("$mosconfig_live_site/components/ com_rssreader/about.html" );
28 Malicious File Execution Remote File Inclusion Considerazioni In declino: - I più diffusi linguaggi di programmazione web non ( NET. supportanol inclusionedinamica. (J2EE, ASP - PHP non permette di default di includere file ( PHP remoti. (falso per le vecchie versioni di
29 Malicious File Execution Local File Inclusion Permette di visualizzare o eseguire il contenuto di ( permettendo file presenti sul filesystem. (permessi di lettura Permette di eseguire codice remoto. Sfrutta le stesse funzioni del Remote File Inclusion. Esempio (FTP Admin v0.1.0): include("$page.php"); swd%00&loggedin=true
30 Malicious File Execution Local File Inclusion Non tutti sanno che su sistemi Linux è possibile eseguire del codice tramite una LFI Esempio: index.php?page=../../../proc/self/environ&cmd=ls HTTP_USER_AGENT: <?php system($_get[\'cmd\'])?> More info:
31 Failure to Restrict URL Access Anche detta Force Browsing. aaccedechichefiduciosinell essereconsiste forzaperdevedell applicazionisezionicerte essere autorizzato. In genere ciò si ottiene: - Nascondendo ilinkrelativiasezioniprivilegiate - Errata implementazione delle politiche di accesso
32 Failure to Restrict URL Access Esempi La pagina admin non appare nel menu principale a meno browserilpuntarefarbasta che non si è Administrator su /admin.php Vieneinseritoun redirect header perredirezionare didimenticasicimaerroredipaginaunasul utente ritornatocodiceilanalizzando dall applicazioneuscire dalla pagina di redirect si ottiene il codice HTML della pagina di admin
33 CODE REVIEW
34 Code Review Code Review è il processo di analisi del codice sorgente con il fine di identificare le eventuali ( bugs vulnerabilità. (o più in generale software Diverse tipologie di navigazione del codice - Control-flow sensitive si analizza il codice senza tener conto del flusso dei dati ma solo del percorso del programma. - Data-flow sensitive si analizza il codice sorgente seguendo il flusso dei dati. Scelta una variabile si considerano solo le chiamate di funzione che interessano tale variabile.
35 Code Review Navigazione del codice 1. int bob(int c) { 2. if (c == 4) 3. fred(c); 4. if (c == 72) 5. jim(); 6. for (; c; c) 7. updateglobalstate(); 8. } Control-flow sensitive Data-flow sensitive (var c)
36 Code Review Strategie di Code-auditing Trace Malicious Input entra utentel inputcuiinpuntiiidentificanosi allal inputtracciasiquida.( entrypoint )nell applicazione ricerca di vunerabilità Candidate Point Strategies Si identificano i punti in cui è più probabile che si riscontrino vulnerabilità (esecuzione di query o di comandi di sistema) e si procede a ritroso fino ad una correlazioneconl inpututente
37 Code Review Strategie di Code-auditing Trace Malicious Input Navigazione del codice Control-Flow Sensitive 1. $myvar = $_GET['name']; 2. ( 0 > ($counter if 3. { 4. sayhello("ben tornato ".$myvar); 5. } 6. else 7. { 8. sayhello("benvenuto"); 9. } 10. ( sayhello($msg function 11. { 12. print_header(); 13. print_menu(); 14. print $msg; 15. print_footer(); 16. }
38 Code Review Strategie di Code-auditing Candidate Point Strategies Navigazione del codice Data-Flow Sensitive $U = $_POST['username']; 2. $P = $_POST['password']; 3. if (!isset($u)!isset($p)) { 4. echo "Password non valida"; 5. } 6. Else { 7. $resok = check_login($u, $P); 8. if ($resok) { 9. print "Accesso consentito"; 10. doadminstuff(); 11. } 12. else { 13. print "Password e/o Username errati"; 14. } 15. } 16. function check_login($username, $password) { 17. $sql = "SELECT count(*) FROM Utenti WHERE 18. Username='$username' AND Password=MD5('$password')"; 19. $res = execute_query($sql); 20. return $res > 0; 21. }...
39 Code Review Strategie di Code-auditing quale utilizzare? Trace Malicious Input Utile quando si vogliono identificare vulnerabilità derivanti dafunzioniutilizzateconun altafrequenza(print,echo ( XSS Candidate Point Strategies Utile quando si vogliono identificare vulnerabilità derivanti da funzioni utilizzate con bassa frequenza (system, eval.( RCE Generalmente è il primo da provare a causa del limitato uso di funzioni altamente pericoloso.
40 Code Review Codedellal automazioneperricercadellaattualestato Review È un campo di ricerca ancora molto giovane Si è passati da tool grep style (tool di prima generazione) a tool che comprendono un completo parser del linguaggio con complessi algoritmi di analisi: - Data flow analysis - Intraprocedural analysis (analisi del Call ( Graph - ( dell ASTanalisi )analysisinterprocedural - Dinamic/Static taint analysis - Symbolic execution - <aggiungere nome altisonante qui> :P
41 Code Review Tool automatici evoluzione Fonte Secure Programming with Static Analysis
42 Code Review Tool automatici web based related OWASP Orizon This project born in 2006 in order to provide a framework to all Owasp projects developing code review services. The project is in a quite stable stage and it is usable for Java static code review and some dynamic tests against XSS. Owasp Orizon includes also APIs for code crawling, usable for code crawling tools. Project Leader: Paolo Perego Pixy Pixy is a Java program that performs automatic scans of PHP 4 source code, aimed at the detection of XSS and SQL injection vulnerabilities. Pixy takes a PHP program as input, and creates a report that lists possible vulnerable points in the program, together with additional information for understanding the vulnerability.
43 Spot the Bug Moodle La vulnerabilità è di tipo Remote Code Execution Strategie di Code-auditing: Candidate Point Strategies
44 1. error_reporting(e_all); Spot the Bug Moodle tex.php 2. $texexp = urldecode($_server['query_string']); 3. $texexp = str_replace('formdata=','',$texexp); 4. if ($texexp) { 5. $image = md5($texexp). ".gif"; 6. $filetype = 'image/gif'; 7. if (!file_exists("$cfg->dataroot/filter/tex")) { 8. make_upload_directory("filter/tex"); 9. } 10. $texexp = str_replace('<','<',$texexp); 11. $texexp = str_replace('>','>',$texexp); 12. $texexp = preg_replace('!\r\n?!',' ',$texexp); 13. $cmd = tex_filter_get_cmd($pathname, $texexp); 14. system($cmd, $status); 15. if (file_exists($pathname)) { 16. send_file($pathname, $image); 17. } else { 18. echo "Image not found!"; 19. }
45 Spot the Bug Moodle lib.php 1. function tex_filter_get_cmd($pathname, $texexp) { 2. $texexp = escapeshellarg($texexp); 3. $executable = tex_filter_get_executable(false); 4. if ((PHP_OS == "WINNT") (PHP_OS == "WIN32") 5. (PHP_OS == "Windows")) { 6. $executable = str_replace(' ', '^ ', $executable); 7. return "$executable ++ -e \"$pathname\" -- $texexp"; 8. } else { 9. return "\"$executable\" -e \"$pathname\" -- $texexp"; 10. } 11. }
46 Exploit: p?formdata=foo&pathname=foo";ls+-l;echo+" Spot the Bug Moodle tex_filter_get_cmd non esegue alcuna validazione sul parametro $pathname. Le globals devono essere abilitate. Trace: - Input formdata $formdata - Evil Input pathname $pathname - tex_filter_get_cmd($pathname, ) $cmd (, system($cmd $cmd -
47 Spot the Bug Collabtive admin.php La vulnerabilità è di tipo Force Browser con Authentication Bypass Strategie di Code-auditing: Trace Malicious Input
48 Spot the Bug Collabtive admin.php 1. $repeatpass = getarrayval($_post, "repeatpass"); 2. $template->assign("mode", $mode);$user = new user(); 3. $project = new project(); 4. $theset = new settings(); 5. $mainclasses = array("desktop" => "desktop", "profil" => "profil", "admin" => "admin_active"); 1. $template->assign("mainclasses", $mainclasses); 2. if ($adminstate < 5) {// TRUE se non siamo admin 3. $errtxt = $langfile["nopermission"]; 4. $noperm = $langfile["accessdenied"]; 5. $template->assign("errortext", "$errtxt<br>$noperm"); 6. $template->display("error.tpl"); // è una print di codice HTML 7. } 8. // OK siamo admin 9. if ($action == "index") { 10. $classes = array("overview" => "overview_active", "system" => "system", users" =>"users");
49 Spot the Bug Collabtive admin.php Se $adminstate è minore di 5 viene stampato un messaggio di errore, ma l esecuzione del programma continua Fix: Inserire un exit nel blocco if se le globals sono abilitate il bug rimane exploitabile Exploit:
50 Spot the Bug XXXX 0day La vulnerabilità è di tipo Arbitrary file creation con Remote Code Execution Strategie di Code-auditing: Trace Malicious Input Prerequisiti: Nessuno!!
51 Spot the Bug XXXX 0day 1. function _holiday_cmp($a,$b) { 2. if (($year_diff = ($a['occurence'] <= 0? 3. 0 : $a['occurence']) - ($b['occurence'] <= 0? 4. 0 : $b['occurence']))) 5. { 6. return $year_diff; 7. } 8. return $a['month'] - $b['month']? 9. $a['month'] - $b['month'] : $a['day'] - $b['day']; 10. } 11. $send_back_to = str_replace('&locale='.$_post['locale'],'',$send_back_to); 12. $file = './holidays.'.$_post['locale'].'.csv'; 13. if(!file_exists($file) filesize($file) < 300) { 14. if (count($_post['name'])) { 15. $fp = fopen($file,'w'); 16. if ($_POST['charset']) 17. fwrite($fp,"charset\t".$_post['charset']."\n"); 18. $holidays = array();
52 Spot the Bug XXXX 0day Trace: - Input File locale $file - fopen($file, ) $fp (, fwrite($fp - Evil input charset Exploit: - Sorry no exploit evailable :P
53 Pubblicare una vulnerabilità Policy - Full disclosure Trovata la vulnerabilità, si scrive l advisory e lo si pubblica. - Responsible disclosure Invece di pubblicare l advisory subito, si avverte il vendor e si coordina con esso la pubblicazione dell advisory dopo che è stato rilasciata una patch (se prevista).
54 Responsible disclosure Processo - Notifica della vulnerabilità al vendor - Aspettare ed eventualmente collaborare con il vendor per la risoluzione e il fix del bug - Pubblicare la vulnerabilità sulle varie ml di sicurezza senza omissioni di dettagli ed ( concept eventualmente con un poc (proof of Esiste una policy non ufficiale ( tale (ma riconosciuta come
55 Responsible disclosure Relazionarsi con il vendor Nella prima mail di contatto dovreste specificare: - Versione del software vulnerabile - Dettagliata descrizione della vulnerabilità ( dell advisory (eventualmente allegate il draft - Suggerire una possibile soluzione - Specificate che lo fate solo ed esclusivamente a scopo di ricerca - Specificate bene qual è la vostra politica per quanto riguarda i tempi di rilascio
56 Responsible disclosure Eventuale problematiche Può capitare che il vendor non risponda alla vostra mail, in questo caso: - Aspettate una settimana dopodiché inviate un altra mail di notifica, specificando che non avete ricevuto risposta (controllate se esistono altri indirizzi ( l adv a cui inviare - Se ancora non risponde, aspettate un altra settimana e inviate un altra mail dicendo che il giorno seguente pubblicherete l advisory - Se non risponde in tempo, pubblicate l advisory
57 Conclusioni - Web 2.0 is everywhere! - Ogni azienda che si possa definire tale ha un sito web ci si sta rendendo conto che la sicurezza delle applicazioni web è una cosa di cui tener conto. - Scovare bug ad alto impatto (sqli, rce) non è più tanto semplice In futuro vedremo (imho): - Tool di analisi statica sempre più intelligenti - Identificazione di nuove vulnerabilità lato client - Tool di testing sempre più Context-aware
58 Domande?
Secure Code Review: dalla teoria alla pratica
Secure Code Review: dalla teoria alla pratica Antonio Parata http://www.emaze.net [email protected] OWASP-Day III Centro di Competenza ICT-Puglia - Dipartimento di Informatica Università degli Studi
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
[1] Cross Site Scripting [2] Remote / Local File Inclusion [3] SQL Injection
---------------------------------------------------------------------..... _/ / _ / / \ \/ / / / / \ / \ \ \ / /_/ \ /\ / \ \ \ / /_/ > Y \ \ \ >\_/ / > / \ / / \/ \/ \/ \/ / / \/ ---------------------------------------------------------------------
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 05/2013 TeamPortal Infrastruttura Rubriche e Contatti Bacheca Procedure Gestionali Etc Framework TeamPortal Python SQL Wrapper Apache/SSL PostgreSQL Sistema Operativo TeamPortal
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
GERARCHIE RICORSIVE - SQL SERVER 2008
GERARCHIE RICORSIVE - SQL SERVER 2008 DISPENSE http://dbgroup.unimo.it/sia/gerarchiericorsive/ L obiettivo è quello di realizzare la tabella di navigazione tramite una query ricorsiva utilizzando SQL SERVER
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
Individuare Web Shell nocive con PHP Shell
http://www.readability.com/articles/7e9rlg94 html.it ORIGINAL PAGE Individuare Web Shell nocive con PHP Shell Detector by ANDREA DRAGHETTI Una shell Web è uno script, comunemente scritto in PHP, in grado
Il web server Apache Lezione n. 3. Introduzione
Procurarsi ed installare il web server Apache Introduzione In questa lezione cominciamo a fare un po di pratica facendo una serie di operazioni preliminari, necessarie per iniziare a lavorare. In particolar
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
InitZero s.r.l. Via P. Calamandrei, 24-52100 Arezzo email: [email protected]
izticket Il programma izticket permette la gestione delle chiamate di intervento tecnico. E un applicazione web, basata su un potente application server java, testata con i più diffusi browser (quali Firefox,
Domenico Ercolani Come gestire la sicurezza delle applicazioni web
Domenico Ercolani Come gestire la sicurezza delle applicazioni web Agenda Concetti generali di sicurezza applicativa La soluzione IBM La spesa per la sicurezza non è bilanciata Sicurezza Spesa Buffer Overflow
2.5. L'indirizzo IP identifica il computer di origine, il numero di porta invece identifica il processo di origine.
ESERCIZIARIO Risposte ai quesiti: 2.1 Non sono necessarie modifiche. Il nuovo protocollo utilizzerà i servizi forniti da uno dei protocolli di livello trasporto. 2.2 Il server deve essere sempre in esecuzione
Sviluppo Applicativi personalizzati per automatizzare le Analisi SPC
Sviluppo Applicativi personalizzati per automatizzare le Analisi SPC Query sui Databases Aziendali Report Automatici Interfacce Operatore Analisi Statistiche Minitab Web: www.gmsl.it Email: [email protected]
Hosting Applicativo Upgrade Web Client
Hosting Applicativo Upgrade Web Client guida all upgrade dei client di connessione Marzo 2012 Hosting Applicativo Installazione Web Client Introduzione Il personale Cineca effettua regolarmente dei controlli
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
OpenVAS - Open Source Vulnerability Scanner
OpenVAS - Open Source Vulnerability Scanner di Maurizio Pagani Introduzione OpenVAS è un framework che include servizi e tool per la scansione e la gestione completa delle vulnerabilità. Un vulnerability
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
Data Base. Master "Bio Info" Reti e Basi di Dati Lezione 6
Data Base 1 Sommario I concetti fondamentali. Database Relazionale.. Query e SQL MySql, Creazione di un db in MySQL con PHPmyAdmin Creazione database e delle Tabelle Query Inserimento Ricerca Modifica
Progetto Porte Aperte sul Web Comunicazione web a scuola CMS open source JoomlaFAP
Progetto Porte Aperte sul Web Comunicazione web a scuola CMS open source JoomlaFAP Breve tutorial per installare JoomlaFAP L installazione è la conditio sine qua non per partire. Occorre eseguire con precisione
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
Corso di PHP. Prerequisiti. 1 - Introduzione
Corso di PHP 1 - Introduzione 1 Prerequisiti Conoscenza HTML Principi di programmazione web Saper progettare un algoritmo Saper usare un sistema operativo Compilazione, link, esecuzione di programmi Conoscere
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
Installazione di GFI Network Server Monitor
Installazione di GFI Network Server Monitor Requisiti di sistema I computer che eseguono GFI Network Server Monitor richiedono: i sistemi operativi Windows 2000 (SP4 o superiore), 2003 o XP Pro Windows
RELAZIONE PROGETTO DATABASE GESTIONE BIBLIOTECA PERSONALE
RELAZIONE PROGETTO DATABASE GESTIONE BIBLIOTECA PERSONALE Mameli Salvatore-M01/000153 SOMMARIO 1 INTRODUZIONE 1.1 Project Overview 1.2 Ambiente del prodotto 1.3 Document Overview 2 - PROGETTAZIONE 2.1
Laboratorio Progettazione Web PHP e MySQL - Lezione 9. Andrea Marchetti IIT-CNR [email protected] 2012/2013
Laboratorio Progettazione Web PHP e MySQL - Lezione 9 Andrea Marchetti IIT-CNR [email protected] 2012/2013 Architettura di una applicazione Web Browser Web HTTP Server Web API Dati Presentation
Joomla: Come installarlo e come usarlo. A cura di
Joomla: Come installarlo e come usarlo. A cura di In questa dispensa andremo a vedere come si installa joomla sul noto software xampp e come viene usato per creare siti web dinamici. Tecnol earn Firmato
Progetto di Ingegneria del Software 2. SWIMv2
Progetto di Ingegneria del Software 2 2012/2013 SWIMv2 Guida di installazione Docente: Prof. Luca Mottola Davide Brambilla Antonio Caputo Paolo Caputo 1 Introduzione La piattaforma è stata sviluppata come
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
Manuale per la configurazione di AziendaSoft in rete
Manuale per la configurazione di AziendaSoft in rete Data del manuale: 7/5/2013 Aggiornamento del manuale: 2.0 del 10/2/2014 Immagini tratte da Windows 7 Versione di AziendaSoft 7 Sommario 1. Premessa...
Laboratorio di Sistemi Programmare in Php con NetBeans Php. Programmare in Php con Xampp e NetBeans IDE
Programmare in Php con Xampp e NetBeans IDE NetBeans è un IDE ben noto ai programmatori Java. Con esso si possono infatti costruire applicazioni desktop professionali dotate di interfaccia grafica, applicazioni
Il software di gestione immobiliare più facile da usare. Modulo Web v5.2. www.gestim.it
Il software di gestione immobiliare più facile da usare Modulo Web v5.2 www.gestim.it Introduzione Il Modulo Web è un componente di Gestim che permette di pubblicare in automatico gli annunci sul sito
Il Web Server e il protocollo HTTP
Corso PHP Parte 2 Il Web Server e il protocollo HTTP E un programma sempre attivo che ascolta su una porta le richieste HTTP. All arrivo di una richiesta la esegue e restituisce il risultato al browser,
Scaletta. Estensioni UML per il Web. Applicazioni web - 2. Applicazioni web. WAE: Web Application Extension for UML. «Client page»
Scaletta Estensioni UML per il Web Michele Zennaro 14-05-2004 Le applicazioni web Scopo di un estensione UML per il web Due punti di vista Uno più astratto Uno più vicino ai file fisici conclusivo Commenti
Virus informatici Approfondimenti tecnici per giuristi
Creative Commons license Stefano Fratepietro - www.stevelab.net 1 Virus informatici Approfondimenti tecnici per giuristi Ciclo dei seminari Informatica nei laboratori del CIRSFID Facoltà di Giurisprudenza
Applicazioni software e gestione delle vulnerabilità: un caso concreto di successo
Applicazioni software e gestione delle vulnerabilità: un caso concreto di successo Roberto Obialero, GCFW, GCFA Fabio Bucciarelli, GCFA, CEH Agenda Analisi del contesto (attacchi,
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
Applicazione JobScheduler su DB SQL Milano, lì 14/09/2009
Documentazione KING Applicazione JobScheduler su DB SQL Milano, lì 14/09/2009 Microsoft SQL Server dispone del servizio di Job Scheduler, o Schedulatore di attività: si tratta di un applicativo che consente
Bollettino VA-IT-140901-01.A
Early W a r ning Bollettino VA-IT-140901-01.A Guida alla corretta lettura della scheda riassuntiva Early Warning - Bollettino VA-IT-140901-01.A Pag. 2/6 C A N D I D A T E CORRISPONDENZE EARLY WARNING INFORMAZIONI
ORDINE DEGLI INGEGNERI DELLA PROVINCIA DI TERAMO
ORDINE DEGLI INGEGNERI DELLA PROVINCIA DI TERAMO Teramo, 4 dicembre 2014 Ns. Prot. n. 1913 Spett.le Consiglio Nazionale Ingegneri Via IV Novembre n. 114 00187 Roma [email protected] Comitato Italiano
INFN Napoli NESSUS. IL Security Scanner. Francesco M. Taurino 1
NESSUS IL Security Scanner Francesco M. Taurino 1 La vostra RETE Quali servizi sono presenti? Sono configurati in modo sicuro? Su quali macchine girano? Francesco M. Taurino 2 Domanda Quanto e sicura la
Apache 2, PHP5, MySQL 5
Installazione di Apache 2, PHP5, MySQL 5 Corso Interazione Uomo Macchina AA 2005/2006 Installazione e Versioni Considerazione le versioni più recenti dei vari software così da poterne sperimentare le caratteristiche
Installazione di Moodle. Preparato per: Gruppo A, Piattaforma di E - Learning Preparato da: Cinzia Compagnone, Vittorio Saettone
Installazione di Moodle Preparato per: Gruppo A, Piattaforma di E - Learning Preparato da: Cinzia Compagnone, Vittorio Saettone 21 maggio 2006 Installazione di Moodle Come installare Moodle: Questa guida
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
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
Istruzioni per installare EpiData e i files dati ad uso di NetAudit
Istruzioni per installare EpiData a cura di Pasquale Falasca e Franco Del Zotti Brevi note sull utilizzo del software EpiData per una raccolta omogenea dei dati. Si tratta di istruzioni passo-passo utili
! S/Key! Descrizione esercitazione! Alcuni sistemi S/Key-aware. " Windows " Linux. ! Inizializzazione del sistema. " S = prepare(passphrase, seed)
Sommario Esercitazione 04 Angelo Di Iorio! S/Key! Descrizione esercitazione! Alcuni sistemi S/Key-aware " Windows " Linux!"#!$#!%&'$(%)*+,')#$-!"#!$#!%&'$(%)*+,')#$- ).+/&'(+%!0 ).+/&'(+%!0 *+$1,",2.!
Nuovo server E-Shop: Guida alla installazione di Microsoft SQL Server
Nuovo server E-Shop: Guida alla installazione di Microsoft SQL Server La prima cosa da fare è installare SQL sul pc: se si vuole utilizzare SQL Server 2012 SP1 versione Express (gratuita), il link attuale
Backup e Restore di un database PostgreSQL Sandro Fioravanti INFN-LNF
SPARC-CS-12/001 20 Gennaio 2012 Backup e Restore di un database PostgreSQL Sandro Fioravanti INFN-LNF Abstract Vengono descritte le procedure di backup e restore dei dati memorizzati in un database di
hi-com software realizzato da Hi-Think
software realizzato da Hi-Think Pag 1 introduzione Hi-com è il programma di Hi-Think che soddisfa l'esigenza di chi, lavorando in ufficio o fuori ufficio, deve avere o scambiare con la propria azienda
SITI-Reports. Progetto SITI. Manuale Utente. SITI-Reports. ABACO S.r.l.
Progetto SITI Manuale Utente SITI-Reports ABACO S.r.l. ABACO S.r.l. C.so Umberto, 43 46100 Mantova (Italy) Tel +39 376 222181 Fax +39 376 222182 www.abacogroup.eu e-mail : [email protected] 02/03/2010
LA GESTIONE DELLE VISITE CLIENTI VIA WEB
LA GESTIONE DELLE VISITE CLIENTI VIA WEB L applicazione realizzata ha lo scopo di consentire agli agenti l inserimento via web dei dati relativi alle visite effettuate alla clientela. I requisiti informatici
La gestione documentale con il programma Filenet ed il suo utilizzo tramite la tecnologia.net. di Emanuele Mattei (emanuele.mattei[at]email.
La gestione documentale con il programma Filenet ed il suo utilizzo tramite la tecnologia.net di Emanuele Mattei (emanuele.mattei[at]email.it) Introduzione In questa serie di articoli, vedremo come utilizzare
Application Server per sviluppare applicazioni Java Enterprise
Application Server per sviluppare applicazioni Java Enterprise Con il termine Application Server si fa riferimento ad un contenitore, composto da diversi moduli, che offre alle applicazioni Web un ambiente
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
FONDAMENTI di INFORMATICA L. Mezzalira
FONDAMENTI di INFORMATICA L. Mezzalira Possibili domande 1 --- Caratteristiche delle macchine tipiche dell informatica Componenti hardware del modello funzionale di sistema informatico Componenti software
Tale attività non è descritta in questa dispensa
Fondamenti di informatica Oggetti e Java ottobre 2014 1 Nota preliminare L installazione e l uso di Eclipse richiede di aver preliminarmente installato Java SE SDK Tale attività non è descritta in questa
PTSv2 in breve: La scelta migliore per chi vuole diventare un Penetration Tester. Online, accesso flessibile e illimitato
La scelta migliore per chi vuole diventare un Penetration Tester PTSv2 in breve: Online, accesso flessibile e illimitato 900+ slide interattive e 3 ore di lezioni video Apprendimento interattivo e guidato
Manuale Utente. Gestione Richieste supporto Data Warehouse. Della Ragioneria Generale dello Stato. Versione 1.0. Roma, Ottobre 2015
Manuale Utente Gestione Richieste supporto Data Warehouse Della Ragioneria Generale dello Stato Versione 1.0 Roma, Ottobre 2015 1 Indice 1 Generalità... 3 1.1 Scopo del documento... 3 1.2 Versioni del
COMUNICAZIONE UTENTI SISTEMI-PROFIS INSTALLAZIONE GE.RI.CO. 2015 e PARAMETRI2015
COMUNICAZIONE UTENTI SISTEMI-PROFIS INSTALLAZIONE GE.RI.CO. 2015 e PARAMETRI2015 Vicenza, 3 giugno 2015 Gentile cliente, si ricorda che a partire dall aggiornamento PROFIS 2011.1 è stato automatizzato
3. Installare Wamp Server
E107 WEB SYSTEM Corso on line di progettazione siti dinamici: livello base R E A L I Z Z A Z I O N E D I 3. Installare Wamp Server By e107 Italian Team Sito web:http://www.e107italia.org Contatto: [email protected]
SOMMARIO... 3 INTRODUZIONE...
Sommario SOMMARIO... 3 INTRODUZIONE... 4 INTRODUZIONE ALLE FUNZIONALITÀ DEL PROGRAMMA INTRAWEB... 4 STRUTTURA DEL MANUALE... 4 INSTALLAZIONE INRAWEB VER. 11.0.0.0... 5 1 GESTIONE INTRAWEB VER 11.0.0.0...
Sistema Gestionale FIPRO. Dott. Enea Belloni Ing. Andrea Montagnani
Sistema Gestionale FIPRO Dott. Enea Belloni Ing. Andrea Montagnani Firenze, 29 Aprile 2010 Sommario della presentazione Il sistema informatico per la gestione progetti FIPRO L utente presentatore: diritti
Installazione & Configurazione Php e MySQL su Mac Os X. Php
Installazione & Configurazione Php e MySQL su Mac Os X Php PHP è un linguaggio di scripting interpretato, con licenza Open Source, originariamente concepito per la realizzazione di pagine web dinamiche.
Software di interfacciamento sistemi gestionali Manuale di installazione, configurazione ed utilizzo
01595 Software di interfacciamento sistemi gestionali Manuale di installazione, configurazione ed utilizzo INDICE DESCRIZIONE DEL SOFTWARE DI INTERFACCIAMENTO CON I SISTEMI GESTIONALI (ART. 01595) 2 Le
Guida all attivazione ipase
Guida all attivazione ipase Passo 1 Dopo la fase di installazione del programma, ecco la maschera che compare all avvio di ipase: Occorre ora procedere alla registrazione del prodotto, facendo click su
Guida all uso. Esso sarà riportato nell intestazione. Vediamo:
faxm@il è un applicazione che permette agli utenti dei sistemi di telefonia IP di inviare, ricevere e gestire fax. Il tradizionale sistema di fax è ormai superato. Con faxm@il non riceviamo né spediamo
INSTALLAZIONE DI JOOMLA! Guida alla installazione di Joomla!
Guida di Virtuemart INSTALLAZIONE DI JOOMLA! Guida alla installazione di Joomla! INDICE INDICE... 1 INTRODUZIONE... 2 DONWLOAD... 2 INSTALLAZIONE... 2 REQUISITI MINIMI... 3 PASSAGGIO 1... 4 PASSAGGIO 2...
Università degli Studi di Salerno Ingegneria del Software: Tecniche Avanzate
Università degli Studi di Salerno Ingegneria del Software: Tecniche Avanzate Mystic Pizza Gestione Pizzeria Scheda di Progetto Version 1.0 Data 19/03/2007 Indice degli argomenti 1. Introduzione 3 a. Scenario
Guida Tecnica. Come visionare da internet anche dietro un IP dinamico i dvr Brahms.
Guida Tecnica Come visionare da internet anche dietro un IP dinamico i dvr Brahms. Lo scopo di questa guida e di spiegare, in maniera semplice ci auguriamo, come connettersi ai DVR Brahms indicati sotto
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
Appunti di Informatica www.mimmocorrado.it 1
Installare Java Il programma può essere scaricato dal seguente indirizzo: http://www.java.com/it/download/windows_ie.jsp?locale=it&host=www.java.com Per installare la JDK è necessario: 1. scaricare il
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
Dipartimento di Sistemi e Informatica Università degli Studi di Firenze. Dev-C++ Ing. Michele Banci 27/03/2007 1
Dipartimento di Sistemi e Informatica Università degli Studi di Firenze Dev-C++ Ing. Michele Banci 27/03/2007 1 Utilizzare Dev-C++ Tutti i programmi che seranno realizzati richiedono progetti separati
Guida all utilizzo di Moodle per gli studenti
Guida all utilizzo di Moodle per gli studenti 1 Premessa La piattaforma utilizzata per le attività a distanza è Moodle, un software per la gestione di corsi online. Dal punto di vista dello studente, si
Riccardo Dutto, Paolo Garza Politecnico di Torino. Riccardo Dutto, Paolo Garza Politecnico di Torino
Integration Services Project SQL Server 2005 Integration Services Permette di gestire tutti i processi di ETL Basato sui progetti di Business Intelligence di tipo Integration services Project SQL Server
Corso di Informatica
Corso di Informatica Modulo T2 3-Compilatori e interpreti 1 Prerequisiti Principi di programmazione Utilizzo di un compilatore 2 1 Introduzione Una volta progettato un algoritmo codificato in un linguaggio
Sito web parrocchiale: STRUMENTI E PROGRAMMI
Sito web parrocchiale: STRUMENTI E PROGRAMMI tratteremo di... DIOCESI DI BRESCIA Linguaggi HTML,CSS Siti STATICI Siti DINAMICI e codice PHP CMS JOOMLA! Linguaggio HTML HTML: è il linguaggio con cui potete
Manuale NetSupport v.10.70.6 Liceo G. Cotta Marco Bolzon
NOTE PRELIMINARI: 1. La versione analizzata è quella del laboratorio beta della sede S. Davide di Porto, ma il programma è presente anche nel laboratorio alfa (Porto) e nel laboratorio di informatica della
NCP Networking Competence Provider Srl Sede legale: Via di Porta Pertusa, 4-00165 Roma Tel: 06-88816735, Fax: 02-93660960. info@ncp-italy.
NCP Networking Competence Provider Srl Sede legale: Via di Porta Pertusa, 4-00165 Roma Tel: 06-88816735, Fax: 02-93660960 [email protected] Introduzione Il penetration testing, conosciuto anche come ethical
Esercizi su. Funzioni
Esercizi su Funzioni ๒ Varie Tracce extra Sul sito del corso ๓ Esercizi funz_max.cc funz_fattoriale.cc ๔ Documentazione Il codice va documentato (commentato) Leggibilità Riduzione degli errori Manutenibilità
Come installare e configurare il software FileZilla
Come utilizzare FileZilla per accedere ad un server FTP Con questo tutorial verrà mostrato come installare, configurare il software e accedere ad un server FTP, come ad esempio quello dedicato ai siti
G&F NOTIZIE NUOVO SITO G&F RICHIESTE DI ASSI- STENZA VIA WEB. G&F s.r.l. G&F s.r.l. Via Santuario, 3 12084 Mondovì (CN) Notizie di rilievo: Buon Anno
Data 13/01/2014 N 1/2014 G&F s.r.l. Via Santuario, 3 12084 Mondovì (CN) Notizie di rilievo: NUOVO SITO G&F G&F NOTIZIE RICHIESTE DI ASSI- STENZA VIA WEB Buon Anno Buon Anno a tutti i nostri Clienti, con
Guida alla configurazione della posta elettronica dell Ateneo di Ferrara sui più comuni programmi di posta
Guida alla configurazione della posta elettronica dell Ateneo di Ferrara sui più comuni programmi di posta. Configurazione Account di posta dell Università di Ferrara con il Eudora email Eudora email può
Application Assessment Applicazione ARCO
GESI Application Assessment Applicazione ARCO Milano Hacking Team S.r.l. http://www.hackingteam.it Via della Moscova, 13 [email protected] 20121 MILANO (MI) - Italy Tel. +39.02.29060603 Fax +39.02.63118946
LETTERA D INSTALLAZIONE DELLA PROCEDURA SERVIZI SOCIALI
LETTERA D INSTALLAZIONE DELLA PROCEDURA SERVIZI SOCIALI OGGETTO: installazione della procedura SERVIZI SOCIALI alla versione 01.06.03 Alla presente si allega il cd-rom necessario per l installazione della
ali e non funzionali con priorità (high, medium, low) Use Case con un Activity Diagram o uno State Diagr ram
Riassunto deriva able 4 novembre Lista dei requisiti iti funziona ali e non funzionali con priorità (high, medium, low) Diagramma degli Use Case dell intero progetto Descrizione di almeno uno Use Case
