Contattataci

Struttura del corso

I. Introduzione alla programmazione sicura e alla sicurezza delle applicazioni web

1. Panoramica sul panorama delle minacce moderne alle applicazioni web

  • Veicoli di attacco comuni alle applicazioni web
  • Rischi di sicurezza nelle applicazioni ASP.NET moderne
  • Il ruolo della programmazione sicura nello sviluppo del software
  • Introduzione alla Fondazione OWASP e alle sue risorse

2. Principi dello sviluppo software sicuro

  • Sicurezza per progettazione
  • Difesa in profondità
  • Privilegi minimi
  • Guasto sicuro
  • Impostazioni predefinite sicure
  • Fondamenti della modellazione delle minacce

II. Ciclo di vita dello sviluppo sicuro (SDL)

1. Ciclo di vita dello sviluppo software sicuro

  • Sicurezza lungo tutto il ciclo di vita dello sviluppo
  • Requisiti di sicurezza
  • Architettura e progettazione sicure
  • Pratiche di programmazione sicura
  • Test e validazione della sicurezza
  • Implementazione e manutenzione sicure

2. Valutazione del rischio e modellazione delle minacce

  • Identificazione di asset e minacce
  • Analisi della superficie di attacco
  • Panoramica di STRIDE
  • Prioritizzazione dei rischi di sicurezza

III. OWASP Top 10 per le applicazioni ASP.NET

1. Comprendere il Top 10 OWASP

  • Accesso non autorizzato
  • Insufficienze crittografiche
  • Iniezione
  • Progettazione non sicura
  • Configurazione di sicurezza errata
  • Componenti vulnerabili e obsoleti
  • Insufficienze nell'identificazione e nell'autenticazione
  • Insufficienze nell'integrità del software e dei dati
  • Insufficienze nel logging e nel monitoraggio della sicurezza
  • Server-Side Request Forgery (SSRF)

2. Applicazione delle raccomandazioni OWASP

  • Tecniche di programmazione sicura
  • Controlli preventivi
  • Pratiche di configurazione sicura
  • Esempi e dimostrazioni reali

IV. Sicurezza di autenticazione e autorizzazione

1. Fondamenti dell'autenticazione

  • Mecanismi di autenticazione in ASP.NET
  • Sicurezza delle password
  • Autenticazione multiframe
  • Gestione delle sessioni
  • Gestione delle identità

2. Autorizzazione e controllo degli accessi

  • Autorizzazione basata sui ruoli
  • Autorizzazione basata su claim
  • Autorizzazione basata su policy
  • Prevenire l'escalation dei privilegi
  • Proteggere le risorse sensibili

V. Prevenire gli attacchi di iniezione

1. Vulnerabilità di iniezione

  • Iniezione SQL
  • Iniezione di comandi
  • Iniezione LDAP
  • Iniezione XML
  • Panoramica dell'iniezione NoSQL

2. Tecniche di programmazione sicura

  • Query parametrizzate
  • Validazione degli input
  • Codifica degli output
  • Considerazioni sulla sicurezza ORM
  • Pratiche sicure per l'accesso al database

VI. Prevenire il Cross-Site Scripting (XSS)

1. Comprendere l'XSS

  • XSS memorizzato
  • XSS riflesso
  • XSS basato su DOM
  • Scenario di attacco

2. Prevenzione dell'XSS

  • Codifica degli output
  • Validazione degli input
  • Content Security Policy (CSP)
  • Gestione sicura di HTML e JavaScript
  • Funzionalità di sicurezza ASP.NET per la prevenzione dell'XSS

VII. Prevenire il Cross-Site Request Forgery (CSRF)

1. Comprendere il CSRF

  • Meccanismo degli attacchi CSRF
  • Comuni scenari di attacco
  • Impatto commerciale

2. Protezione CSRF

  • Token anti-falsificazione
  • Cookie SameSite
  • Gestione sicura delle sessioni
  • Mecanismi anti-falsificazione ASP.NET

VIII. Configurazione sicura delle applicazioni ASP.NET

1. Funzionalità di sicurezza ASP.NET

  • Sicurezza della configurazione
  • Intestazioni HTTP sicure
  • Configurazione di HTTPS e TLS
  • Gestione dei segreti
  • Gestione sicura degli errori

2. Protezione dei dati sensibili

  • API di protezione dei dati
  • Memorizzazione sicura delle credenziali
  • Fondamenti della crittografia
  • Gestione delle chiavi

IX. Validazione degli input e gestione sicura dei dati

1. Validazione degli input dell'utente

  • Whitelisting rispetto al blacklisting
  • Validazione lato server
  • Considerazioni sulla validazione lato client
  • Sicurezza del caricamento dei file

2. Elaborazione sicura dei dati

  • Sicurezza della serializzazione
  • Rischi di deserializzazione
  • Integrità dei dati
  • Pratiche sicure di logging

X. Test di penetrazione e verifica della sicurezza

1. Metodologia di test di penetrazione

  • Pianificazione delle valutazioni di sicurezza
  • Identificazione delle vulnerabilità
  • Concetti di sfruttamento
  • Reportistica dei risultati

2. Tecniche di test della sicurezza

  • Test statico della sicurezza delle applicazioni (SAST)
  • Test dinamico della sicurezza delle applicazioni (DAST)
  • Test interattivo della sicurezza delle applicazioni (IAST)
  • Analisi delle dipendenze e dei componenti
  • Ricerca manuale del codice

XI. Sicurezza delle applicazioni ASP.NET

1. Applicazione delle pratiche di programmazione sicura

  • Implementazione sicura dell'autenticazione
  • Implementazione sicura dell'autorizzazione
  • Sicurezza delle sessioni
  • Gestione delle eccezioni
  • Logging e monitoraggio
  • Considerazioni per l'implementazione sicura

2. Migliori pratiche di sicurezza

  • Standard di programmazione sicura
  • Gestione delle dipendenze
  • Gestione delle patch
  • Miglioramento continuo della sicurezza

XII. Laboratorio pratico sulla sicurezza

1. Identificare e sfruttare le vulnerabilità comuni

  • Analisi del codice ASP.NET non sicuro
  • Identificazione delle vulnerabilità OWASP Top 10
  • Comprensione delle tecniche di attacco
  • Valutazione della sicurezza delle applicazioni

2. Correzione dei problemi di sicurezza

  • Applicazione di correzioni di programmazione sicura
  • Validazione delle mitigazioni
  • Test delle applicazioni corrette
  • Esercizio di revisione della programmazione sicura

XIII. Riepilogo e revisione del corso

1. Revisione dei concetti chiave

  • Principi di progettazione sicura
  • Strategie di mitigazione del Top 10 OWASP
  • Funzionalità di sicurezza ASP.NET
  • Ciclo di vita dello sviluppo sicuro

2. Discussione finale

  • Migliori pratiche di programmazione sicura
  • Inserire la sicurezza nei team di sviluppo
  • Risorse e strumenti OWASP aggiuntivi
  • Domande e risposte e prossimi passi

Requisiti

Esperienza con ASP.NET
Esperienza nella creazione di applicazioni web

 21 ore

Numero di Partecipanti


Prezzo per partecipante

Recensioni (5)

Corsi in Arrivo

Categorie relative