Contattataci

Struttura del corso

Fondamenti di Sicurezza Informatica e Programmazione Sicura

  • Fondamenti della modellazione delle minacce: metodologia STRIDE, superfici di attacco e vettori di escalation dei privilegi
  • Integrazione del controllo della sicurezza nel ciclo di sviluppo software (SDLC): approccio “shift left”, revisioni progettuali orientate alle minacce e principio della difesa in profondità
  • Principio del minimo privilegio, gestione sicura dei contratti tra componenti e configurazioni predefinite sicure
  • Esercitazione pratica: mappatura di un microservizio .NET rispetto a un modello delle minacce con individuazione dei controlli architetturali necessari

Sicurezza delle Applicazioni Web in ASP.NET

  • Pipeline di gestione delle richieste in ASP.NET, ordine di esecuzione dei middleware e punti di intercettazione dei filtri
  • Rischi legati al protocollo HTTP: injection negli header, tentativi di “request smuggling” e configurazioni errate di CORS
  • Gestione delle sessioni utente, persistenza dello stato e best practice per la sicurezza dei cookie
  • Implementazione di chiamate remote tra procedure e modelli ottimali per l’utilizzo di API esterne
  • Esercitazione: identificazione e correzione di vulnerabilità in una catena di middleware in un’applicazione ASP.NET campione

Architettura della Sicurezza in .NET e Servizi Integrati

  • Modello di sicurezza del CLR: gestione delle prove, dei permessi e l’evoluzione del sistema CAS (Code Access Security)
  • ASP.NET Core Identity, schemi di autenticazione e tecnologie di sicurezza basate su token (JWT, OAuth2, OpenID Connect)
  • API Data Protection: cifratura dei dati, rotazione delle chiavi crittografiche e serializzazione sicura
  • Primitivi crittografici in .NET: generazione di numeri casuali, hashing, cifratura simmetrica/asimmetrica e validazione delle firme digitali
  • Esercitazione pratica: implementazione di emissione sicura di token, rotazione delle chiavi crittografiche e protezione dei dati tra diversi microservizi

Errori Comuni nella Programmazione, Vulnerabilità e Contromisure Corrispondenti

  • Attacchi di deserializzazione, manipolazione del ViewState e problemi legati alla terminazione delle stringhe in .NET
  • Problematiche derivanti da configurazioni non corrette: file web.config/appsettings.json, esposizione involontaria di variabili d’ambiente e gestione impropria dei segreti
  • Vettori di injection: attacchi SQL, tramite comandi di sistema, XSS e LDAP nell’accesso ai dati e nel routing gestito in C#
  • Configurazioni predefinite poco sicure, codifica fissa dei parametri o gestione errata degli errori che possono portare a fughe di informazioni sensibili
  • Esercitazione: analisi indiretta di un modulo .NET vulnerabile, applicazione di pattern corretti e validazione delle soluzioni tramite strumenti statici e dinamici di analisi

Test della Sicurezza, Validazione e Miglioramento Continuo del Codice

  • Static Application Security Testing (SAST): strumenti come Roslyn analyzers e Security Code Scan, nonché loro integrazione nei processi di CI/CD
  • Dynamic Application Security Testing (DAST): utilizzo di OWASP ZAP e Burp Suite per analisi automatizzate delle vulnerabilità del sistema in esecuzione
  • Tecniche di protezione a runtime: strumenti tipo Application Guardrails, pratiche per la sicurezza della memoria e registrazione degli eventi conforme alle policy di sicurezza
  • Gestione corretta dei patch, tracciamento delle dipendenze software e adeguata risposta ai bollettini di sicurezza rilasciati per .NET e ASP.NET
  • Esercitazione: creazione di controlli preventivi di sicurezza sia prima dell’inoltro dei commit che nei processi automatizzati di pipeline per un progetto .NET

Fonti di Conoscenza e Ecossistema dello Sviluppo Sicuro

  • Linee guida ufficiali Microsoft sulla sicurezza, documentazione tecnica relativa a .NET e riferimenti specifici per la protezione delle applicazioni ASP.NET
  • Dati sui CVE, feed informativi relativi alle minacce e procedure di disclosure responsabile dei pacchetti open source
  • Ecosistemi di librerie sicure: strumenti PGP, servizi crittografici dedicati, framework per l’autenticazione conformi a requisiti normativi e implementazioni crittografiche certificate
  • Progettazione e diffusione interna di standard per la programmazione sicura, formazione degli sviluppatori e creazione di programmi di “security champions”
  • Esercitazione: costruzione personalizzata di un set di strumenti utili per lo sviluppo sicuro ed elaborazione di un piano di monitoraggio continuativo delle minacce

Requisiti

  • Conoscenza approfondita della programmazione in C# e dei fondamenti del framework .NET
  • Familiarità con lo sviluppo web tramite ASP.NET (Razor Pages, MVC o Minimal API)
  • Comprensione basilare di HTTP, routing e concetti relativi ai server web
  • Non è richiesta alcuna certificazione specifica in materia di sicurezza, ma si presuppone esperienza pratica nello sviluppo software in produzione
 14 ore

Numero di Partecipanti


Prezzo per partecipante

Recensioni (5)

Corsi in Arrivo

Categorie relative