twitterlinkedinmail

Descrizione

Java è un linguaggio relativamente sicuro.

Non vi è alcuna manipolazione esplicita dei puntatori, e i limiti di array e stringhe vengono controllati automaticamente.

Inoltre, Java fornisce meccanismi di sicurezza completi e dettagliati che possono controllare l’accesso alle risorse sensibili.

La sicurezza dei programmi Java, tuttavia, può essere compromessa.

Ecco perchè è importante approfondire le tecniche di Secure Coding anche nell’ambito della programmazione Java

Indice argomenti

  • Le principali minacce e contromisure
  • – Misplaced Trust
    – Injection Attacks
    – Leaking Sensitive Data
    – Leaking Capabilities
    – Denial of Service
    – Serialization
    – Concurrency, Visibility, and Memory
    – Principle of Least Privilege
    – Security Managers
    – Class Loaders

  • OWASP Top 10 Most Critical Web Application Security Risks
  • – A1:2017-Injection
    – A2:2017-Broken Authentication
    – A3:2017-Sensitive Data Exposure
    – A4:2017-XML External Entities (XXE)
    – A5:2017-Broken Access Control
    – A6:2017-Security Misconfiguration
    – A7:2017-Cross-Site Scripting (XSS)
    – A8:2017-Insecure Deserialization
    – A9:2017-Using Components with Known Vulnerabilities
    – A10:2017-Insufficient Logging & Monitoring

  • Input e Data Sanitization
  • – Normalizzazione delle stringhe e dei percorsi file
    – Encodings dei files e Network I/O
    – Sanitization delle Regular Expressions
    – Verifica dei valori ritornati dai metodi
    – Verifica dei tipi numerici e degli operatori
    – Case Study: Proteggersi dagli attacchi XSS (Cross-Site Scripting)

  • Validazione delle Classi e dei Metodi
  • – Limiti all’estendibilità delle classi
    – Dichiarazioni Private, Protected e Public
    – Variabili Copia e Riferimento
    – Validazione dei parametri dei Metodi
    – Prevenire la chiamata di metodi overraidable
    – Prevenire le Exceptions nel logging dei dati

  • Threads Security
  • – Gestione dei Deadlocks
    – Operazioni atomiche
    – Visibilità delle variabili
    – Secure Joining dei Processi
    – Thread Pooling Security

  • Securing Input Output
  • – Proteggere i File Streams
    – Prevenire i Serialization Attacks
    – Quando utilizzare la Crittografia
    – Prevenire i Data Leaks
    – Sicurezza del Networking
    – SSLSocket vs Socket
    – CA Certificate Validation

  • Securing Microservices
  • – Microservices Secure Socket Layer
    – Micorservices Authentication and authorization con OAuth 2.0
    – Microservice API Gateway
    – API Access Tokens
    – Implicit grant e password credential grant
    – Client credentials grant

  • Docker Security
  • – Security and Limiting Containers
    – Securely Downloading Software in Dockerfiles
    – Securing Containers with Least Privilege
    – Back-up Signing Keys
    – Limit Container Networking
    – Remove setuid/setgid Binaries
    – Limit HW Resources (CPU, Memory, Filesystem)
    – Incident Response Best Practices

Contenuti disponibili

Di prossima pubblicazione

  • Validazione delle Classi e dei Metodi
  • Threads Security
  • Securing Input Output
  • Securing Microservices
  • Docker Security

Ricevi gli aggiornamenti