Corso di formazione Secure Developer Java (Inc OWASP)
Questo corso copre i concetti e i principi di codifica sicura con Java attraverso la metodologia di testing dell'Open Web Application Security Project (OWASP). L'Open Web Application Security Project è una comunità online che crea articoli, metodologie, documentazione, strumenti e tecnologie a disposizione gratuita nel campo della sicurezza delle applicazioni web.
Struttura del corso
- comprendere le minacce e i vettori di attacco del web
- conoscere i principi di progettazione sicura
- comprendere OWASP I 10attacchi principali
- comprendere i problemi di autenticazione e autorizzazione
- sapere come prevenire il Cross-Site Scripting
- sapere come prevenire la falsificazione delle richieste cross-site
- comprendere il ciclo di sviluppo sicuro
- sapere come prevenire gli attacchi injection
- comprendere le protezioni in JDBC e JPA
- comprendere le metodologie di Penetration Testing
- Sapere come proteggere le applicazioni Java
Requisiti
- Esperienza con Java.
- Esperienza nella creazione di applicazioni web.
I corsi di formazione interaziendali richiedono più di 5 partecipanti.
Corso di formazione Secure Developer Java (Inc OWASP) - Prenotazione
Corso di formazione Secure Developer Java (Inc OWASP) - Richiesta
Secure Developer Java (Inc OWASP) - Richiesta di consulenza
Recensioni (3)
L'argomento è attuale e avevo bisogno di essere aggiornato
Damilano Marco - SIAP s.r.l.
Corso - Secure Developer Java (Inc OWASP)
Traduzione automatica
Era piuttosto esaustivo, l'informazione era chiara e concisa.
Sebastian-Daniel - BRD
Corso - Secure Developer Java (Inc OWASP)
Traduzione automatica
Numerosi esempi per ogni modulo e grande competenza del formatore.
Sebastian - BRD
Corso - Secure Developer Java (Inc OWASP)
Traduzione automatica
Corsi in Arrivo
Corsi relativi
Sicurezza di Rete e Comunicazione Sicura
21 oreL'implementazione di un'applicazione di rete sicura può essere difficile, anche per gli sviluppatori che potrebbero aver utilizzato in precedenza vari blocchi di crittografia (come la crittografia e le firme digitali). Al fine di far comprendere ai partecipanti il ruolo e l'uso di queste primitive crittografiche, in primo luogo viene fornita una solida base sui principali requisiti della comunicazione sicura – riconoscimento sicuro, integrità, riservatezza, identificazione remota e anonimato – presentando anche i problemi tipici che possono danneggiare questi requisiti insieme alle soluzioni del mondo reale.
Poiché un aspetto critico della sicurezza della rete è la crittografia, vengono discussi anche gli algoritmi crittografici più importanti in crittografia simmetrica, hashing, crittografia asimmetrica e accordo di chiave. Invece di presentare un background matematico approfondito, questi elementi vengono discussi dal punto di vista di uno sviluppatore, mostrando esempi tipici di casi d'uso e considerazioni pratiche relative all'uso delle criptovalute, come le infrastrutture a chiave pubblica. Vengono introdotti protocolli di sicurezza in molte aree della comunicazione sicura, con una discussione approfondita sulle famiglie di protocolli più utilizzate come IPSEC e SSL/TLS.
Vengono discusse le vulnerabilità tipiche delle criptovalute sia relative a determinati algoritmi crittografici che ai protocolli crittografici, come BEAST, CRIME, TIME, BREACH, FREAK, Logjam, Padding oracle, Lucky Thirteen, POODLE e simili, nonché l'attacco di temporizzazione RSA. In ogni caso, le considerazioni pratiche e le potenziali conseguenze sono descritte per ogni problema, ancora una volta, senza entrare in profondi dettagli matematici.
Infine, poiché la tecnologia XML è centrale per lo scambio di dati da parte di applicazioni in rete, vengono descritti gli aspetti di sicurezza di XML. Ciò include l'utilizzo di XML all'interno dei servizi Web e dei messaggi SOAP insieme a misure di protezione come la firma XML e la crittografia XML, nonché i punti deboli di tali misure di protezione e i problemi di sicurezza specifici di XML come XML injection, XML attacchi di entità esterne (XXE), XML bombe e XPath injection.
I partecipanti a questo corso dovranno
- Comprendere i concetti di base della sicurezza, della sicurezza informatica e della codifica sicura
- Comprendere i requisiti di una comunicazione sicura
- Scopri gli attacchi di rete e le difese a diversi livelli OSI
- Avere una conoscenza pratica della crittografia
- Comprendere i protocolli di sicurezza essenziali
- Comprendere alcuni recenti attacchi contro i sistemi crittografici
- Ottieni informazioni su alcune vulnerabilità correlate recenti
- Comprendere i concetti di sicurezza dei servizi Web
- Ottieni fonti e ulteriori letture sulle pratiche di codifica sicura
Pubblico
Sviluppatori, Professionisti
Programmazione sicura in C/C++
21 oreScrivere codice C e C++ sicuro richiede una rigorosa difesa contro l'exploitation malevola, la corruzione della memoria e l'aggiramento della convalida degli input. Questo corso esamina modelli di vulnerabilità come i buffer overflow, l'uso dopo la liberazione (use-after-free), gli overflow interi e la confusione di tipo. I partecipanti applicano linee guida per la programmazione sicura, strumenti di analisi statica e tecniche di programmazione difensiva per eliminare le debolezze, imporre la sanitizzazione degli input e fornire software robusto resiliente agli attacchi informatici.
Sicurezza Java Avanzata
21 oreAnche i programmatori Java esperti non padroneggiano necessariamente i vari servizi di sicurezza offerti da Java e non sono altrettanto a conoscenza delle diverse vulnerabilità rilevanti per le applicazioni web scritte in Java.
Il corso, oltre a introdurre i componenti di sicurezza di Standard Java Edition, affronta le questioni di sicurezza di Java Enterprise Edition (JEE) e dei web services. La discussione dei servizi specifici è preceduta dai fondamenti della crittografia e della comunicazione sicura. Numerosi esercizi riguardano le tecniche di sicurezza dichiarativa e programmatica in JEE, mentre viene discussa sia la sicurezza a livello di trasporto che end-to-end dei web services. L'utilizzo di tutti i componenti viene presentato attraverso diversi esercizi pratici, durante i quali i partecipanti possono sperimentare direttamente le API e gli strumenti discussi.
Il corso analizza inoltre e spiega i difetti di programmazione più frequenti e gravi del linguaggio e della piattaforma Java, nonché le vulnerabilità legate al web. Oltre ai bug tipici commessi dai programmatori Java, le vulnerabilità di sicurezza introdotte coprono sia le problematiche specifiche del linguaggio che quelle derivanti dall'ambiente di runtime. Tutte le vulnerabilità e gli attacchi correlati vengono dimostrati tramite esercizi di facile comprensione, seguiti dalle linee guida di codifica raccomandate e dalle possibili tecniche di mitigazione.
I partecipanti a questo corso
- Compranderanno i concetti di base della sicurezza, della sicurezza IT e della codifica sicura
- Impareranno le vulnerabilità web oltre l'OWASP Top Ten e sapranno come evitarle
- Compranderanno i concetti di sicurezza dei Web services
- Impareranno a utilizzare varie funzionalità di sicurezza dell'ambiente di sviluppo Java
- Avranno una comprensione pratica della crittografia
- Compranderanno le soluzioni di sicurezza di Java EE
- Impareranno quali sono gli errori di codifica tipici e come evitarli
- Riceveranno informazioni su alcune vulnerabilità recenti nel framework Java
- Acquisiranno conoscenze pratiche nell'uso degli strumenti di testing della sicurezza
- Riceveranno fonti e ulteriori letture sulle pratiche di codifica sicura
Destinatari
Sviluppatori
Programmazione in Groovy
21 oreApache Groovy è un linguaggio di programmazione dinamico per la JVM (Java Virtual Machine). Tra le sue caratteristiche si annoverano capacità di scripting, creazione di Linguaggi Specifici del Dominio (DSL), metaprogrammazione a runtime e a tempo di compilazione, nonché programmazione funzionale. Groovy è spesso utilizzato come integrazione per Java.
In questo corso guidato dal formatore, i partecipanti impareranno come programmare in Groovy seguendo la creazione di un'applicazione campione.
Pubblico
- Sviluppatori
Formato del corso
- Parte lezione, parte discussione, esercizi e ampie pratiche a mano
Programmazione con Groovy per Principianti
14 oreQuesto corso di formazione dal vivo con istruttore in Italia (online o in loco) è rivolto a sviluppatori di livello principiante che desiderano apprendere le basi di Groovy Programming.
Al termine di questa formazione, i partecipanti saranno in grado di:
- Comprendere i concetti di base della programmazione.
- Scrivi semplici script Groovy e utilizza Groovy funzionalità di base.
- Comprendere e applicare i principi di base della programmazione orientata agli oggetti utilizzando Groovy.
- Apprendere le tecniche di base di gestione degli errori per gestire gli errori di programmazione e le eccezioni comuni in Groovy.
Microservizi Java
21 oreQuesta formazione dal vivo condotta da un istruttore in Italia (online o in loco) è rivolta a sviluppatori di livello intermedio Java che desiderano progettare, sviluppare, distribuire e mantenere applicazioni basate su microservizi utilizzando framework Java come Spring Boot e Spring Cloud.
Al termine di questa formazione, i partecipanti saranno in grado di:
- Comprendere i principi e i vantaggi dell'architettura dei microservizi.
- Costruisci e distribuisci microservizi utilizzando Java e Spring Boot.
- Implementare la scoperta dei servizi, la gestione della configurazione e i gateway API.
- Proteggere, monitorare e scalare i microservizi in modo efficace.
- Distribuisci microservizi utilizzando Docker e Kubernetes.
Realizzare microservizi con Spring Boot, Docker e Kubernetes
21 oreQuesta formazione live condotta da un istruttore in Italia (disponibile online o in presenza) è dedicata agli sviluppatori di livello intermedio-avanzato che desiderano padroneggiare lo sviluppo di microservizi utilizzando Spring Boot, Docker e Kubernetes.
Al termine di questa formazione, i partecipanti saranno in grado di:
- Comprendere i principi dell'architettura a microservizi.
- Creare microservizi pronti per la produzione utilizzando Spring Boot.
- Comprendere il ruolo cruciale di Docker nella containerizzazione dei microservizi.
- Configurare cluster Kubernetes per distribuire e orchestrare i microservizi.
Quarkus per Sviluppatori
14 oreQuesto training guidato da istruttori, live Italia (online o in loco), è rivolto a sviluppatori che desiderano utilizzare Quarkus per costruire, testare e distribuire applicazioni pienamente potenziate da Java, ma con un minor utilizzo di risorse.
Al termine di questo training, i partecipanti saranno in grado di:
- Configurare l'ambiente di sviluppo necessario per iniziare a sviluppare applicazioni con Quarkus.
- Costruire, compilare e eseguire applicazioni in modalità nativa utilizzando GraalVM.
- Utilizzare gli strumenti e le estensioni di Quarkus per costruire applicazioni native utilizzando Maven.
- Containerizzare, eseguire e distribuire applicazioni con Docker.
Quarkus per lo Sviluppo di Applicazioni Java Native e Microservizi
40 oreQuesto training guidato dal docente (online o in sede) è rivolto a sviluppatori e architetti di livello intermedio o avanzato che desiderano sviluppare applicazioni Java native e microservizi utilizzando Quarkus con un uso ottimizzato della memoria e dei tempi di avvio.
Al termine di questo training, i partecipanti saranno in grado di:
- Sviluppare applicazioni Java native ad alto rendimento e leggere utilizzando Quarkus.
- Creare e distribuire servizi RESTful e architetture di microservizi.
- Utilizzare GraalVM per la compilazione nativa e ottimizzare i tempi di avvio ed efficienza della memoria.
- Imballare e containerizzare applicazioni per ambienti Kubernetes e OpenShift.
RabbitMQ con Java e Spring
14 oreQuesto corso di formazione dal vivo con istruttore in Italia (online o in loco) è rivolto ad architetti di software e sviluppatori web che desiderano utilizzare RabbitMQ come middleware di messaggistica e programmare in Java utilizzando Spring per creare applicazioni.
Al termine di questo corso di formazione, i partecipanti saranno in grado di:
- Utilizzare Java e Spring con RabbitMQ per creare applicazioni.
- Progetta sistemi asincroni basati su messaggi utilizzando RabbitMQ.
- Creare e applicare code, argomenti, scambi e associazioni in RabbitMQ
Spring Boot, React e Redux
14 oreQuesto corso di formazione guidato dall'instructore (online o in presenza) è rivolto a sviluppatori web che desiderano costruire applicazioni web front-end e back-end funzionali con Spring Boot, React e Redux.
Al termine di questo training, i partecipanti saranno in grado di:
- Costruire un'applicazione front-end con React e Redux.
- Creare API RESTful con Spring Boot.
- Sicureggiare servizi web con Spring Security e JWT web tokens.
Spring 5
21 oreQuesto training guidato da istruttori in Italia (online o in sede) è rivolto a sviluppatori Java che desiderano utilizzare il framework Spring 5 per sviluppare e distribuire applicazioni web aziendali.
Alla fine di questo training, i partecipanti saranno in grado di:
- Installare e configurare Spring 5.
- Comprendere ed implementare le ultime funzionalità di Spring 5.
- Accedere ai database con l'applicazione Spring.
- Utilizzare il nuovo framework web reattivo, WebFlow, per rendere un' applicazione reattiva.
- Integrare un'applicazione Spring con applicazioni Java EE legacy.
- Testare e distribuire un'applicazione Spring di livello aziendale.
Nozioni di base su Spring con Spring Boot 3.5.5 e Java 21
14 oreSpring è un framework Java completo che semplifica lo sviluppo di applicazioni enterprise fornendo un potente iniezione delle dipendenze, un'architettura modulare e opzioni di configurazione semplificate.
Questa formazione, guidata da un istruttore e svolta in diretta (online o in sede), è rivolta a sviluppatori Java di livello principiante che desiderano costruire moderne applicazioni web pronte per la produzione utilizzando l'ultima versione del framework Spring e di Spring Boot 3.5.5 con Java 21.
Al termine di questa formazione, i partecipanti saranno in grado di:
- Comprendere i principi fondamentali di Spring, inclusi IoC, DI e AOP.
- Configurare le applicazioni Spring utilizzando XML, annotazioni e JavaConfig.
- Sviluppare servizi RESTful con Spring Boot e JPA.
- Implementare operazioni CRUD, gestire le transazioni e amministrare la persistenza dei dati.
- Utilizzare funzionalità avanzate di Spring, tra cui profili, gestione delle eccezioni e serializzazione dei dati.
Formato del corso
- Breve introduzione teorica seguita da esercitazioni pratiche approfondite.
- Implementazione pratica mediante esempi reali.
- Discussione interattiva e risoluzione guidata dei problemi.
Opzioni di personalizzazione del corso
- Per richiedere una formazione personalizzata per questo corso, si prega di contattarci per organizzare i dettagli.
Spring WebFlux: Reactive Programming per Applicazioni Web Scalabili
35 oreSpring WebFlux è un modulo di programmazione reattiva all'interno del framework Spring progettato per creare applicazioni web non bloccanti e basate su eventi.
Questo training guidato dal formatore (online o in presenza) è rivolto a sviluppatori Java di livello iniziale o intermedio che desiderano costruire applicazioni scalabili e rispondenti utilizzando Spring WebFlux.
Al termine di questo training, i partecipanti saranno in grado di:
- Comprendere le basi della programmazione reattiva con Project Reactor.
- Costruire e testare API RESTful non bloccanti utilizzando Spring WebFlux.
- Integrare WebFlux con database e servizi esterni.
- Applicare pattern reattivi a scenari di applicazioni reali.
Formato del Corso
- Lezione interattiva e discussione.
- Numerosi esercizi e pratiche.
- Implementazione pratica in un ambiente di laboratorio live.
Opzioni di Personalizzazione del Corso
- Per richiedere un training personalizzato per questo corso, si prega di contattarci per organizzare.
Spring Webflux
14 oreQuesta formazione guidata da un istruttore, erogata in diretta in Italia (online o in sede), è rivolta agli sviluppatori che desiderano utilizzare WebFlux per sviluppare e distribuire applicazioni reattive.
Alla conclusione di questo percorso formativo, i partecipanti saranno in grado di:
- Installare e configurare Spring 5 e il framework WebFlux.
- Sviluppare applicazioni e servizi reattivi.