Teaching Material · 16 Pertemuan

Keamanan dalam Perangkat Lunak

Materi pembelajaran berbasis secure SDLC, OWASP Top 10:2025, OWASP ASVS 5.0.0, dan NIST SSDF 1.1.

Pertemuan 1 · Fondasi

Pengantar Keamanan Perangkat Lunak

Membangun pemahaman bahwa keamanan merupakan atribut kualitas perangkat lunak dan tanggung jawab sepanjang siklus hidup, bukan fitur tambahan pada akhir pengembangan.

Capaian Pembelajaran

  • Menjelaskan perbedaan kerentanan, ancaman, risiko, eksploitasi, dan kontrol keamanan.
  • Mengidentifikasi dampak keamanan terhadap kerahasiaan, integritas, dan ketersediaan.
  • Menjelaskan peran pengembang dalam menghasilkan perangkat lunak yang aman secara bawaan.

Materi Inti

  • Terminologi dasar application security dan software security
  • CIA triad, aset, aktor ancaman, attack surface, dan trust boundary
  • Security by design, secure by default, dan defense in depth
  • Gambaran OWASP Top 10:2025, OWASP ASVS 5.0.0, dan NIST SSDF 1.1
  • Etika, ruang lingkup, dan aturan laboratorium keamanan

Aktivitas Pembelajaran

Analisis singkat sebuah insiden perangkat lunak: petakan aset, kelemahan, ancaman, dampak, dan kontrol yang seharusnya tersedia.

Luaran

Risk canvas satu halaman untuk aplikasi studi kasus yang dipilih kelompok.

Asesmen

Kuis diagnostik dan ketepatan pemetaan istilah keamanan pada studi kasus.

Referensi Utama

  1. OWASP Top 10:2025
  2. OWASP Application Security Verification Standard 5.0.0
  3. NIST SP 800-218 — Secure Software Development Framework 1.1
  4. CISA — Secure by Design
Pertemuan 2 · Fondasi

Secure SDLC dan Kebutuhan Keamanan

Mengintegrasikan aktivitas keamanan ke tahap perencanaan, analisis, desain, implementasi, pengujian, rilis, dan pemeliharaan perangkat lunak.

Capaian Pembelajaran

  • Memetakan praktik NIST SSDF ke proses pengembangan perangkat lunak.
  • Menulis kebutuhan keamanan yang spesifik, terukur, dan dapat diuji.
  • Menentukan acceptance criteria keamanan untuk sebuah user story.

Materi Inti

  • Perbedaan SDLC tradisional, secure SDLC, dan DevSecOps
  • Kelompok praktik NIST SSDF: Prepare, Protect, Produce, dan Respond
  • Security requirements, misuse case, dan abuse case
  • Pemilihan tingkat verifikasi menggunakan OWASP ASVS
  • Definition of Done dan security gate

Aktivitas Pembelajaran

Mengubah kebutuhan fungsional login, unggah berkas, dan administrasi pengguna menjadi kebutuhan keamanan serta acceptance criteria.

Luaran

Security backlog berisi minimal delapan kebutuhan yang dapat diuji.

Asesmen

Rubrik kualitas kebutuhan: jelas, relevan terhadap risiko, dapat diverifikasi, dan memiliki pemilik.

Referensi Utama

  1. NIST SP 800-218 — Secure Software Development Framework 1.1
  2. OWASP Application Security Verification Standard 5.0.0
  3. CISA — Secure by Design
Pertemuan 3 · Analisis & Desain

Threat Modeling dan Attack Surface

Menerapkan proses threat modeling yang berulang untuk memahami sistem, mengidentifikasi skenario serangan, menentukan mitigasi, dan memvalidasi hasilnya.

Capaian Pembelajaran

  • Membuat data flow diagram yang menunjukkan aset dan trust boundary.
  • Mengidentifikasi ancaman menggunakan STRIDE dan abuse case.
  • Memprioritaskan mitigasi berdasarkan kemungkinan dan dampak.

Materi Inti

  • Empat pertanyaan inti threat modeling
  • Data flow diagram: entitas, proses, data store, aliran data, dan trust boundary
  • STRIDE: spoofing, tampering, repudiation, information disclosure, denial of service, elevation of privilege
  • Attack surface analysis dan entry point inventory
  • Risk treatment: mitigate, avoid, transfer, dan accept

Aktivitas Pembelajaran

Workshop threat modeling pada aplikasi studi kasus dan peer review silang antarkelompok.

Luaran

DFD, threat register, prioritas risiko, dan rencana mitigasi awal.

Asesmen

Kelengkapan model, relevansi ancaman, dan keterujian mitigasi.

Referensi Utama

  1. OWASP Threat Modeling Cheat Sheet
  2. OWASP Application Security Verification Standard 5.0.0
Pertemuan 4 · Analisis & Desain

Prinsip Desain dan Arsitektur Aman

Mengevaluasi keputusan arsitektur menggunakan prinsip least privilege, fail-safe defaults, complete mediation, separation of duties, dan minimisasi attack surface.

Capaian Pembelajaran

  • Menilai arsitektur berdasarkan prinsip desain keamanan.
  • Merancang kontrol berlapis pada setiap trust boundary.
  • Mendokumentasikan asumsi keamanan dan keputusan arsitektur.

Materi Inti

  • Least privilege, deny by default, dan complete mediation
  • Defense in depth dan separation of duties
  • Minimize attack surface dan economy of mechanism
  • Secure defaults, tenant isolation, dan data segregation
  • Security architecture decision record dan diagram kontrol

Aktivitas Pembelajaran

Architecture review terhadap rancangan monolitik atau layanan terdistribusi dengan fokus pada batas kepercayaan dan jalur data sensitif.

Luaran

Security architecture diagram dan dua architecture decision records.

Asesmen

Konsistensi kontrol dengan threat model serta kejelasan alasan setiap keputusan.

Referensi Utama

  1. OWASP Application Security Verification Standard 5.0.0
  2. OWASP Top 10:2025
  3. CISA — Secure by Design
Pertemuan 5 · Kontrol Aplikasi

Autentikasi dan Keamanan Kredensial

Merancang autentikasi yang tahan terhadap enumerasi pengguna, brute force, credential stuffing, pencurian kredensial, dan penyalahgunaan proses pemulihan akun.

Capaian Pembelajaran

  • Membedakan identity proofing, authentication, dan federation.
  • Mendesain alur login serta pemulihan akun yang aman.
  • Menilai penyimpanan kata sandi, MFA, passkey, dan proteksi serangan otomatis.

Materi Inti

  • Identitas digital, authenticator, dan authentication assurance
  • Password hashing, salt, pepper, dan secret storage
  • MFA, passkey, OAuth/OIDC secara konseptual
  • Generic error, rate limiting, lockout, dan deteksi credential stuffing
  • Secure account recovery dan re-authentication untuk aksi sensitif

Aktivitas Pembelajaran

Review alur autentikasi contoh, temukan kelemahan, lalu rancang sequence diagram versi yang diperkeras.

Luaran

Authentication control checklist dan sequence diagram perbaikan.

Asesmen

Ketepatan kontrol, penanganan failure mode, dan pengalaman pengguna yang proporsional.

Referensi Utama

  1. OWASP Application Security Verification Standard 5.0.0
  2. OWASP Cheat Sheet Series
  3. OWASP Top 10:2025
Pertemuan 6 · Kontrol Aplikasi

Otorisasi dan Manajemen Sesi

Membangun keputusan akses yang konsisten pada sisi server dan mengelola siklus hidup sesi agar tahan terhadap pengambilalihan maupun eskalasi hak akses.

Capaian Pembelajaran

  • Membedakan autentikasi, otorisasi, dan accounting.
  • Menerapkan prinsip deny by default dan pemeriksaan akses per objek.
  • Mengevaluasi keamanan cookie, token, timeout, rotasi, dan pencabutan sesi.

Materi Inti

  • RBAC, ABAC, ReBAC, dan policy-based access control
  • Broken access control, IDOR/BOLA, dan privilege escalation
  • Server-side enforcement dan complete mediation
  • Session identifier, Secure, HttpOnly, SameSite, rotasi, dan invalidasi
  • CSRF protection dan step-up authorization

Aktivitas Pembelajaran

Menyusun access-control matrix dan menguji skenario akses horizontal serta vertikal pada API simulasi.

Luaran

Access-control matrix beserta negative test cases.

Asesmen

Cakupan objek/aksi, konsistensi kebijakan, dan kualitas pengujian negatif.

Referensi Utama

  1. OWASP Application Security Verification Standard 5.0.0
  2. OWASP Cheat Sheet Series
  3. OWASP Top 10:2025
  4. OWASP Web Security Testing Guide
Pertemuan 7 · Secure Coding

Validasi Input, Encoding, dan Pencegahan Injection

Mengendalikan data tidak tepercaya sejak masuk hingga digunakan oleh interpreter, database, browser, sistem operasi, maupun template engine.

Capaian Pembelajaran

  • Menerapkan validasi server-side berbasis allowlist dan batas bisnis.
  • Memilih parameterization dan contextual output encoding yang tepat.
  • Membedakan validasi, sanitasi, normalisasi, dan encoding.

Materi Inti

  • Trust boundary dan klasifikasi untrusted input
  • SQL/NoSQL/OS command/template injection
  • Cross-site scripting dan contextual output encoding
  • File upload, path traversal, parser safety, dan ukuran sumber daya
  • Parameterized query serta API aman dari framework

Aktivitas Pembelajaran

Secure coding lab pada contoh kode rentan: identifikasi data flow, perbaiki root cause, dan tambahkan regression test.

Luaran

Patch kode, test keamanan, dan catatan alasan pemilihan kontrol.

Asesmen

Perbaikan root cause, bukan sekadar pemblokiran payload contoh.

Referensi Utama

  1. OWASP Application Security Verification Standard 5.0.0
  2. OWASP Top 10:2025
  3. OWASP Cheat Sheet Series
  4. OWASP Secure Code Review Cheat Sheet
Pertemuan 8 · Evaluasi Tengah

Studi Kasus Terintegrasi dan Ujian Tengah

Mengintegrasikan konsep pertemuan 1–7 melalui analisis sebuah aplikasi, mulai dari kebutuhan, threat model, desain kontrol, hingga secure coding.

Capaian Pembelajaran

  • Menghubungkan temuan teknis dengan risiko dan kebutuhan keamanan.
  • Memilih mitigasi yang proporsional serta dapat diuji.
  • Mengkomunikasikan analisis keamanan secara ringkas dan profesional.

Materi Inti

  • Review fondasi software security dan secure SDLC
  • Validasi threat model serta attack surface
  • Review autentikasi, otorisasi, sesi, dan injection
  • Prioritas risiko dan traceability kontrol
  • Teknik penulisan temuan keamanan

Aktivitas Pembelajaran

Ujian berbasis kasus dengan artefak arsitektur, kebutuhan, dan potongan kode yang harus dianalisis.

Luaran

Laporan analisis individual dengan rekomendasi dan bukti pendukung.

Asesmen

Ketepatan analisis, prioritas risiko, kelayakan mitigasi, dan kualitas komunikasi.

Referensi Utama

  1. OWASP Top 10:2025
  2. OWASP Application Security Verification Standard 5.0.0
  3. NIST SP 800-218 — Secure Software Development Framework 1.1
Pertemuan 9 · Kontrol Aplikasi

Keamanan Web dan API Modern

Menganalisis risiko aplikasi web dan API menggunakan OWASP Top 10:2025 sebagai awareness baseline, dilanjutkan kontrol verifikasi yang lebih rinci.

Capaian Pembelajaran

  • Menjelaskan kategori risiko OWASP Top 10:2025 dan batas penggunaannya.
  • Mengidentifikasi risiko pada endpoint, objek, fungsi, dan alur bisnis API.
  • Mendesain kontrol keamanan pada transport, browser, API, dan konfigurasi.

Materi Inti

  • OWASP Top 10:2025 dan pemetaan ke akar masalah
  • API inventory, object/function-level authorization, dan resource consumption
  • CORS, CSP, security headers, TLS, dan cookie policy
  • Mass assignment, SSRF, unsafe consumption of APIs, dan business-flow abuse
  • Security misconfiguration dan hardening deployment

Aktivitas Pembelajaran

Menyusun API security checklist dan menguji konfigurasi contoh secara terkontrol.

Luaran

API inventory, hasil review kontrol, dan rencana hardening prioritas.

Asesmen

Cakupan endpoint, ketepatan risiko, dan keterlacakan terhadap ASVS/Top 10.

Referensi Utama

  1. OWASP Top 10:2025
  2. OWASP Application Security Verification Standard 5.0.0
  3. OWASP Web Security Testing Guide
  4. OWASP Cheat Sheet Series
Pertemuan 10 · Perlindungan Data

Kriptografi Aplikasi dan Manajemen Rahasia

Menggunakan primitif kriptografi melalui library tepercaya dan mengelola kunci, secret, serta data sensitif sepanjang siklus hidupnya.

Capaian Pembelajaran

  • Memilih kontrol kriptografi sesuai tujuan keamanan.
  • Menghindari desain kriptografi buatan sendiri dan penggunaan mode yang tidak tepat.
  • Merancang penyimpanan, distribusi, rotasi, dan pencabutan secret.

Materi Inti

  • Encryption, hashing, MAC, digital signature, dan random number generation
  • Data at rest, data in transit, dan field-level protection
  • Key lifecycle dan penggunaan KMS/HSM secara konseptual
  • Secrets management, environment configuration, dan pencegahan secret leakage
  • Data classification, minimization, retention, dan secure deletion

Aktivitas Pembelajaran

Crypto design review: pilih mekanisme untuk beberapa kebutuhan dan identifikasi penyalahgunaan library pada contoh kode.

Luaran

Data protection matrix dan key/secret lifecycle diagram.

Asesmen

Kesesuaian tujuan dengan primitif, pengelolaan lifecycle, dan minimisasi data.

Referensi Utama

  1. OWASP Application Security Verification Standard 5.0.0
  2. OWASP Top 10:2025
  3. OWASP Cheat Sheet Series
Pertemuan 11 · Supply Chain

Keamanan Dependensi dan Rantai Pasok Perangkat Lunak

Mengelola risiko yang berasal dari library, package manager, build system, artifact, pipeline, dan layanan pihak ketiga.

Capaian Pembelajaran

  • Membuat inventaris komponen melalui software bill of materials.
  • Mengevaluasi risiko dependensi berdasarkan konteks penggunaan.
  • Mendesain kontrol integritas untuk source, build, artifact, dan deployment.

Materi Inti

  • Software supply chain failures dalam OWASP Top 10:2025
  • Dependency pinning, lockfile, provenance, signature, dan trusted registry
  • SCA, SBOM, transitive dependency, dan vulnerability intelligence
  • Typosquatting, dependency confusion, compromised maintainer, dan malicious update
  • Patch policy, exception handling, dan continuous monitoring

Aktivitas Pembelajaran

Menganalisis dependency manifest contoh, menghasilkan inventaris komponen, dan memprioritaskan tindakan perbaikan.

Luaran

SBOM ringkas, dependency risk register, dan kebijakan pembaruan.

Asesmen

Kelengkapan inventaris, prioritas berbasis konteks, dan kontrol integritas pipeline.

Referensi Utama

  1. OWASP Top 10:2025
  2. NIST SP 800-218 — Secure Software Development Framework 1.1
  3. OWASP Application Security Verification Standard 5.0.0
Pertemuan 12 · Ketahanan Operasional

Error Handling, Logging, Monitoring, dan Resilience

Merancang penanganan kondisi gagal yang aman serta telemetri yang mendukung deteksi, investigasi, dan respons tanpa membocorkan data sensitif.

Capaian Pembelajaran

  • Menerapkan fail securely dan generic error response.
  • Menentukan security events, konteks log, retensi, serta alert yang relevan.
  • Menguji aplikasi terhadap exceptional conditions dan resource exhaustion.

Materi Inti

  • Mishandling of exceptional conditions pada OWASP Top 10:2025
  • Centralized exception handling dan pencegahan information leakage
  • Security logging, correlation ID, audit trail, dan log integrity
  • Alert design, signal-to-noise ratio, dan runbook
  • Timeout, retry, circuit breaker, rate limit, quota, dan graceful degradation

Aktivitas Pembelajaran

Mendesain logging schema dan menguji failure scenario seperti timeout, malformed input, dependency failure, dan limit exhaustion.

Luaran

Logging-and-alerting matrix serta hasil chaos/failure test terkontrol.

Asesmen

Kualitas sinyal, perlindungan data log, dan keamanan perilaku saat gagal.

Referensi Utama

  1. OWASP Top 10:2025
  2. OWASP Application Security Verification Standard 5.0.0
  3. OWASP Cheat Sheet Series
  4. OWASP Web Security Testing Guide
Pertemuan 13 · Verifikasi

Security Testing: SAST, DAST, SCA, dan Pengujian Manual

Menyusun strategi verifikasi berlapis yang memadukan pengujian statis, dinamis, komposisi perangkat lunak, serta pengujian manual berbasis risiko.

Capaian Pembelajaran

  • Membedakan cakupan, kekuatan, dan keterbatasan setiap teknik pengujian.
  • Menurunkan test case dari kebutuhan, threat model, dan ASVS.
  • Memvalidasi temuan serta mengelola false positive dan false negative.

Materi Inti

  • SAST, DAST, IAST, SCA, secret scanning, dan fuzzing
  • Risk-based security testing dan negative testing
  • Test case traceability terhadap ASVS dan threat model
  • Triase temuan, reproducibility, severity, dan evidence
  • Regression test keamanan dan retesting

Aktivitas Pembelajaran

Menjalankan alat uji pada aplikasi latihan yang berizin, memvalidasi hasil secara manual, dan menulis satu temuan berkualitas.

Luaran

Security test plan, bukti pengujian, dan laporan temuan terverifikasi.

Asesmen

Reproducibility, akurasi dampak, kualitas bukti, dan rekomendasi root-cause fix.

Referensi Utama

  1. OWASP Web Security Testing Guide
  2. OWASP Application Security Verification Standard 5.0.0
  3. NIST SP 800-218 — Secure Software Development Framework 1.1
  4. OWASP Cheat Sheet Series
Pertemuan 14 · Verifikasi

Secure Code Review dan DevSecOps Pipeline

Menggabungkan penilaian manusia yang memahami konteks bisnis dengan otomasi pipeline untuk mencegah security regression sejak pull request.

Capaian Pembelajaran

  • Melakukan review kode berbasis data flow, threat, dan business logic.
  • Mendesain security checks yang proporsional pada CI/CD.
  • Menentukan kebijakan gate, exception, evidence, dan ownership.

Materi Inti

  • Baseline review, diff-based review, dan threat-based review
  • Source-to-sink analysis dan pemeriksaan trust boundary
  • Review autentikasi, otorisasi, input, crypto, error, dan business logic
  • Pipeline: linting, test, SAST, SCA, secret scan, artifact signing, dan deploy gate
  • Security champion, pull-request checklist, dan metrics yang tidak mudah dimanipulasi

Aktivitas Pembelajaran

Peer secure code review pada pull request simulasi dan merancang pipeline keamanan untuk repository tersebut.

Luaran

Review comments, patch perbaikan, dan diagram CI/CD dengan security gates.

Asesmen

Kedalaman review, relevansi komentar, kualitas patch, dan keseimbangan gate dengan delivery flow.

Referensi Utama

  1. OWASP Secure Code Review Cheat Sheet
  2. NIST SP 800-218 — Secure Software Development Framework 1.1
  3. OWASP Application Security Verification Standard 5.0.0
  4. OWASP Cheat Sheet Series
Pertemuan 15 · Operasi & Perbaikan

Vulnerability Management dan Incident Response

Mengelola kerentanan dari penemuan hingga penutupan dan menyiapkan respons terkoordinasi saat kelemahan perangkat lunak dieksploitasi.

Capaian Pembelajaran

  • Memprioritaskan kerentanan berdasarkan exploitability, exposure, asset, dan dampak bisnis.
  • Menyusun alur disclosure, triage, remediation, retest, dan komunikasi.
  • Menghasilkan pembelajaran insiden yang memperbaiki proses serta kontrol.

Materi Inti

  • Vulnerability intake, ownership, SLA, exception, dan risk acceptance
  • CVSS sebagai salah satu input, bukan satu-satunya keputusan
  • Coordinated vulnerability disclosure dan security advisory
  • Incident lifecycle: prepare, detect, contain, eradicate, recover, dan learn
  • Root-cause analysis, variant analysis, dan pembaruan secure SDLC

Aktivitas Pembelajaran

Tabletop exercise untuk kerentanan kritis pada aplikasi produksi, termasuk keputusan teknis dan komunikasi pemangku kepentingan.

Luaran

Remediation plan, incident timeline, communication draft, dan daftar preventive actions.

Asesmen

Prioritas berbasis risiko, kejelasan ownership, kelengkapan respons, dan kualitas pembelajaran.

Referensi Utama

  1. NIST SP 800-218 — Secure Software Development Framework 1.1
  2. OWASP Application Security Verification Standard 5.0.0
  3. CISA — Secure by Design
Pertemuan 16 · Evaluasi Akhir

Presentasi Proyek dan Evaluasi Keamanan End-to-End

Mendemonstrasikan penerapan keamanan sepanjang siklus hidup melalui artefak yang saling terlacak: kebutuhan, threat model, desain, implementasi, pengujian, dan rencana operasi.

Capaian Pembelajaran

  • Mempertahankan keputusan keamanan berdasarkan risiko dan bukti.
  • Menunjukkan traceability dari ancaman menuju kontrol dan pengujian.
  • Mengevaluasi efektivitas solusi serta menyusun rencana peningkatan.

Materi Inti

  • Review end-to-end secure software development
  • Demonstrasi kontrol dan negative security tests
  • Traceability matrix: requirement–threat–control–test–evidence
  • Residual risk dan batasan solusi
  • Retrospektif proses serta roadmap peningkatan keamanan

Aktivitas Pembelajaran

Presentasi dan demonstrasi proyek, tanya jawab teknis, peer review, serta refleksi individual.

Luaran

Paket akhir proyek: laporan, source code, test evidence, traceability matrix, dan presentasi.

Asesmen

Kualitas teknis, konsistensi artefak, validitas bukti, komunikasi, dan kemampuan menjawab risiko residual.

Referensi Utama

  1. OWASP Application Security Verification Standard 5.0.0
  2. NIST SP 800-218 — Secure Software Development Framework 1.1
  3. OWASP Top 10:2025
  4. CISA — Secure by Design