Schița de curs
I. Introducere în codarea securizată și securitatea aplicațiilor web
1. Peisajul modern al amenințărilor pentru aplicațiile web
- Vectori comuni de atac împotriva aplicațiilor web
- Riscuri de securitate în aplicațiile ASP.NET moderne
- Rolul codării securizate în dezvoltarea software-ului
- Introducere în Fundația OWASP și resursele sale
2. Principii de dezvoltare a software-ului securizat
- Securitatea prin design
- Apărarea în adâncime
- Privilegiu minim
- Eșec securizat
- Valorile implicite securizate
- Bazele modelării amenințărilor
II. Ciclul de viață al dezvoltării securizate (SDL)
1. Ciclul de viață al dezvoltării software-ului securizat
- Securitatea pe tot parcursul ciclului de viață al dezvoltării
- Requerimentele de securitate
- Arhitectura și design-ul securizat
- Practici de codare securizată
- Testarea și validarea securității
- Implementarea și mentenanța securizată
2. Evaluarea riscurilor și modelarea amenințărilor
- Identificarea activelor și amenințărilor
- Analiza suprafeței de atac
- Panoramic STRIDE
- Prioritizarea riscurilor de securitate
III. OWASP Top 10 pentru aplicațiile ASP.NET
1. Înțelegerea OWASP Top 10
- Controlul accesului întrerupt
- Eșecuri criptografice
- Injecție
- Design nesecurizat
- Configurare nesecurizată
- Componente vulnerabile și depășite
- Eșecuri de identificare și autentificare
- Eșecuri de integritate a software-ului și a datelor
- Eșecuri în jurnalizarea și monitorizarea securității
- Falsificarea cererii server-side (SSRF)
2. Aplicarea recomandărilor OWASP
- Tehnici de codare securizată
- Controale preventive
- Practici de configurare securizată
- Exemple și demonstrații din lumea reală
IV. Securitatea autentificării și autorizării
1. Bazele autentificării
- Mecanisme de autentificare în ASP.NET
- Securitatea parolelor
- Autentificarea multi-factorială
- Gestionarea sesiunilor
- Gestionarea identității
2. Autorizare și control al accesului
- Autorizare bazată pe roluri
- Autorizare bazată pe reclamații (claims)
- Autorizare bazată pe politici
- Prevenirea creșterii privilegiilor
- Protejarea resurselor sensibile
V. Prevenirea atacurilor de injecție
1. Vulnerabilități de injecție
- Injecția SQL
- Injecția de comenzi
- Injecția LDAP
- Injecția XML
- Panoramic al injecției NoSQL
2. Tehnici de codare securizată
- Câmpuri parametrizați (Parameterized queries)
- Validarea intrării
- Încodarea ieșirii
- Considerații privind securitatea ORM
- Practici de accesare a bazei de date în siguranță
VI. Prevenirea scriptării între site-uri (XSS)
1. Înțelegerea XSS
- XSS stocat
- XSS reflectat
- XSS bazat pe DOM
- Scenarii de atac
2. Prevenirea XSS
- Încodarea ieșirii
- Validarea intrării
- Politica de securitate a conținutului (CSP)
- Gestionarea securizată a HTML și JavaScript
- Caracteristici de securitate ASP.NET pentru prevenirea XSS
VII. Prevenirea falsificării cererii între site-uri (CSRF)
1. Înțelegerea CSRF
- Cum funcționează atacurile CSRF
- Scenarii comune de atac
- Impactul asupra afacerii
2. Protecția împotriva CSRF
- Jetoane anti-falsificare
- Cookies SameSite
- Gestionarea securizată a sesiunilor
- Mecanisme anti-falsificare ASP.NET
VIII. Configurarea securizată a aplicațiilor ASP.NET
1. Caracteristicile de securitate ASP.NET
- Securitatea configurației
- Antete HTTP securizate
- Configurarea HTTPS și TLS
- Gestionarea secretelor
- Gestionarea erorilor securizată
2. Protejarea datelor sensibile
- API-uri de protecție a datelor
- Stocarea securizată a acreditărilor
- Bazele criptării
- Gestionarea cheilor
IX. Validarea intrării și gestionarea securizată a datelor
1. Validarea intrării utilizatorului
- Listă albă versus listă neagră
- Validare pe server
- Considerații privind validarea pe client
- Securitatea încărcării fișierelor
2. Procesarea securizată a datelor
- Securitatea serializării
- Riscurile de deserializare
- Integritatea datelor
- Practici de jurnalizare securizată
X. Testarea de penetrare și verificarea securității
1. Metodologia testării de penetrare
- Planificarea evaluărilor de securitate
- Identificarea vulnerabilităților
- Concepte de exploitare
- Raportarea constatărilor
2. Tehnici de testare a securității
- Testarea de securitate statică a aplicațiilor (SAST)
- Testarea dinamică a securității aplicațiilor (DAST)
- Testarea interactivă a securității aplicațiilor (IAST)
- Analiza dependențelor și componentelor
- Revisuirea manuală a codului
XI. Securizarea aplicațiilor ASP.NET
1. Aplicarea practicilor de codare securizată
- Implementarea autentificării securizate
- Implementarea autorizării securizate
- Securitatea sesiunilor
- Gestionarea excepțiilor
- Jurnalizarea și monitorizarea
- Considerații privind implementarea securizată
2. Cele mai bune practici de securitate
- Standarde de codare securizată
- Gestionarea dependențelor
- Gestionarea patch-urilor
- Îmbunătățirea continuă a securității
XII. Atelier practic de securitate
1. Identificarea și exploatarea vulnerabilităților comune
- Analiza codului ASP.NET nesecurizat
- Identificarea vulnerabilităților OWASP Top 10
- Înțelegerea tehnicilor de atac
- Evaluarea securității aplicației
2. Remedierea problemelor de securitate
- Aplicarea remedierilor de codare securizată
- Validarea mitigation-elor
- Testarea aplicațiilor remediate
- Exercițiu de revisuire a codării securizate
XIII. Rezumat și revizuirea cursului
1. Revizuirea conceptelor cheie
- Principiile design-ului securizat
- Strategii de atenuare OWASP Top 10
- Caracteristicile de securitate ASP.NET
- Ciclul de viață al dezvoltării securizate
2. Discuția finală
- Cele mai bune practici de codare securizată
- Integrarea securității în echipele de dezvoltare
- Resurse și instrumente OWASP suplimentare
- Întrebări și răspunsuri și pașii următori
Cerințe
Experiență cu ASP.NET
Experiență în crearea de aplicații web
Mărturii (5)
Prezentări ale multor tipuri diferite de comportamente ne_sigure.
Zhongqi
Curs - Secure Developer .NET (Inc OWASP)
Tradus de catre o masina
Având o sesiune individuală cu Raymond a fost amazing, el a fost foarte atent și responsiv la toate nevoile mele de instruire.
Joshua
Curs - Secure Developer .NET (Inc OWASP)
Tradus de catre o masina
Nivelul ridicat de cunoștințe al instrucționarului ne-a permis să obținem o înțelegere foarte bună a temelor abordate.
Dafydd - TATA Steel
Curs - Secure Developer .NET (Inc OWASP)
Tradus de catre o masina
linkurile de referință
Abraham Gonzalez - ATEB Servicios
Curs - Secure Developer .NET (Inc OWASP)
Tradus de catre o masina
Cunoașterea instrctorului în privința subiectului a fost excelentă, iar modul în care sesiunile erau structurate pentru ca audiența să poată urma demonstrațiile a ajutat cu adevărat la consolarea acestei cunoștințe, față de a doar sta și asculta.
Jack Allan - RSM UK Management Ltd.
Curs - Secure Developer .NET (Inc OWASP)
Tradus de catre o masina