Your SlideShare is downloading. ×
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 gue...
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                                    ...
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!    opera...
“Conosci il tuo nemico” – Sun Tzu (L’arte della guerra)THREAT MODELING FOR DUMMIES
Minacce e Attacchi Web                                      Application                     DatabaseServer                ...
“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...
Authorization Bypass, Brute Force, Guessable Account, Default User and Password,                 User Enumeration, Browser...
Authorization Bypass, Brute Force, Guessable Account, Default User and Password,                 User Enumeration, Browser...
“ 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 ...
“sa dirmi cosa darebbe pur di mantenere viva tale interazione?” – Rama                       (The Matrix: Revolutions)    ...
Session Fixation, Session Hijacking/Cookie Stealing, Session ID Analysis (Crypto,                                        S...
Session Fixation, Session Hijacking/Cookie Stealing, Session ID Analysis (Crypto,                                        S...
Session Fixation, Session Hijacking/Cookie Stealing, Session ID Analysis (Crypto,                                        S...
“Quasi inconsciamente, scrisse con le dita sul tavolo coperto di polvere:                  2+2 = 5” – Winston Smith (1984)...
Business Logic Flow, Abuse of functionality, Insufficient Process ValidationAu      Id       Re        Su        Ct      N...
“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  ...
Injection, Overflow, Cross Site Scripting, HTTP Request/Response Smuggling/SplittingAu       Id      Re       Su        Ct...
“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...
EavesdroppingAu   Id   Re       Su      Ct    NR      Cf   Pr   It   Al                        SSL e cifrari              ...
EavesdroppingAu   Id      Re   Su     Ct    NR      Cf   Pr   It   Al                       Certificati            Firmati...
“Avrebbero potuto analizzare e mettere su carta, nei minimi particolari,tutto quello che sera fatto, sera detto e sera pen...
Non Repudiation, Log AttacksAu   Id   Re    Su      Ct      NR       Cf    Pr   It   Al                          I LogDevo...
Non Repudiation, Log AttacksAu   Id   Re   Su      Ct      NR       Cf    Pr   It   Al                        Errori      ...
simone.onofri@techub.itGRAZIE! Q/A?
Gerard :-[juanita.lagunaSymantec DWBCREDITS
ISECOM OSSTMMMicrosoft SDLOWASP Testing GuideOWASP Developer’s GuideOWASP Code Review GuideOWASP ASVSOWASP ASDRRIFERIMENTI
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

725

Published on

“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.

Published in: Technology
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
725
On Slideshare
0
From Embeds
0
Number of Embeds
3
Actions
Shares
0
Downloads
0
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

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

  1. 1. Hackers vs DevelopersSimone OnofriTechub S.p.A.
  2. 2. Critical ServicesSecurity
  3. 3. http://www.siatec.net/
  4. 4. Grazie!
  5. 5. Dalla parte degli sviluppatori tra OWASP e OSSTMMHACKERS VS DEVELOPERS
  6. 6. “In breve, questo è il metodo per organizzare le operazioni militari” – Sun Tzu (L’arte della guerra) OSSTMM
  7. 7. minaccia -> controllo (- limitazioni) -> bene
  8. 8. “security is about protection” Pete Herzog - No More of the Same Bad Security
  9. 9. Beni, attacchi e agenti di minaccia
  10. 10. Operational Security Operational Controlli Minacce Beni da eproteggere Attacchi Limitazioni! Limitazioni! Separazione tra beni e minacce
  11. 11. Visibility operations
  12. 12. Exposure! visibility - limitation
  13. 13. Access operations
  14. 14. Trustoperations
  15. 15. Vulnerability! Visibility/trust - limitation
  16. 16. Authentication controls – class a (interactive)
  17. 17. Indemnification controls – class a (interactive)
  18. 18. Resiliencecontrols – class a (interactive)
  19. 19. Subjugation controls – class a (interactive)
  20. 20. Continuitycontrols – class a (interactive)
  21. 21. Weakness!limitation – class a (interactive)
  22. 22. Non-Repudiation controls – class b (process)
  23. 23. Confidentiality controls – class b (process)
  24. 24. Privacycontrols – class b (process)
  25. 25. Integritycontrols – class b (process)
  26. 26. Alarmcontrols – class b (process)
  27. 27. Concern!limitation – class b (process)
  28. 28. 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
  29. 29. “Conosci il tuo nemico” – Sun Tzu (L’arte della guerra)THREAT MODELING FOR DUMMIES
  30. 30. 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
  31. 31. “Questo è Struttura” – Morpheus (The Matrix)HOST E INFRASTRUTTURA
  32. 32. GestioneCentralizzzata dei Log Non Repudiation
  33. 33. Bilanciatori di Carico Alta Affidabilità Ridondanza Backup Disaster Recovery Continuity
  34. 34. SecurityOperation Center (SOC) Alarm
  35. 35. Termini di utilizzo Avvisi Assicurazioni Indemnification
  36. 36. “Sì, ma tu chi sei?” – Neo a Seraph (The Matrix: Reloaded) AUTENTICAZIONE (AT)
  37. 37. 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
  38. 38. 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*)
  39. 39. 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
  40. 40. “ Conosco solo quello che devo sapere” – Rama (The Matrix: Revolutions) AUTORIZZAZIONE (AZ)
  41. 41. 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
  42. 42. “sa dirmi cosa darebbe pur di mantenere viva tale interazione?” – Rama (The Matrix: Revolutions) SESSION MANAGEMENT (S.M.)
  43. 43. 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
  44. 44. 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)
  45. 45. 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*)
  46. 46. “Quasi inconsciamente, scrisse con le dita sul tavolo coperto di polvere: 2+2 = 5” – Winston Smith (1984) BUSINESS LOGIC (B.L.)
  47. 47. 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
  48. 48. “never trust the user input, output too”DATA VALIDATION (INPUT/OUTPUT)
  49. 49. 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
  50. 50. 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
  51. 51. “Sei sicuro che questa linea è sicura?” – Trinity (The Matrix)TRANSPORT LAYER PROTECTION
  52. 52. 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*)
  53. 53. EavesdroppingAu Id Re Su Ct NR Cf Pr It Al SSL e cifrari Evitare Protocolli insicuri Utilizzare solo cifrari forti
  54. 54. EavesdroppingAu Id Re Su Ct NR Cf Pr It Al Certificati Firmati da entità riconosciute In corso di validità Devono corrispondere all’indirizzo
  55. 55. “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
  56. 56. 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 (!)
  57. 57. Non Repudiation, Log AttacksAu Id Re Su Ct NR Cf Pr It Al Errori Sempre generici lato client Dettagliati lato server
  58. 58. simone.onofri@techub.itGRAZIE! Q/A?
  59. 59. Gerard :-[juanita.lagunaSymantec DWBCREDITS
  60. 60. ISECOM OSSTMMMicrosoft SDLOWASP Testing GuideOWASP Developer’s GuideOWASP Code Review GuideOWASP ASVSOWASP ASDRRIFERIMENTI

×