Setelah membuat website, tugas kita belumlah usai. Di dunia digital, ada banyak hal yang yang mengancam keamanan pengguna website. Paling tidak ada 8 jenis serangan siber yang mengancam web kita. Berikut adalah beberapa daftar celah yang dapat menyebabkan website terancam :
1. Injection Flaws
Injection Flaws, atau yang juga dikenal sebagai serangan injeksi, adalah serangan keamanan yang memanfaatkan celah atau kerentanan pada web yang memungkinkan penyerang menyisipkan kode atau perintah yang tidak diinginkan ke dalam input yang diterima oleh aplikasi.
Serangan Injection terjadi ketika input pengguna tidak divalidasi atau tidak diolah dengan benar sebelum digunakan dalam proses eksekusi atau evaluasi oleh sistem. Ini memungkinkan penyerang untuk memanipulasi input dan memasukkan kode berbahaya ke dalam lingkungan yang tidak aman, yang kemudian dieksekusi oleh sistem.
Berikut adalah beberapa jenis umum serangan Injection Flaws:
SQL Injection:
Dalam kasus serangan SQL Injection, penyerang menyisipkan kode SQL yang berbahaya ke dalam input yang diterima oleh web. Jika input tidak divalidasi dengan benar, kode SQL ini dapat dieksekusi oleh server database, memungkinkan penyerang untuk mengakses, memodifikasi, atau menghapus data yang sensitif.
XSS (Cross-Site Scripting) Injection:
Sebagai salah satu injection flawm Cross Site Scripting (XSS) juga memanfaatkan kerentanan web untuk menyisipkan dan menjalankan kode berbahaya di halaman web. Pengunjung web dapat memasukkan data dan mengirimkan ke web browser tanpa harus melakukan validasi dan encoding terhadap isi data tersebut.
XSS memungkinkan penyerang dapat menjalankan potongan kode (script) miliknya di browser target, dan memungkinkan untuk mencuri user session milik target. Jika halaman tersebut tidak melindungi input dengan benar, kode skrip dapat dijalankan oleh browser pengguna, yang dapat mengakibatkan pencurian informasi, perubahan konten halaman, atau penyebaran serangan lanjutan.
Command Injection:
Command Injection terjadi ketika penyerang menyisipkan perintah sistem operasi yang berbahaya ke dalam input aplikasi web. Jika aplikasi tidak memvalidasi atau menyaring input dengan benar, perintah yang disisipkan akan dieksekusi oleh sistem operasi, memungkinkan penyerang untuk mengendalikan server atau menjalankan perintah berbahaya.
LDAP (Lightweight Directory Access Protocol) Injection:
Serangan LDAP Injection terjadi ketika aplikasi yang menggunakan LDAP untuk menghubungkan dengan direktori server mengalami serangan, di mana penyerang memasukkan karakter khusus atau sintaks LDAP yang tidak sah ke dalam input aplikasi, yang dapat menyebabkan data direktori dapat diambil, diubah, atau dihapus.
2. Malicious File Execution
Malicious File Execution, atau juga dikenal sebagai Remote File Inclusion (RFI) atau Local File Inclusion (LFI), adalah serangan keamanan dimana penyerang memanipulasi web untuk menjalankan file berbahaya yang berada di server atau jaringan yang terkoneksi.
Berbeda dengan XSS yang bentuk injeksinya adalah script, serangan Malicious File Execution terjadi ketika aplikasi web tidak memvalidasi atau memfilter input yang diterima dari pengguna sebelum digunakan untuk memuat atau menjalankan file. Ini memungkinkan penyerang untuk memasukkan path (lokasi file) yang berbahaya atau merujuk ke file yang tidak aman di server atau jaringan yang terhubung. Hasilnya, file yang dieksekusi dapat mengandung kode berbahaya yang dimaksudkan untuk merusak, mengendalikan, atau mengakses data yang sensitif.
Ada dua bentuk umum dari serangan Malicious File Execution:
Remote File Inclusion (RFI):
Pada serangan RFI, penyerang memanipulasi web untuk memuat file eksternal yang berbahaya dari server yang dikendalikan oleh penyerang. File tersebut dapat berisi kode berbahaya seperti skrip PHP yang dieksekusi oleh server, yang dapat memungkinkan penyerang untuk mendapatkan akses ke sistem, merusak data, atau melakukan serangan lain.
Local File Inclusion (LFI):
Pada serangan LFI, penyerang memanipulasi aplikasi web untuk memuat file lokal yang ada di server. File-file ini biasanya tidak dimaksudkan untuk dieksekusi oleh aplikasi web, tetapi dengan memanipulasi input yang tidak divalidasi, penyerang dapat mencoba memuat file-file tersebut. Jika berhasil, penyerang dapat membaca, mengubah, atau menjalankan file yang sensitif, termasuk file konfigurasi atau file dengan akses ke data penting.
Serangan Malicious File Execution dapat memiliki dampak serius, termasuk pengambilalihan sistem, akses ke data sensitif, penyebaran malware, dan kerusakan atau kehilangan data. Untuk melindungi aplikasi web dari serangan ini, penting untuk memvalidasi dan memfilter input pengguna dengan cermat, membatasi akses ke file sistem, mengaktifkan fitur keamanan seperti mod_security, dan memperbarui perangkat lunak dengan patch keamanan terbaru. Selain itu, penggunaan mekanisme autentikasi yang kuat dan prinsip keamanan lainnya juga sangat penting.
3. Insecure Direct Object Reference
Adalah suatu celah yang terjadi saat pembuat aplikasi web merekspos referensi internal penggunaan objek, seperti file, direktori, database record, dll. Insecure Direct Object Reference (IDOR) adalah kerentanan keamanan pada aplikasi web di mana penyerang dapat mengakses atau memanipulasi objek langsung, seperti file, database, atau sumber daya lainnya, dengan menggunakan referensi yang tidak aman atau tidak divalidasi. Kerentanan ini terjadi ketika aplikasi tidak menerapkan kontrol akses yang memadai atau mengandalkan referensi objek yang dapat diprediksi atau dimanipulasi.
Contoh umum dari Insecure Direct Object Reference adalah sebagai berikut:
Akses ke data sensitif: Jika sebuah aplikasi web menggunakan parameter URL atau parameter permintaan yang langsung merujuk ke objek (misalnya, nomor ID), penyerang dapat mencoba mengubah nilai parameter tersebut untuk mengakses data yang seharusnya tidak dapat mereka akses. Misalnya, dengan mengubah nomor ID dalam URL, penyerang dapat mengakses data pengguna lain atau data sensitif lainnya.
Manipulasi objek: Jika aplikasi web tidak memverifikasi authority sebelum mengizinkan tindakan pada objek, penyerang dapat memanipulasi referensi objek yang tidak valid untuk mengakses atau memodifikasi objek yang seharusnya tidak dapat mereka akses. Misalnya, penyerang dapat mengubah nilai parameter yang mengidentifikasi suatu objek untuk mengubah data tersebut.
Akses ke sumber daya terbatas: Dalam beberapa kasus, aplikasi web dapat memberikan referensi langsung ke sumber daya terbatas, seperti file atau direktori pada server. Jika referensi ini tidak diperiksa atau divalidasi, penyerang dapat memprediksi atau memanipulasi referensi tersebut untuk mengakses sumber daya yang seharusnya tidak dapat mereka akses.
Serangan siber ini juga dapat menyerang sistem IoT lho! Baca lebih lanjut di : Penerapan Cyber Security dalam Sistem IoT
4. Cross Site Request Forgery (CSRF)
Cross-Site Request Forgery (CSRF) adalah serangan keamanan pada aplikasi web di mana penyerang memanipulasi pengguna agar melakukan tindakan yang tidak disengaja pada situs web target tanpa persetujuan atau pengetahuan mereka. Celah ini akan memaksa browser target yang sudah log-in untuk mengirimkan “pre-authenticated request” terhadap aplikasi web yang diketahui memiliki celah, dan memaksa browser target untuk melakukan hal yang menguntungkan penyerang. Serangan CSRF memanfaatkan kelemahan di mana situs web tidak memverifikasi dengan benar asal permintaan HTTP yang diterima.
Ada tiga entitas utama yang terlibat dalam serangan CSRF yaitu, pengguna yang sah, situs web target, dan situs web penyerang.
4 jenis serangan lain yang mengancam website adalah :
- Information Leakage and Improper Error Handling
- Broken Authentication and Session Management
- Insecure Cryptographic Storage
- Insecure Communications
Keempatnya akan dibahas dalam artikel selanjutnya : Web Kamu Dalam Bahaya! 8 Jenis Serangan di Dunia Maya Yang Mengancam Web Kamu (Part 2)
Referensi :
Haryana, Syarif KM. PENGEMBANGAN PERANGKAT LUNAK DENGAN MENGGUNAKAN PHP. 2008.