Kerangka Materi
I. Pengantar Pemrograman Aman dan Keamanan Aplikasi Web
1. Lanskap Ancaman Aplikasi Web Modern
- Vektor serangan aplikasi web yang umum
- Risiko keamanan dalam aplikasi ASP.NET modern
- Peran pemrograman aman dalam pengembangan perangkat lunak
- Pengenalan OWASP Foundation dan sumber dayanya
2. Prinsip Pengembangan Perangkat Lunak yang Aman
- Keamanan melalui desain
- Pertahanan berlapis (Defense in depth)
- Prinsip privilese minimum
- Gagal dengan aman (Fail securely)
- Pengaturan bawaan yang aman
- Dasar-dasar pemodelan ancaman
II. Siklus Hidup Pengembangan yang Aman (SDL)
1. Siklus Hidup Pengembangan Perangkat Lunak yang Aman
- Keamanan di sepanjang siklus hidup pengembangan
- Kebutuhan keamanan
- Arsitektur dan desain yang aman
- Praktik pemrograman aman
- Pengujian dan validasi keamanan
- Peluncuran dan pemeliharaan yang aman
2. Penilaian Risiko dan Pemodelan Ancaman
- Identifikasi aset dan ancaman
- Analisis permukaan serangan
- Ikhtisar STRIDE
- Prioritisasi risiko keamanan
III. OWASP Top 10 untuk Aplikasi ASP.NET
1. Memahami OWASP Top 10
- Kendali Akses yang Rusak
- Kegagalan Kriptografi
- Injeksi
- Desain yang Tidak Aman
- Konfigurasi Keamanan yang Salah
- Komponen yang Rentan dan Ketinggalan Zaman
- Kegagalan Identifikasi dan Autentikasi
- Kegagalan Integritas Perangkat Lunak dan Data
- Kegagalan Logging dan Pemantauan Keamanan
- Pemalsuan Permintaan Sisi Server (SSRF)
2. Menerapkan Rekomendasi OWASP
- Teknik pemrograman aman
- Kendali preventif
- Praktik konfigurasi aman
- Contoh nyata dan demonstrasi
IV. Keamanan Autentikasi dan Otorisasi
1. Dasar-Dasar Autentikasi
- Mekanisme autentikasi dalam ASP.NET
- Keamanan kata sandi
- Autentikasi multi-faktor
- Manajemen sesi
- Manajemen identitas
2. Otorisasi dan Kendali Akses
- Otorisasi berbasis peran
- Otorisasi berbasis klaim
- Otorisasi berbasis kebijakan
- Pencegahan eskalasi privilese
- Perlindungan sumber daya sensitif
V. Mencegah Serangan Injeksi
1. Kerentanan Injeksi
- Injeksi SQL
- Injeksi Perintah
- Injeksi LDAP
- Injeksi XML
- Ikhtisar Injeksi NoSQL
2. Teknik Pemrograman Aman
- Kueri berparameter
- Validasi input
- Encoding output
- Pertimbangan keamanan ORM
- Praktik akses database yang aman
VI. Mencegah Cross-Site Scripting (XSS)
1. Memahami XSS
- XSS yang tersimpan (Stored XSS)
- XSS yang dipantulkan (Reflected XSS)
- XSS berbasis DOM
- Skenario serangan
2. Pencegahan XSS
- Encoding output
- Validasi input
- Content Security Policy (CSP)
- Pemrosesan HTML dan JavaScript yang aman
- Fitur keamanan ASP.NET untuk pencegahan XSS
VII. Mencegah Cross-Site Request Forgery (CSRF)
1. Memahami CSRF
- Bagaimana serangan CSRF bekerja
- Skenario serangan umum
- Dampak bisnis
2. Proteksi CSRF
- Tokens anti-forgery
- Cookie SameSite
- Manajemen sesi yang aman
- Mekanisme anti-forgery ASP.NET
VIII. Konfigurasi Aman Aplikasi ASP.NET
1. Fitur Keamanan ASP.NET
- Keamanan konfigurasi
- Header HTTP yang aman
- Konfigurasi HTTPS dan TLS
- Manajemen rahasia (secrets)
- Pemrosesan error yang aman
2. Melindungi Data Sensitif
- API perlindungan data
- Penyimpanan kredensial yang aman
- Dasar-dasar enkripsi
- Manajemen kunci
IX. Validasi Input dan Pemrosesan Data yang Aman
1. Validasi Input Pengguna
- Whitelisting versus blacklisting
- Validasi sisi server
- Pertimbangan validasi sisi klien
- Keamanan unggah file
2. Pemrosesan Data yang Aman
- Keamanan serialisasi
- Risiko deserialisasi
- Integritas data
- Praktik logging yang aman
X. Pengujian Penetrasi dan Verifikasi Keamanan
1. Metodologi Pengujian Penetrasi
- Perencanaan penilaian keamanan
- Identifikasi kerentanan
- Konsep eksploitasi
- Laporan temuan
2. Teknik Pengujian Keamanan
- Pengujian Keamanan Aplikasi Statis (SAST)
- Pengujian Keamanan Aplikasi Dinamis (DAST)
- Pengujian Keamanan Aplikasi Interaktif (IAST)
- Analisis dependensi dan komponen
- Uji kode manual
XI. Mengamankan Aplikasi ASP.NET
1. Menerapkan Praktik Pemrograman Aman
- Implementasi autentikasi yang aman
- Implementasi otorisasi yang aman
- Keamanan sesi
- Pemrosesan pengecualian
- Logging dan pemantauan
- Pertimbangan peluncuran yang aman
2. Praktik Terbaik Keamanan
- Standar pemrograman aman
- Manajemen dependensi
- Manajemen patch
- Perbaikan keamanan berkelanjutan
XII. Lokakarya Keamanan Praktis
1. Mengidentifikasi dan Mengeksploitasi Kerentanan Umum
- Analisis kode ASP.NET yang tidak aman
- Mengidentifikasi kerentanan OWASP Top 10
- Memahami teknik serangan
- Menilai keamanan aplikasi
2. Perbaikan Masalah Keamanan
- Menerapkan perbaikan pemrograman aman
- Validasi mitigasi
- Menguji aplikasi yang telah diperbaiki
- Latihan tinjauan pemrograman aman
XIII. Ringkasan dan Ulasan Kurs
1. Ulasan Konsep Utama
- Prinsip desain aman
- Strategi mitigasi OWASP Top 10
- Fitur keamanan ASP.NET
- Siklus hidup pengembangan yang aman
2. Diskusi Penutup
- Praktik terbaik pemrograman aman
- Membangun keamanan ke dalam tim pengembangan
- Sumber daya dan alat OWASP tambahan
- Pertanyaan & Jawaban dan langkah selanjutnya
Persyaratan
Pengalaman dengan ASP.NET
Pengalaman dalam pembuatan aplikasi web
Testimoni (5)
Pengenalan terhadap berbagai jenis perilaku tidak aman.
Zhongqi
Kursus - Secure Developer .NET (Inc OWASP)
Diterjemahkan Mesin
berpartisipasi dalam sesi satu lawan satu dengan Raymond sungguh mengagumkan, dia sangat baik dan responsif terhadap semua kebutuhan pelatihan saya.
Joshua
Kursus - Secure Developer .NET (Inc OWASP)
Diterjemahkan Mesin
Tingkat pengetahuan instruktur yang tinggi berarti kami mendapatkan wawasan yang sangat baik tentang topik-topik yang dibahas.
Dafydd - TATA Steel
Kursus - Secure Developer .NET (Inc OWASP)
Diterjemahkan Mesin
tautan referensi
Abraham Gonzalez - ATEB Servicios
Kursus - Secure Developer .NET (Inc OWASP)
Diterjemahkan Mesin
Pengetahuan instruktur tentang materi sangat baik, dan cara sesi disusun sehingga peserta dapat mengikuti demonstrasi benar-benar membantu meneguhkan pengetahuan tersebut, dibandingkan hanya duduk dan mendengarkan.
Jack Allan - RSM UK Management Ltd.
Kursus - Secure Developer .NET (Inc OWASP)
Diterjemahkan Mesin