Dependency Vulnerabilities
Mereview alasan, maintenance, source, update, dan browser capability package sebelum menambahkannya ke product.
Tujuan belajar
- Memahami bahwa dependency membawa code dan maintenance risk
- Menyusun checklist sebelum menambah package
- Membedakan audit signal dari bukti bahwa package pasti aman
- Menentukan langkah yang aman saat menemukan advisory atau package yang tidak terpakai
Isi lesson
6 blok- 1.Setiap package memperluas code yang dipercaya productBelum selesaiWajib
- 2.Checklist sebelum menambah package rich contentBelum selesaiWajib
- 3.Coding practiceBelum selesaiWajib
- 4.Cek pemahamanBelum selesaiWajib
- 5.Popular bukan berarti cocok atau bebas riskBelum selesaiWajib
- 6.RingkasanBelum selesaiWajib
Setiap package memperluas code yang dipercaya product
WajibDependency dapat menghemat waktu, tetapi juga menambah source code, transitive dependency, update responsibility, dan kemungkinan capability browser yang tidak diperlukan. Package untuk markdown, analytics, upload UI, date formatting, atau embed dapat memengaruhi bundle serta data yang diproses product. Risiko bukan alasan untuk tidak pernah memakai library. Tujuannya adalah membuat keputusan yang sadar: apakah requirement benar-benar membutuhkan package ini, apakah platform sudah menyediakan solusi cukup, siapa maintainer/source-nya, kapan terakhir dirawat, dan bagaimana update atau removal akan diuji.
Security advisory atau audit tool adalah signal untuk investigasi, bukan instruksi untuk melakukan update buta. Baca package yang terdampak, versi yang dipakai, apakah path product benar-benar memakainya, rekomendasi resmi, breaking change, test coverage, dan owner review. Jangan menyalin package dari snippet tanpa source yang jelas, dan jangan menganggap lockfile membuat semua dependency otomatis bebas risk.
Bagian ini memengaruhi progres lesson.
Checklist sebelum menambah package rich content
Wajib1. Nyatakan requirement product yang spesifik.
2. Cek apakah browser, framework, atau package yang sudah ada cukup.
3. Verifikasi source registry dan repository maintainer.
4. Review maintenance signal, license, release note, dan dependency footprint.
5. Catat capability data/browser yang benar-benar diperlukan.
6. Tambahkan dengan version yang disengaja, lalu QA feature dan update path.Checklist ini tidak menjamin package aman, tetapi mencegah keputusan berdasarkan nama populer atau snippet singkat. Untuk package yang menangani user content, auth, upload, atau third-party script, naikkan level review dan libatkan owner security/platform bila project memiliki prosesnya.
Bagian ini memengaruhi progres lesson.
Coding practice
WajibDibuka di workspace khususReview course package risk
Susun review package sebelum penambahan tanpa menginstal dependency atau menjalankan audit tool.
Tujuan awal: Fokus di tab TS.
Practice ini dibuka di workspace khusus. Buka practice untuk memakai editor, preview, dan cek otomatis.
Tombol selesai aktif setelah semua validasi wajib lolos.
Cek pemahaman
WajibJawab duluCek pemahaman singkat
Apa respons paling bertanggung jawab saat audit memberi advisory pada dependency?
Progres lesson naik setelah jawaban benar.
Peringatan
WajibPopular bukan berarti cocok atau bebas risk
Jangan menambahkan package hanya untuk menghindari beberapa baris code yang sudah dapat ditangani platform. Hindari juga package yang meminta capability data atau browser lebih besar dari kebutuhan. Jika package tidak lagi diperlukan, removal yang teruji dapat mengurangi attack surface serta maintenance burden.
Bagian ini memengaruhi progres lesson.
Ringkasan
Wajib- Dependency membawa code, transitive dependency, update, dan maintenance responsibility.
- Package review dimulai dari requirement, source, maintenance, footprint, capability, dan QA.
- Audit advisory adalah signal untuk investigasi serta update teruji, bukan automatic fix.
- Mengurangi dependency yang tidak perlu juga merupakan keputusan security yang baik.
- Berikutnya, Uji Kompetensi memetakan seluruh browser-facing risk pada satu feature kecil.
Bagian ini memengaruhi progres lesson.
Langkah berikutnya
Selesaikan bagian penting lesson ini
Lanjutkan blok wajib berikutnya: Setiap package memperluas code yang dipercaya product.