Hubungi Kami

Kerangka Materi

1. Keamanan IT dan praktik penulisan kode yang aman

  • Prinsip-prinsip keamanan fundamental: Kerahasiaan, integritas, dan ketersediaan (CIA) dalam konteks aplikasi Java.
  • Siklus Pengembangan Perangkat Lunak yang Aman (SSDLC): Mengintegrasikan aspek keamanan mulai dari tahap persyaratan hingga penyebaran.
  • Paradigma Penulisan Kode yang Aman: Pendekatan pertahanan mendalam, penerapan prinsip hak akses minimal, serta pengaturan nilai default yang aman.
  • Klasifikasi kerentanan standar: Memahami CWE (Common Weakness Enumeration) dan OWASP.

2. Keamanan aplikasi web

  • Pembahasan mendalam mengenai OWASP Top Ten: Analisis rinci mengenai serangan Injeksi, masalah autentikasi yang tidak memadai, serta kebocoran data sensitif.
  • Cross-Site Scripting (XSS): Jenis-jenis serangan XSS seperti Reflected, Stored, dan DOM berbasis Java/JSP.
  • Cross-Site Request Forgery (CSRF): Mekanisme serangan serta cara penerapan token Anti-CSRF untuk mencegahnya.
  • Pengelolaan sesi: Pengamanan cookie, mekanisme pengaturan timeout, serta pemecahan masalah session fixation.
  • Keamanan API: Teknik pengamanan endpoint REST dan SOAP dari penyalahgunaan.

3. Keamanan layanan web

  • Layanan Web vs Aplikasi Web Tradisional: Perbedaan dalam permukaan serangan yang mungkin terjadi.
  • Keamanan Lapisan Transport: Pengaturan konfigurasi SSL/TLS pada klien dan server Java.
  • Keamanan Pesan: Jaminan integritas dan kerahasiaan data pada tingkat payload.
  • Standar Autentikasi: Implementasi OAuth 2.0, OpenID Connect, serta JSON Web Tokens (JWT).

4. Keamanan XML

  • Kerentanan dalam proses parsing XML: Cara mencegah serangan XML External Entity (XXE).
  • Validasi Skema XML: Praktik terbaik dalam penerapan pengaturan skema secara ketat.
  • Tanda Tangan Digital XML: Pemanfaatan tanda tangan untuk memastikan keaslian data.
  • Enkripsi XML: Pendekatan standar dalam mengamankan konten XML.

5. Dasar-dasar Keamanan Java

  • Arsitektur Keamanan Java: Paket java.security serta struktur penyedia layanan keamanan.
  • Penyedia Layanan Keamanan: Instalasi dan konfigurasi penyedia seperti Bouncy Castle.
  • Pengendalian Akses: Manajemen policy file, izin akses, serta perbedaan antara Security Manager versi lama dan yang modern.
  • Manajemen KeyStore: Cara membuat dan mengelola keystore maupun truststore untuk sertifikat digital.

6. Kriptografi Praktis

  • Algoritma kriptografi: Gambaran umum mengenai algoritma simetris (AES), asimetris (RSA, ECC), serta fungsi hash (SHA-256/512).
  • Pembangkit Angka Acak: Dampak negatif penggunaan java.util.Random dibandingkan dengan java.security.SecureRandom.
  • Manajemen Kunci: Strategi pembuatan, penyimpanan, serta pergantian kunci secara berkala.
  • Arsitektur Kriptografi Java (JCA): Penggunaan kelas Cipher, MessageDigest, dan Mac.
  • Ektensi Kriptografi Java (JCE): Penjelasan mengenai file kebijakan serta pengaturan batasan enkripsi yang tersedia.

7. Layanan Keamanan Java

  • Penerapan SSL/TLS pada Java: Penggunaan kelas SSLSocketFactory serta HttpsURLConnection.
  • Manajer Kepercayaan: Cara menyesuaikan mekanisme verifikasi kepercayaan dalam lingkungan PKI privat.
  • Autentikator: Pengaturan autentikasi secara programatik dengan memanfaatkan fungsi Authenticator.getDefault().
  • Parsing Sertifikat: Cara membaca dan menganalisis struktur sertifikat X.509 melalui kode pemrograman.

8. Keamanan Java EE

  • Keamanan Deklaratif: Pengaturan kontrol akses berbasis peran (RBAC) melalui berkas web.xml maupun anotasi kode.
  • Keamanan Programatik: Penerapan logika keamanan dengan memanggil fungsi HttpServletRequest.isUserInRole() serta getRemoteUser().
  • Layanan Autentikasi dan Otorisasi Java (JAAS): Pengaturan konfigurasi pada berkas login.conf serta penerapan kelas LoginModule secara spesifik.
  • Keamanan Servlet: Mekanisme pembatasan akses serta metode autentikasi yang didukung oleh kontainer, seperti FORM, BASIC, dan DIGEST.

9. Kesalahan Koding Umum dan Kerentanan Terkait

  • Deserialisasi yang Tidak Aman: Risiko penggunaan kelas ObjectInputStream serta cara mengatasi celah keamanannya.
  • Injeksi Perintah: Cara mencegah terjadinya serangan pada tingkat sistem operasi.
  • Pelanggaran Pengelolaan Jalur File: Kiat membersihkan input yang masuk untuk menghindari akses ke direktori asing.
  • Penyalahgunaan Fitur Refleksi: Ancaman dari penggunaan paket java.lang.reflect serta risiko pelanggaran batasan akses kode.
  • Kredensial yang Dikodekan Secara Tetap: Cara mendeteksi dan menghilangkan data rahasia dalam sumber kode.
  • Kesalahan Implementasi Kriptografi: Penggunaan modus enkripsi ECB, pemilihan kunci yang lemah, atau pengaturan IV statis yang tidak aman.

10. Sumber Pengetahuan Tambahan

  • Alat Analisis Statis: Penggunaan SonarQube, Checkmarx, dan Fortify dalam pemindaian kode secara otomatis.
  • Alat Analisis Dinamis: Gambaran umum mengenai Burp Suite serta OWASP ZAP.
  • Basis Data CVE: Cara memantau perkembangan terkini tentang kerentanan pada kerangka kerja Java.
  • Bacaan Rekomendasi: Daftar buku, dokumentasi resmi, serta daftar cek praktik penulisan kode yang aman.

Persyaratan

Tidak diperlukan prasyarat apa pun.

 21 Jam

Jumlah Peserta


Harga per Peserta

Testimoni (4)

Kursus Mendatang

Kategori Terkait