L'Open Web Application Security Project è una comunità online che crea articoli, metodologie, documentazione, strumenti e tecnologie liberamente disponibili nel campo della sicurezza delle applicazioni web.
OWASP offre framework di test e strumenti per l'identificazione delle vulnerabilità nelle applicazioni e nei servizi web
Prerequisiti
Una comprensione generale del ciclo di vita dello sviluppo web Esperienza nello sviluppo, nella sicurezza e nel test di applicazioni web.
Destinatari
Questo corso è rivolto a Sviluppatori, Ingegneri e Architetti che cercano di mettere in sicurezza le loro applicazioni e servizi web
Contenuti
Introduzione
Esplorazione del progetto di test OWASP
Principi di test
Tecniche di test
Derivazione dei requisiti dei test di sicurezza
Test di sicurezza integrati nei flussi di lavoro di sviluppo e test
Analisi e reportistica dei dati dei test di sicurezza
Utilizzo del framework di test OWASP
Fase 1: Prima dell'inizio dello sviluppo
Fase 2: Durante la definizione e la progettazione
Fase 3: Durante lo sviluppo
Fase 4: durante la distribuzione
Fase 5: Manutenzione e funzionamento
Un tipico flusso di lavoro di test del ciclo di vita
Metodologie di penetration testing
Test del Web Application Security
Introduzione e obiettivi
Raccolta di informazioni
Condurre l'individuazione e la ricognizione dei motori di ricerca per la perdita di informazioni
Server web per impronte digitali
Esamina i metafile del server web per la perdita di informazioni
Enumerare le applicazioni sul server web
Esamina il contenuto della pagina Web per verificare la perdita di informazioni
Identificare i punti di ingresso dell'applicazione
Mappare i percorsi di esecuzione attraverso l'applicazione
Framework di applicazioni web per impronte digitali
Applicazione web per impronte digitali
Architettura delle applicazioni delle mappe
Test di gestione della configurazione e della distribuzione
Testare la configurazione della rete/infrastruttura
Testare la configurazione della piattaforma applicativa
Testare la gestione delle estensioni dei file per le informazioni sensibili
Esamina i file vecchi, di backup e senza riferimenti per informazioni sensibili
Enumerare le interfacce di amministrazione dell'infrastruttura e dell'applicazione
Testare i metodi HTTP
Testare la sicurezza del trasporto HTTP strict
Testare i criteri RIA tra domini
Autorizzazione per il file di prova
Test per l'acquisizione del sottodominio
Testare l'archiviazione cloud
Identità Management Test
Definizioni dei ruoli di test
Testare il processo di registrazione dell'utente
Testare il processo di provisioning dell'account
Test per l'enumerazione degli account e l'account utente indovinabile
Test per i criteri relativi ai nomi utente deboli o non applicati
Test di autenticazione
Test delle credenziali trasportate su un canale crittografato
Test delle credenziali predefinite
Test per un meccanismo di blocco debole
Test per l'esclusione dello schema di autenticazione
Test per la vulnerabilità Ricorda password
Test per la debolezza della cache del browser
Test per i criteri di password deboli
Test per la risposta alla domanda di sicurezza debole
Test per funzionalità di modifica o reimpostazione della password deboli
Test per un'autenticazione più debole nel canale alternativo
Test di autorizzazione
Test dell'attraversamento della directory/inclusione dei file
Test per l'esclusione dello schema di autorizzazione
Test per l'escalation dei privilegi
Test per riferimenti diretti a oggetti non sicuri
Sessione Management Collaudo
Test per lo schema di gestione delle sessioni
Test per gli attributi dei cookie
Test per la fissazione della sessione
Test delle variabili di sessione esposte
Test per la contraffazione di richieste cross-site
Test della funzionalità di disconnessione
Timeout sessione di test
Test per sconcertare la sessione
Test per il dirottamento della sessione
Test di convalida dell'input
Test per il cross-site scripting riflesso
Test per lo scripting cross-site memorizzato
Test per la manomissione dei verbi HTTP
Test per l'inquinamento dei parametri HTTP
Test per iniezione SQL
Test per Oracle
Test per MySQL
Test per il server SQL
Test per PostgreSQL
Test per la SM Access
Test per iniezione NoSQL
Test per l'iniezione di ORM
Test per il lato client
Test per iniezione LDAP
Test per iniezione XML
Test per l'iniezione SSI
Test per iniezione XPath
Test per l'iniezione IMAP/SMTP
Test per l'iniezione di codice
Test per l'inclusione di file locali
Test per l'inclusione di file remoti
Test per l'iniezione di comandi
Test per l'inserimento di stringhe di formato
Test per la vulnerabilità incubata
Test per la suddivisione/contrabbando HTTP
Test per le richieste HTTP in ingresso
Test per l'inserimento dell'intestazione host
Test per l'inserimento di modelli lato server
Test per la falsificazione delle richieste lato server
Test per la gestione degli errori
Test per la gestione impropria degli errori
Test per le tracce dello stack
Test per la Cryptografia debole
Test per la sicurezza del livello di trasporto debole
Test per l'imbottitura Oracle
Test per informazioni sensibili inviate tramite canali non crittografati
Test per la crittografia debole
Business Test logici
Introduzione alla logica di business
Testare la convalida dei dati della logica di business
Testare la capacità di falsificare le richieste
Controlli di integrità dei test
Test per la temporizzazione del processo
Limiti del numero di volte in cui una funzione può essere utilizzata
Test per l'elusione dei flussi di lavoro
Testare le difese contro l'uso improprio delle applicazioni
Caricamento di prova di tipi di file imprevisti
Test di caricamento di file dannosi
Test lato client
Test per il cross-site scripting basato su DOM
Test per l'esecuzione di JavaScript
Test per iniezione HTML
Test per il reindirizzamento degli URL lato client
Test per iniezione CSS
Test per la manipolazione delle risorse sul lato client