Contattataci

Struttura del corso

Fondamenti e strumentazione sicura per Python

  • Linea di base della sicurezza di Python 3.x: considerazioni sulla versione, standard PEP e pratiche di installazione sicura
  • Configurazione di un IDE professionale: estensioni di sicurezza per VS Code/PyCharm, linter (Flake8, Pylint) e debugger
  • Isolamento dell'ambiente: venv/conda, containerizzazione e configurazione dei laboratori riproducibile
  • Lab: Provisioning di un ambiente di lavoro Python sicuro con linting di sicurezza integrato e tracciamento delle dipendenze

Sicurezza del linguaggio core e gestione sicura dei dati

  • Tipi numerici e precisione: evitare attacchi di manipolazione in virgola mobile e casting sicuro dei tipi
  • Stringhe ed encoding: normalizzazione Unicode, validazione dell'encoding e prevenzione delle vulnerabilità di interpolazione
  • Liste, dizionari e collezioni: strutture dati sicure, mitigazione delle collisioni hash e serializzazione sicura
  • Regex e corrispondenza di pattern: creazione di espressioni regolari sicure (prevenzione di ReDoS), pattern di validazione dell'input
  • Lab: Riscrittura di codice per la gestione dei dati insicuro in implementazioni sicure, con validazione e hint di tipo

Controllo del flusso, funzioni e architettura sicura

  • Istruzioni ed espressioni Python: assegnazioni sicure, gestione delle eccezioni ed evitare modalità di fallimento silenzioso
  • Istruzioni if e regole di sintassi: logica condizionale sicura, prevenzione delle vulnerabilità di esecuzione dinamica (eval/exec/pickle)
  • Istruzioni di ripetizione: costrutti di loop sicuri, prevenzione dell'esaurimento delle risorse e gestione dei timeout
  • Funzioni ed incapsulamento: passaggio sicuro dei parametri, hint di tipo e modellazione delle minacce a livello di funzione
  • Lab: Refactoring del flusso di controllo vulnerabile in pattern di codice sicuri, verificabili e difensivi

Moduli, pacchetti e sicurezza basata sull'ambiente (Python skope-rules)

  • Sicurezza dell'importazione dei moduli: evitare importazioni circolari, risoluzione sicura dei pacchetti e isolamento degli spazi dei nomi
  • Gestione delle dipendenze: pip/requirements.txt, file di lock, sicurezza della catena di approvvigionamento e rilevamento di pacchetti vulnerabili
  • Gestione di segreti e credenziali: variabili d'ambiente, best practice per .env e prevenzione di segreti hardcoded
  • Implementazione di skope-rules: controlli di accesso limitati all'ambito, enforcement delle politiche in runtime e isolamento delle dipendenze
  • Lab: Audit dell'albero delle dipendenze di un progetto Python e implementazione di politiche di sicurezza basate sull'ambiente

Vulnerabilità specifiche di Python e mitigazione

  • OWASP Top 10 per applicazioni Python/WSGI/ASGI: iniezione, bypass dell'autenticazione, deserializzazione insicura, SSRF e traversamento di percorsi
  • I/O e gestione dei file sicuri: descrittori di file sicuri, prevenzione del traversamento delle directory ed esecuzione sandboxed
  • Sicurezza web e API in Python: gestione sicura delle richieste, codifica dell'output e protezioni a livello di framework (FastAPI/Flask/Django)
  • Lab: Identificazione e patching di vulnerabilità specifiche di Python in un'applicazione di esempio utilizzando alternative sicure

Test di sicurezza automatizzati e integrazione DevSecOps

  • Strumenti SAST per Python: Bandit, Semgrep e creazione di regole personalizzate per il rilevamento mirato delle vulnerabilità
  • Scansione DAST e delle dipendenze: integrazione di pip-audit, Safety e OWASP ZAP per la scoperta delle minacce in runtime
  • Sicurezza della pipeline CI/CD: flussi di lavoro GitHub Actions/GitLab CI per gate di sicurezza Python automatizzate e reporting di conformità
  • Metodologie di test sicure: modellazione delle minacce per microservizi Python, nozioni di base sul fuzzing e protezione in runtime
  • Lab: Costruzione di una pipeline di scansione automatica della sicurezza Python e interpretazione dei report di remediation

Progetto finale, revisione e percorsi di sviluppo sicuro

  • Simulazione del flusso di lavoro end-to-end per lo sviluppo Python sicuro
  • Revisione del codice per la sicurezza: identificazione di anti-pattern, applicazione di correzioni sicure e documentazione delle decisioni
  • Q&A, distribuzione di risorse (schede di riferimento per la codifica sicura, librerie di sicurezza Python, standard ufficiali, template per skope-rules)
  • Chiusura del corso e prossimi passi per la padronanza della sicurezza in Python

Requisiti

Conoscenze di base di qualsiasi linguaggio di programmazione
Conoscenze di base della sicurezza delle informazioni

 14 ore

Numero di Partecipanti


Prezzo per partecipante

Recensioni (2)

Corsi in Arrivo

Categorie relative