Threat modelling dikenal sebagai salah satu cara yang efektif untuk mengenali ancaman sebelum sistem digunakan. Namun, hasilnya tidak selalu maksimal. Bukan karena metodenya kurang baik, melainkan karena prosesnya sering dilakukan secara terburu-buru atau hanya dianggap sebagai formalitas dalam pengembangan perangkat lunak.

Tidak sedikit tim yang sudah membuat threat model, tetapi masih mengalami kebocoran data atau celah keamanan. Penyebabnya sering kali bukan karena ancaman yang terlalu rumit, melainkan karena ada langkah-langkah penting yang terlewat. Memahami kesalahan-kesalahan ini dapat membantu tim melakukan threat modelling dengan lebih efektif.

Tujuan bagian ini

  • Menjelaskan kesalahan yang sering terjadi saat melakukan threat modelling.
  • Memberikan gambaran bagaimana kesalahan tersebut dapat dihindari sejak awal.

1. Terlalu Fokus pada Teknologi, Lupa pada Proses

Salah satu kesalahan yang cukup sering terjadi adalah terlalu berfokus pada alat atau teknologi keamanan. Tim sibuk memilih firewall, sistem deteksi ancaman, atau perangkat lunak keamanan lainnya, tetapi kurang memahami bagaimana sistem sebenarnya bekerja.

Padahal, threat modelling dimulai dari memahami alur sistem, aset yang dimiliki, serta cara data berpindah dari satu komponen ke komponen lain. Tanpa pemahaman tersebut, penggunaan teknologi secanggih apa pun belum tentu mampu menutup celah yang ada.

2. Tidak Menentukan Aset yang Harus Dilindungi

Beberapa tim langsung membahas kemungkinan serangan tanpa terlebih dahulu menentukan apa yang sebenarnya ingin dilindungi.

Padahal, setiap sistem memiliki aset yang berbeda. Ada yang lebih bergantung pada data pelanggan, ada yang berfokus pada transaksi keuangan, sementara yang lain mengutamakan ketersediaan layanan.

Jika aset utama tidak diidentifikasi sejak awal, proses analisis ancaman akan kehilangan arah karena semua bagian sistem dianggap memiliki tingkat kepentingan yang sama.

3. Menganggap Semua Ancaman Memiliki Prioritas yang Sama

Kesalahan lain adalah mencoba mengatasi seluruh ancaman sekaligus. Pendekatan seperti ini sering membuat tim kewalahan dan sulit menentukan prioritas.

Dalam praktiknya, setiap ancaman memiliki tingkat risiko yang berbeda. Ada ancaman yang peluang terjadinya kecil, tetapi dampaknya besar. Sebaliknya, ada ancaman yang sering muncul namun hanya berdampak terbatas.

Threat modelling yang baik membantu tim memisahkan mana risiko yang harus segera ditangani dan mana yang masih dapat dipantau terlebih dahulu.

4. Tidak Melibatkan Anggota Tim yang Tepat

Threat modelling sering dianggap sebagai tanggung jawab tim keamanan saja. Akibatnya, pengembang, analis sistem, penguji, atau pemilik produk tidak ikut terlibat dalam proses diskusi.

Padahal, setiap anggota tim memiliki sudut pandang yang berbeda. Pengembang memahami cara kerja aplikasi, analis sistem memahami kebutuhan bisnis, sedangkan penguji sering menemukan skenario penggunaan yang tidak terpikirkan sebelumnya.

Semakin beragam masukan yang diperoleh, semakin lengkap pula analisis ancaman yang dihasilkan.

5. Threat Model Tidak Pernah Diperbarui

Sebuah aplikasi hampir selalu mengalami perubahan. Fitur baru ditambahkan, layanan pihak ketiga diintegrasikan, dan kebutuhan pengguna terus berkembang. Namun, masih banyak tim yang hanya membuat threat model sekali di awal proyek, lalu tidak pernah meninjaunya kembali.

Akibatnya, dokumen tersebut tidak lagi mencerminkan kondisi sistem yang sebenarnya. Ancaman baru yang muncul setelah perubahan pun tidak ikut dianalisis.

Karena itu, threat modelling sebaiknya diperlakukan sebagai proses yang terus berjalan, bukan pekerjaan yang selesai dalam satu tahap.

6. Mengabaikan Ancaman yang Berasal dari Dalam

Ketika membahas keamanan, perhatian sering tertuju pada serangan dari luar organisasi. Padahal, risiko juga bisa berasal dari dalam, misalnya karena kesalahan konfigurasi, penggunaan hak akses yang berlebihan, atau kelalaian pengguna.

Threat modelling yang efektif mempertimbangkan kedua sisi tersebut. Dengan begitu, perlindungan yang dirancang tidak hanya menghadapi serangan eksternal, tetapi juga mengurangi risiko yang muncul dari aktivitas internal.

7. Tidak Mendokumentasikan Hasil Analisis

Ada kalanya diskusi threat modelling menghasilkan banyak keputusan penting, tetapi tidak didokumentasikan dengan baik. Ketika anggota tim berganti atau proyek memasuki tahap berikutnya, informasi tersebut sulit ditelusuri kembali.

Dokumentasi yang jelas membantu seluruh tim memahami ancaman yang telah diidentifikasi, alasan di balik setiap keputusan keamanan, serta langkah mitigasi yang sudah diterapkan. Selain memudahkan evaluasi, dokumentasi juga membuat proses pengembangan lebih konsisten.

8. Contoh Kasus Sederhana

Sebuah perusahaan rintisan mengembangkan aplikasi pemesanan tiket secara daring. Tim hanya berfokus pada kelancaran proses pemesanan dan pembayaran, sementara analisis ancaman dilakukan secara singkat menjelang peluncuran.

Beberapa bulan setelah aplikasi digunakan, ditemukan bahwa akun administrator memiliki hak akses yang terlalu luas dan tidak dilindungi dengan autentikasi tambahan. Celah ini sebenarnya dapat dikenali lebih awal jika threat modelling dilakukan secara menyeluruh dan melibatkan seluruh tim sejak tahap perancangan.

Kasus seperti ini menunjukkan bahwa kesalahan dalam proses analisis sering kali lebih berpengaruh daripada keterbatasan teknologi yang digunakan.

KESIMPULAN

Threat modelling bukan sekadar membuat daftar ancaman atau memenuhi tahapan dalam proyek. Proses ini membutuhkan pemahaman terhadap sistem, keterlibatan berbagai pihak, serta evaluasi yang dilakukan secara berkelanjutan.

Dengan menghindari kesalahan-kesalahan yang umum terjadi, organisasi dapat memperoleh manfaat yang lebih besar dari threat modelling. Hasilnya bukan hanya sistem yang lebih aman, tetapi juga proses pengembangan yang lebih matang, efisien, dan siap menghadapi perubahan ancaman di masa mendatang.