• Save
Hackers vs developers: dalla parte degli sviluppatori web, mobile e non solo, tra OWASP e OSSTMM
Upcoming SlideShare
Loading in...5
×
 

Hackers vs developers: dalla parte degli sviluppatori web, mobile e non solo, tra OWASP e OSSTMM

on

  • 806 views

“Security is about protection” Pete Herzog Sicurezza è “protezione”, sintetizza il creatore dell’OSSTMM. Quando sviluppiamo, i nostri “beni” vanno protetti dalle “minacce” tramite ...

“Security is about protection” Pete Herzog Sicurezza è “protezione”, sintetizza il creatore dell’OSSTMM. Quando sviluppiamo, i nostri “beni” vanno protetti dalle “minacce” tramite alcuni “controlli”. Il talk spiegherà, tramite un linguaggio semplice ed esempi, come proteggere Autenticazione/Autorizzazione, Sessione, Input/Output, Errori/Log, Dati, Comunicazione, Processi/Logica secondo andando in profondità con l’approccio OSSTMM nei temi di OWASP: capire i controlli più efficaci e convenienti.

Statistics

Views

Total Views
806
Views on SlideShare
663
Embed Views
143

Actions

Likes
1
Downloads
0
Comments
0

7 Embeds 143

http://www.codemotion.it 48
http://presentz.org 43
http://roma2012.codemotion.it 27
http://www.linkedin.com 11
http://roma.codemotion.it 9
http://codemotion.loc 3
http://dev.presentz.org 2
More...

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    Hackers vs developers: dalla parte degli sviluppatori web, mobile e non solo, tra OWASP e OSSTMM Hackers vs developers: dalla parte degli sviluppatori web, mobile e non solo, tra OWASP e OSSTMM Presentation Transcript

    • Hackers vs DevelopersSimone OnofriTechub S.p.A.
    • Critical ServicesSecurity
    • http://www.siatec.net/
    • Grazie!
    • Dalla parte degli sviluppatori tra OWASP e OSSTMMHACKERS VS DEVELOPERS
    • “In breve, questo è il metodo per organizzare le operazioni militari” – Sun Tzu (L’arte della guerra) OSSTMM
    • minaccia -> controllo (- limitazioni) -> bene
    • “security is about protection” Pete Herzog - No More of the Same Bad Security
    • Beni, attacchi e agenti di minaccia
    • Operational Security Operational Controlli Minacce Beni da eproteggere Attacchi Limitazioni! Limitazioni! Separazione tra beni e minacce
    • Visibility operations
    • Exposure! visibility - limitation
    • Access operations
    • Trustoperations
    • Vulnerability! Visibility/trust - limitation
    • Authentication controls – class a (interactive)
    • Indemnification controls – class a (interactive)
    • Resiliencecontrols – class a (interactive)
    • Subjugation controls – class a (interactive)
    • Continuitycontrols – class a (interactive)
    • Weakness!limitation – class a (interactive)
    • Non-Repudiation controls – class b (process)
    • Confidentiality controls – class b (process)
    • Privacycontrols – class b (process)
    • Integritycontrols – class b (process)
    • Alarmcontrols – class b (process)
    • Concern!limitation – class b (process)
    • category opesec limitations Visibility Exposure! operations Access Vulnerability! Trust Authentication Indemnification Class A Resiliance Weakness! Subgugation Continuitycontrols Non-Repudiation Confidentiality Class B Privacy Concern! Integrity Alarm Anomalies OSSTMM - Limitations mapping
    • “Conosci il tuo nemico” – Sun Tzu (L’arte della guerra)THREAT MODELING FOR DUMMIES
    • Minacce e Attacchi Web Application DatabaseServer Server server Application S.M. HTTP/CM D.V. (I/O)T.L.P D.A. B.L. P.L. AT Data AZE.H.A.L E.H.A.L E.H.A.L Host Host Host Beni Struttura tipo di un’applicazione
    • “Questo è Struttura” – Morpheus (The Matrix)HOST E INFRASTRUTTURA
    • GestioneCentralizzzata dei Log Non Repudiation
    • Bilanciatori di Carico Alta Affidabilità Ridondanza Backup Disaster Recovery Continuity
    • SecurityOperation Center (SOC) Alarm
    • Termini di utilizzo Avvisi Assicurazioni Indemnification
    • “Sì, ma tu chi sei?” – Neo a Seraph (The Matrix: Reloaded) AUTENTICAZIONE (AT)
    • Authorization Bypass, Brute Force, Guessable Account, Default User and Password, User Enumeration, Browser Cache ManagementAu Id Re Su Ct NR Cf Pr It Al L’autenticazione “di per se” Implementata lato server Sempre verificata dove necessario Non bypassabile (DV*) Protetta nella comunicazione (TLP*) Errori Gestiti e operazioni loggate (EHAL*) Resiliente
    • Authorization Bypass, Brute Force, Guessable Account, Default User and Password, User Enumeration, Browser Cache ManagementAu Id Re Su Ct NR Cf Pr It AlForm di autenticazione e di altre operazioni sulle credenziali Protetti lato client (autocomplete=off) Usare limiti/CAPTCHA Protetti nella comunicazione (TLP*) Errori generici (EHAL*)
    • Authorization Bypass, Brute Force, Guessable Account, Default User and Password, User Enumeration, Browser Cache ManagementAu Id Re Su Ct NR Cf Pr It Al Credenziali Proteggere la memorizzazione (DP*) Bloccare dopo tot. tentativi di accesso Evitare account di default (user:pass) Essere complesse (anche se generate di default)Avere una durata minima e massima, con una storia
    • “ Conosco solo quello che devo sapere” – Rama (The Matrix: Revolutions) AUTORIZZAZIONE (AZ)
    • Authorization Bypass (horizontal/vertical), Path TraversalAu Id Re Su Ct NR Cf Pr It Al L’autorizzazione su Risorse (file/servizi/pagine/dati)Implementata e verificata lato server (in caso con token mono- uso) Sempre verificata dove necessario Proteggere anche le policy Non bypassabile (DV*) Protetta nella comunicazione (TLP*) Errori Gestiti e operazioni loggate (EHAL*) Resiliente
    • “sa dirmi cosa darebbe pur di mantenere viva tale interazione?” – Rama (The Matrix: Revolutions) SESSION MANAGEMENT (S.M.)
    • Session Fixation, Session Hijacking/Cookie Stealing, Session ID Analysis (Crypto, Statistical)Au Id Re Su Ct NR Cf Pr It Al La sessione “di per se” Sempre verificata Implementare token anti-CSRF Non permettere sessioni contemporanee* Sessione legata all’IP/UA* Distrutta per timeout relativo e assoluto Errori Gestiti e operazioni loggate (EHAL*) Resiliente
    • Session Fixation, Session Hijacking/Cookie Stealing, Session ID Analysis (Crypto, Statistical)Au Id Re Su Ct NR Cf Pr It Al Identificativo di Sessione (SID) Abbastanza Complesso Cambiato dopo gli eventi di autenticazione NON deve essere mostrato (es. GET, Log, Errori)
    • Session Fixation, Session Hijacking/Cookie Stealing, Session ID Analysis (Crypto, Statistical)Au Id Re Su Ct NR Cf Pr It Al Cookie Attributi impostatiHttponly, secure, path, domain, expires/max-age Protetto nella comunicazione (TLP*)
    • “Quasi inconsciamente, scrisse con le dita sul tavolo coperto di polvere: 2+2 = 5” – Winston Smith (1984) BUSINESS LOGIC (B.L.)
    • Business Logic Flow, Abuse of functionality, Insufficient Process ValidationAu Id Re Su Ct NR Cf Pr It Al La logica “di per se” (limiti/flussi) Verificare lato server i flussi Verificare lato server i limitiEvitare l’esposizione di parametri sensibili lato client (anche DV*) Errori Gestiti e operazioni loggate (EHAL*) Resiliente
    • “never trust the user input, output too”DATA VALIDATION (INPUT/OUTPUT)
    • Injection, Cross Site Scripting, HTTP Request/Response Smuggling/SplittingAu Id Re Su Ct NR Cf Pr It Al La Data Validation “di per se” Implementata lato server e lato client, se necessario* Errori Gestiti e operazioni loggate (EHAL*) Resiliente
    • Injection, Overflow, Cross Site Scripting, HTTP Request/Response Smuggling/SplittingAu Id Re Su Ct NR Cf Pr It Al Dati e File inviati da e verso l’applicazionePresente parametri per destinati ad intepreti (SQL, XML, Xpath, Xquery, HTML) Presente per parametri usati per calcoli od operazioni (Overflow) Presente per parametri che utilizzano URL (Redirect/Iframe) Presente per i file (nome, estensione, contenuto e antivirus) Utilizzare interpreti parametrici (API) Verificare anche le richieste con metodi HTTP* Specificare sempre la codifica in I/O
    • “Sei sicuro che questa linea è sicura?” – Trinity (The Matrix)TRANSPORT LAYER PROTECTION
    • EavesdroppingAu Id Re Su Ct NR Cf Pr It Al La comunicazioneVanno protetti tutti i dati sensibili (credenziali, id di sessione, cookie, dati degli utenti…) Resiliente Errori Gestiti e Loggati (EHAL*)
    • EavesdroppingAu Id Re Su Ct NR Cf Pr It Al SSL e cifrari Evitare Protocolli insicuri Utilizzare solo cifrari forti
    • EavesdroppingAu Id Re Su Ct NR Cf Pr It Al Certificati Firmati da entità riconosciute In corso di validità Devono corrispondere all’indirizzo
    • “Avrebbero potuto analizzare e mettere su carta, nei minimi particolari,tutto quello che sera fatto, sera detto e sera pensato” – Winston Smith (1984) ERROR HANDLING AND LOGGING
    • Non Repudiation, Log AttacksAu Id Re Su Ct NR Cf Pr It Al I LogDevono contenere informazioni utili a tracciare le richieste (sia fallite che non) Vanno verificati i dati inseriti nei log (DV*) Resilienza Errori Gestiti e Loggati (!)
    • Non Repudiation, Log AttacksAu Id Re Su Ct NR Cf Pr It Al Errori Sempre generici lato client Dettagliati lato server
    • simone.onofri@techub.itGRAZIE! Q/A?
    • Gerard :-[juanita.lagunaSymantec DWBCREDITS
    • ISECOM OSSTMMMicrosoft SDLOWASP Testing GuideOWASP Developer’s GuideOWASP Code Review GuideOWASP ASVSOWASP ASDRRIFERIMENTI