IND | ENG
7 Hal yang Sering Diabaikan Pengembang Aplikasi Web

Ilustrasi | Foto: freepik.com

7 Hal yang Sering Diabaikan Pengembang Aplikasi Web
Oktarina Paramitha Sandy Diposting : Selasa, 26 Januari 2021 - 12:07 WIB

Cyberthreat.id – Lead Software Engineer at CyberArmy Indonesia, Anhar Solehudin mengatakan, salah satu kesalahan yang sering dialami pengembang aplikasi web adalah merasa aplikasinya sudah aman.

Menurut dia, seorang pengembang harus selalu merasa bahwa aplikasi buatannya tidak aman. Ketika merasa sudah aman, pengembang biasanya akan lalai dengan kerentanan lain yang mungkin muncul.

“Kelalaian ini yang seringkali menimbulkan masalah, salah satunya, adalah kebocoran data,” ujar Anhar dalam “Workshop: Secure Coding for Startup Developer” bagian dari rangkaian acara CyberHub Fest yang digelar virtual, Senin (25 Januari 2020). 

Anhar mengatakan, kebocoran data terjadi ketika penyerang (attacker) berhasil mencuri file atau informasi yang bersifat privat, baik dicuri secara langsung maupun dengan teknik khusus.

Anhar juga menjelaskan sejumlah penyebab kebocoran data yang disebabkan oleh kelalaian pengembang aplikasi, antara lain

1] Kredensial mudah ditebak. Penggembang menggunakan nama pengguna dan sandi lemah. Contoh, pemakaian informasi kredensial login (baik username dan password) dengan kata “admin”. Direkomendasikan agar pengembang memakai sandi kuat dengan kombinasi karakter, menggunakan kalimat/passphrase, serta lakukan penggantian sandi secara periodik.


2] Tidak dienkripsi. Menurut Anhar, hingga saat ini masih ditemukan aplikasi yang tidak mengenkripsi kata sandi pengguna. Hal ini membahayakan aplikasi karena peretas akan dengan mudah mengetahui kredensial login pengguna. Pengembang aplikasi sebetulnya tidak boleh mengetaui sandi pengguna, karena kalau sampai pengembang tahu berarti telah terjadi kebocoran data di sisi pemilik aplikasi.


3] Algoritma enkripsi usang. Sebaiknya tidak memakai algoritma enkripsi usang seperti MD5 dan SHA-1. Anhar mengatakan, keduanya dinilai tidak kuat lagi sebagai algoritma enkripsi kerena saat ini serangan seperti brute force semakin cepat berkat kemampuan komputasi modern, kamus password yang tersedia untuk MD5 dan SHA-1 sudah semakin besar. Pakaialah algoritma enkripsi, seperti SHA-256, SHA-512, Argon2, BCRYPT, SCRYPT, dan PBKDF2. Selain itu, gunakan metode salt hash untuk melakukan enkripsi (SHA-1 dan MD5 boleh digunakan, selama disertai dengan salt+kombinasi lain); gunakan enkripsi untuk menyimpan data-data sensitif seperti password, token, dan lain; buatlah algoritma enkripsi yang sulit ditebak, tapi tidak terlalu kompleks untuk dijalankan; dan formula mengenkripsi harus unik—boleh menggunakan algoritma sama, tapi dibedakan nilai salt-nya.


4] Mudahnya enumerasi URL query/route parameter tanpa kontrol akses. Enumerasi ini bisa dilakukan dengan tools atau dengan sistem otomatis sehingga sewaktu-waktu bisa mendapatkan nilai yang diinginkan. Parahnya lagi, apabila memang kontrol akses bermasalah, penyerang bisa membuka data lain. Berkaitan dengan hal tersebut, developer perlu menggunakan nilai referensi yang tidak mudah ditebak/dienumerasi.


5] Tidak menggunakan SSL. Situs web yang dibangun tidak memakai SSL. Padahal dengan protokol komunikasi ini, konektivitas jaringan akan dienkripsi. Sederhananya, ketika data berpindah dari situs web ke sisi server, di perjalanan data akan terenkripsi. Sehingga ketika ada attacker atau Man-in-the-Middle (MiTM) yang berusaha mendapatkan data tersebut, mereka tidak akan bisa menyadap.


6] Miskonfigurasi aplikasi. Kebocoran data bukan saja keahlian peretasnya, tapi bisa pula karena keteledoran pengembang mengonfingurasi aplikasi. Sangat penting untuk memastikan configuration environment sesuai dengan kebutuhan dan aturan environment-nya. Jangan lupa pada stage production untuk mematikan debugger, stacktrace, dan tools yang biasa digunakan untuk membantu proses development.


7] Lemahnya kontrol akses data. Meski tidak ada aturan yang mewajibkan adanya kontrol hak akses pengguna terhadap data di sebuah sistem atau aplikasi, sangat penting untuk memiliki kontrol akses guna mencegah akses yang tidak sah pada server.[]

Redaktur: Andi Nugroho

#appdeveloper   #situsweb   #webdeveloper   #keamanansiber   #ancamansiber   #kebocorandata

Share:




BACA JUGA
Seni Menjaga Identitas Non-Manusia
Indonesia Dorong Terapkan Tata Kelola AI yang Adil dan Inklusif
SiCat: Inovasi Alat Keamanan Siber Open Source untuk Perlindungan Optimal
BSSN Selenggarakan Workshop Tanggap Insiden Siber Sektor Keuangan, Perdagangan dan Pariwisata
Pentingnya Penetration Testing dalam Perlindungan Data Pelanggan