Rumahweb Journal
Banner - Mencegah SQL Injection

Cara Mencegah SQL Injection di WordPress

Keamanan website adalah aspek penting yang harus diperhatikan setiap pemilik situs, terutama pengguna platform populer seperti WordPress. Salah satu ancaman serius yang sering terjadi adalah SQL Injection. Dalam artikel ini, kami akan membahas cara-cara mencegah SQL Injection di WordPress.

SQL Injection adalah salah satu bentuk serangan siber yang paling umum terjadi pada situs web berbasis WordPress. Serangan ini dapat mengeksploitasi kerentanan di dalam kode SQL situs Anda, memungkinkan peretas untuk mengakses, mengubah, atau menghancurkan data di dalam basis data.

Oleh karena itu, penting untuk memahami cara kerja SQL Injection dan bagaimana cara mencegahnya agar situs WordPress Anda tetap aman

Bagaimana cara kerja SQL Injection di WordPress?

SQL Injection bekerja dengan cara memanipulasi query SQL yang dieksekusi di server database. Peretas dapat memasukkan kode berbahaya ke dalam input yang tidak divalidasi dengan baik, sehingga query SQL akan dieksekusi sesuai keinginan peretas.

Pada situs WordPress, ini sering terjadi pada formulir login, kotak pencarian, atau kolom komentar yang tidak memiliki perlindungan yang memadai. Jika berhasil, mereka dapat mengakses, memodifikasi, atau bahkan menghapus data sensitif dari database WordPress Anda

Jenis Serangan SQL

Berikut adalah beberapa jenis serangan dari SQL Injection

Promo Hosting Murah Rumahweb

1. SQLi dalam Band

Serangan ini merupakan yang paling umum terjadi, di mana peretas mendapatkan respon secara langsung dari basis data setelah memasukkan kode berbahaya. Metode ini sering menggunakan dua teknik utama, yaitu ‘Error-based’ dan ‘Union-based’.

2. SQLi Inferensial (Blind SQLi)

Dalam serangan ini, peretas tidak mendapatkan data secara langsung dari basis data. Sebaliknya, mereka melakukan analisis atas perilaku aplikasi untuk membuat dugaan tentang struktur basis data. Teknik ini memakan waktu lebih lama tetapi tetap berbahaya.

3. SQLi di Luar Band

Serangan ini terjadi ketika respon dari basis data tidak dapat langsung dikirim ke peretas melalui saluran yang sama dengan input yang digunakan. Serangan ini memanfaatkan protokol-protokol lain seperti HTTP atau DNS untuk mendapatkan hasil.

Cara Mencegah Serangan SQL Injection

Cara mencegah SQL Injection di WordPress melibatkan serangkaian tindakan keamanan untuk melindungi situs Anda dari potensi serangan. Berikut adalah langkah-langkah yang dapat Anda lakukan untuk mencegah SQL Injection di WordPress:

1. Terapkan Web Application Firewall (WAF)

Web Application Firewall atau yang disingkat menjadi WAF dapat memblokir lalu lintas berbahaya sebelum mencapai situs Anda. Dengan menggunakan WAF, Anda bisa mencegah berbagai macam serangan, termasuk SQL Injection, dengan memfilter dan memonitor permintaan yang masuk.

Salah satu layanan yang menyediakan Web Application Firewall adalah Cloudflare, yang mana dapat Anda gunakan secara gratis dan dapat secara otomatis mendeteksi beberapa variasi serangan SQLi.

Anda dapat mempelajari cara setting cloudflare dan cara kerjanya pada artikel berikut.

Web Application Firewall Cloudflare - Mencegah SQL Injection

2. Ubah Prefix database pada WordPress

Secara default, WordPress menggunakan awalan wp_ untuk tabel basis datanya. Peretas sering menggunakan skrip otomatis untuk menargetkan situs WordPress yang menggunakan awalan basis data default (wp_).

Dengan mengubah awalan menjadi sesuatu yang unik, Anda membuat situs Anda lebih sulit dikenali oleh skrip otomatis ini, sehingga mengurangi risiko menjadi sasaran. Selain itu, dengan awalan default (wp_) peretas sudah mengetahui nama-nama tabel di basis data WordPress, seperti wp_users, wp_posts, dan sebagainya.

Jika mereka berhasil menyusup, mereka bisa lebih mudah mengeksekusi serangan karena struktur basis data sudah dapat diprediksi. Mengubah awalan tabel membuat struktur basis data lebih sulit ditebak. 

Berikut adalah contoh prefix database yang lebih aman: WPdc1_ atau Kiu9kho_

3. Lakukan Pembaruan Secara Berkala

Pastikan untuk selalu memperbarui versi WordPress, plugin, dan tema yang Anda gunakan. Pembaruan ini sering mencakup patch keamanan yang memperbaiki kerentanan, termasuk masalah yang terkait dengan SQL Injection.

Anda bisa melakukan pembaruan plugin, tema dan versi WordPress melalui dashboard yang panduannya bisa Anda pelajari pada artikel berikut: Update WordPress

4. Instal Plugin Keamanan WordPress

Beberapa plugin keamanan WordPress seperti Wordfence atau Sucuri dapat memberikan lapisan perlindungan tambahan dengan mendeteksi upaya SQL Injection. Plugin ini menawarkan fitur seperti pemindaian basis data, firewall, dan pengawasan keamanan real-time.

Kami menyediakan panduan setting untuk plugin keamanan WordPress seperti Wordfence atau Sucuri yang bisa Anda pelajari.

5. Batasi Hak Akses Pengguna

Berikan hak akses minimum yang diperlukan bagi setiap pengguna WordPress. Batasi akses ke bagian administrator hanya untuk pengguna yang benar-benar membutuhkannya. Pengguna dengan hak akses yang lebih rendah sebaiknya tidak memiliki kemampuan untuk mengubah basis data.

Anda bisa mengatur roles user WordPress melalui dashboard, yang panduannya bisa dipelajari pada artikel berikut: mengelola user role di WordPress

7. Sembunyikan Versi WordPress Anda

Peretas sering kali mencari versi WordPress yang diketahui memiliki celah keamanan. Menyembunyikan versi WordPress yang Anda gunakan dapat mengurangi risiko serangan yang ditargetkan terhadap versi tertentu yang memiliki kerentanan.

Dengan menerapkan langkah-langkah ini, Anda dapat meningkatkan keamanan situs WordPress Anda dan mencegah serangan SQL Injection yang berpotensi merusak.

Biasanya, versi WordPress Anda akan ditampilkan di header situs web dengan tag:

<meta name="generator" content="WordPress x.x.x" />

Untuk menyembunyikan Anda mengakses dari file WordPress Anda dari file manager yang terletak pada  public_html ? wp-content ? theme lalu masuk pada folder theme yang Anda gunakan. Lalu tambahkan kode berikut:  

remove_action('wp_head', 'wp_generator');

Kode ini akan menghapus tag meta dari bagian head di setiap halaman website.

<meta name="generator" content="WordPress X.X.X">

Setelah itu simpan perubahan yang Anda lakukan.

8. Gunakan Password Yang Kuat dan Aktifkan 2FA

Langkah terakhir untuk mencegah SQL Injection di WordPress adalah management password. Pastikan bahwa password yang Anda gunakan adalah kombinasi antara angka, huruf kapital, huruf kecil, spesial karakter agar lebih kuat. Selain itu, aktifkan juga fitur 2FA login ke dashboard untuk lapisan keamanan website Anda.

Selain menggunakan password yang kuat dan mengaktifkan fitur 2FA, kami sarankan agar Anda mengelola kata sandi melalui password manager.

Kesimpulan

SQL Injection adalah ancaman serius bagi keamanan situs WordPress, tetapi dengan langkah-langkah yang tepat, risiko serangan ini dapat diminimalkan. Memahami cara kerja SQL Injection, mengenali jenis-jenis serangan, dan mengetahui seberapa umum serangan ini di WordPress adalah langkah pertama untuk melindungi situs Anda.

Tindakan pencegahan seperti memasang firewall, mengubah awalan basis data, hingga mengaktifkan 2FA login seperti yang telah kami sampaikan diatas dapat secara signifikan meningkatkan keamanan situs Anda.

Demikian artikel kami tentang cara mencegah SQL Injection di WordPress, semoga bermanfaat.

Bermanfaatkah Artikel Ini?

Klik bintang 5 untuk rating!

Rating rata-rata 0 / 5. Vote count: 0

Belum ada vote hingga saat ini!

Kami mohon maaf artikel ini kurang berguna untuk Anda!

Mari kita perbaiki artikel ini!

Beri tahu kami bagaimana kami dapat meningkatkan artikel ini?

Cloud Hosting Terbaik Rumahweb

Akbar Wirabattana

Technical support, kadang juga menulis artikel