Apa Itu Virtual Patching? Cara Kerja dan Perannya Melindungi Website
Virtual patching adalah lapisan keamanan yang digunakan untuk memblokir upaya eksploitasi terhadap celah tertentu tanpa mengubah kode sumber aplikasi yang rentan. Perlindungan ini biasanya diterapkan melalui Web Application Firewall atau Intrusion Prevention System.
Sederhananya, virtual patching berfungsi sebagai perlindungan sementara ketika update resmi belum tersedia atau belum dapat dipasang. Kerentanan pada aplikasi memang belum diperbaiki, tetapi permintaan berbahaya yang mencoba memanfaatkannya dapat dicegah sebelum mencapai aplikasi.
OWASP mendefinisikan virtual patching sebagai lapisan penerapan kebijakan keamanan yang mencegah dan melaporkan upaya eksploitasi terhadap kerentanan yang diketahui. OWASP juga menegaskan bahwa virtual patching dan perbaikan pada kode tidak saling menggantikan. Keduanya dapat diterapkan secara bersamaan.
Mengapa Virtual Patching Dibutuhkan?
Ketika sebuah celah keamanan ditemukan, perbaikannya tidak selalu dapat langsung dipasang pada website.
Secara umum, proses penanganannya dapat melewati beberapa tahapan:
- Peneliti atau pengembang menemukan celah keamanan.
- Vendor menganalisis versi yang terdampak.
- Informasi mengenai kerentanan atau metode eksploitasi mulai beredar.
- Vendor mengembangkan dan menguji patch.
- Pemilik website menguji lalu memasang update resmi.
Durasi setiap tahap dapat berbeda. Ada patch yang tersedia dalam beberapa jam, tetapi ada juga yang membutuhkan waktu lebih lama karena vendor harus memastikan perbaikannya tidak menimbulkan masalah baru.
Jarak antara ditemukannya kerentanan dan diterapkannya patch sering disebut window of exposure. Selama periode tersebut, aplikasi masih berisiko dieksploitasi.
Penyerang juga dapat menggunakan pemindai otomatis untuk mencari website yang menjalankan versi aplikasi, plugin, atau tema yang rentan. Karena itu, pemilik website perlu memiliki lapisan mitigasi tambahan sambil menunggu perbaikan resmi.
Untuk memahami istilah dasarnya, Anda dapat membaca pembahasan mengenai kerentanan atau vulnerability.
Apakah Semua Celah Tanpa Patch Disebut Zero-Day?
Tidak selalu.
NIST mendefinisikan zero-day attack sebagai serangan yang mengeksploitasi kerentanan perangkat keras, firmware, atau perangkat lunak yang sebelumnya belum diketahui. Karena itu, istilah zero-day tidak seharusnya digunakan untuk menyebut semua kerentanan yang belum diperbarui.
Setelah detail kerentanan diketahui dan dipublikasikan, risikonya tetap dapat tinggi, terutama jika belum tersedia patch atau banyak pengguna belum melakukan update. Namun, status tersebut tidak otomatis menjadikannya zero-day.
Penjelasan lebih mendalam dapat dibaca pada artikel tentang serangan zero-day.
Bagaimana Cara Kerja Virtual Patching?
Setiap kali pengunjung membuka halaman, mengirimkan formulir, atau masuk ke dashboard, perangkat mereka mengirimkan permintaan HTTP ke server website.
Permintaan normal dapat berisi alamat halaman, data formulir, cookie, atau informasi login. Sementara itu, permintaan berbahaya dapat menyertakan parameter yang dirancang untuk mengeksploitasi kelemahan aplikasi.
Virtual patch ditempatkan pada lapisan keamanan yang dapat memeriksa lalu lintas tersebut sebelum mencapai aplikasi.
1. Memeriksa Permintaan yang Masuk
WAF atau IPS memeriksa bagian permintaan yang relevan, seperti:
- URL.
- Parameter kueri.
- Header.
- Cookie.
- Isi formulir.
- Payload yang dikirimkan ke aplikasi.
Cakupan pemeriksaan dapat berbeda, tergantung produk, konfigurasi, protokol, dan posisi alat keamanan pada infrastruktur.
2. Mencocokkan Permintaan dengan Aturan Keamanan
Sistem kemudian membandingkan permintaan tersebut dengan aturan yang telah disiapkan.
Aturan virtual patch dapat dirancang untuk:
- Memblokir parameter tertentu.
- Membatasi tipe file yang dapat diunggah.
- Mencegah akses menuju endpoint yang rentan.
- Menolak pola eksploitasi tertentu.
- Mengizinkan hanya format input yang dinilai aman.
Pembahasan mengenai lapisan ini dapat Anda pelajari lebih lanjut pada artikel Web Application Firewall.
3. Menentukan Tindakan
Apabila permintaan dinilai aman, sistem meneruskannya ke aplikasi. Jika terdeteksi sebagai upaya eksploitasi, sistem dapat:
- Memblokir permintaan.
- Mengembalikan respons seperti
403 Forbidden. - Mencatat kejadian ke dalam log.
- Membatasi akses alamat IP.
- Menjalankan verifikasi tambahan.
Produk seperti Imunify360 menjelaskan bahwa WAF-nya dapat memblokir upaya eksploitasi terhadap kerentanan yang diketahui pada perangkat lunak populer, termasuk plugin WordPress, sebelum patch resmi tersedia atau dapat diterapkan.
Pemilik website yang tidak ingin mengelola konfigurasi keamanan server secara mandiri dapat menggunakan Web Hosting DomaiNesia yang dilengkapi perlindungan keamanan untuk membantu memantau dan memblokir berbagai aktivitas mencurigakan pada website.
Contoh Virtual Patching pada Plugin WordPress
Misalnya, sebuah plugin formulir memiliki celah arbitrary file upload. Pada kondisi tertentu, celah ini memungkinkan penyerang mengirimkan tipe file yang seharusnya tidak diizinkan.
Tanpa perlindungan tambahan, permintaan upload dapat mencapai plugin yang rentan. Jika file berbahaya berhasil tersimpan dan dapat dieksekusi oleh server, penyerang berpotensi menjalankan kode, mengubah file website, atau mengakses data tertentu.
Dengan virtual patching, WAF dapat menerapkan aturan yang membatasi:
- Ekstensi file.
- Lokasi upload.
- Endpoint yang menerima permintaan.
- Format parameter.
- Pola payload yang berkaitan dengan eksploitasi.
Permintaan yang memenuhi karakteristik serangan kemudian diblokir sebelum diproses oleh plugin.
Namun, pemilik website tetap harus memperbarui plugin WordPress setelah versi yang telah diperbaiki tersedia.
Perbedaan Virtual Patching dan Update Perangkat Lunak
Virtual patching dan update resmi menangani masalah yang sama melalui lapisan berbeda.
OWASP menyatakan bahwa memperbaiki kerentanan pada kode tetap menjadi strategi remediasi utama. Virtual patching digunakan untuk memperkecil waktu paparan ketika perbaikan kode belum dapat diterapkan.
Batasan Virtual Patching
Virtual patching dapat mengurangi risiko dengan cepat, tetapi tidak boleh dianggap sebagai perlindungan sempurna.
1. Hanya Melindungi Jalur Serangan yang Tercakup
Sebuah aturan biasanya dibuat berdasarkan karakteristik kerentanan atau pola serangan tertentu.
Jika aturan terlalu sempit, penyerang mungkin dapat menggunakan variasi payload atau jalur berbeda. Sebaliknya, aturan yang terlalu luas dapat memblokir aktivitas pengguna yang sebenarnya sah.
2. Membutuhkan Pengujian dan Pemantauan
Aturan baru sebaiknya diuji sebelum diterapkan secara penuh, terutama pada aplikasi bisnis yang memiliki pola request kompleks.
Administrator perlu memantau:
- Request yang diblokir.
- Tingkat false positive.
- Perubahan performa.
- Endpoint yang paling sering diserang.
- Percobaan bypass terhadap aturan.
3. Tidak Menggantikan Kontrol Keamanan Lain
Virtual patch pada WAF terutama bekerja terhadap lalu lintas yang melewati lapisan tersebut. Perlindungan ini tidak otomatis menyelesaikan masalah seperti:
- Kata sandi administrator yang dicuri.
- Plugin atau tema bajakan.
- Akun internal yang disalahgunakan.
- Malware yang sudah berada di server.
- Kesalahan konfigurasi akses.
- Akses langsung yang melewati WAF.
- Backup yang tidak tersedia.
Karena itu, virtual patching perlu digabungkan dengan autentikasi yang kuat, pembatasan akses, pemindaian malware, backup, dan pemantauan log.
4. Bergantung pada Ketersediaan Aturan
Virtual patch tidak dapat memblokir kerentanan tertentu jika sistem keamanan belum memiliki aturan yang sesuai atau tidak dapat melihat jalur serangannya.
Penyedia keamanan harus terus memperbarui rule set agar perlindungannya tetap relevan terhadap kerentanan baru.
Praktik Terbaik Menggunakan Virtual Patching
Agar virtual patching memberikan perlindungan optimal, terapkan langkah berikut:
- Periksa apakah versi aplikasi benar-benar terdampak.
- Identifikasi endpoint dan jalur eksploitasi yang perlu dilindungi.
- Terapkan virtual patch secepat mungkin jika update resmi belum tersedia.
- Uji aturan untuk mencegah false positive.
- Pantau log setelah aturan diaktifkan.
- Siapkan backup sebelum melakukan update aplikasi.
- Uji update resmi pada staging jika memungkinkan.
- Pasang patch resmi sesegera mungkin setelah dinilai aman.
- Evaluasi kembali aturan virtual patch setelah update berhasil diterapkan.
Untuk perlindungan tambahan di tingkat hosting, Anda juga dapat mempelajari cara kerja perlindungan Imunify360. Imunify360 menggabungkan WAF, pemindaian malware, dan pemantauan perilaku skrip sebagai beberapa lapisan keamanan yang berbeda.
Dapatkan Hosting Terbaik DomaiNesia Sekarang!
Kesimpulan
Virtual patching adalah lapisan mitigasi yang memblokir upaya eksploitasi tanpa mengubah kode aplikasi yang rentan. Solusi ini sangat berguna untuk memperkecil window of exposure ketika patch resmi belum tersedia atau masih perlu diuji.
Namun, virtual patching tidak menghilangkan kerentanan pada sumbernya. Setelah vendor menyediakan versi yang telah diperbaiki, pemilik website tetap perlu melakukan backup, pengujian, dan update sesegera mungkin.
Strategi yang tepat bukan memilih antara virtual patching atau update resmi. Gunakan virtual patching untuk memberikan perlindungan cepat, lalu gunakan patch resmi untuk memperbaiki kerentanan pada aplikasi.
Untuk mengurangi beban pengelolaan keamanan teknis, Anda dapat mempertimbangkan Web Hosting dengan perlindungan berlapis dan memastikan layanannya menyediakan WAF, pemindaian malware, backup otomatis, serta pembaruan sistem keamanan secara rutin.