Masalah keamanan WordPress penting apa yang Anda ketahui?
Diterbitkan: 2022-03-04WordPress adalah Sistem Manajemen Konten (CMS) paling populer di seluruh dunia, mendukung lebih dari sepertiga dari semua situs web yang ada saat ini . Popularitasnya juga menjadikannya target serangan siber yang menarik, dan juga memiliki kerentanan keamanan.
Meskipun WordPress mungkin memiliki masalah keamanannya sendiri, itu bukan satu-satunya platform yang ditargetkan oleh penjahat dunia maya, dengan pencurian data menjadi bisnis yang sangat menguntungkan. Dari blog pribadi hingga situs web bisnis besar, tidak ada yang aman dari potensi ancaman yang ditimbulkan oleh aktor jahat. Terlepas dari apakah situs Anda adalah blog kecil atau bisnis besar, Anda perlu tahu cara mengamankan situs web Anda terlepas dari tujuannya. Daftar teratas harus menginstal plugin cadangan UpdraftPlus – Plugin cadangan paling populer dan berperingkat tertinggi di dunia. Jika Anda pernah menemukan diri Anda menjadi korban serangan, Anda setidaknya bisa tenang mengetahui bahwa Anda memiliki cadangan yang aman untuk memulihkan situs Anda.
Berikut adalah beberapa masalah Keamanan WordPress yang harus Anda ketahui dan cara mengatasinya;
1. Sistem plugin
Bagian dari apa yang membuat WordPress begitu populer adalah modularitasnya. Anda dapat dengan cepat dan mudah memperluas fitur dasar berkat sistem plugin. Sayangnya, tidak semua plugin dibuat dengan standar UpdraftPlus yang tinggi, dan beberapa dapat memperkenalkan kerentanan baru ke situs WordPress Anda.
Plugin 'PWA for WP & AMP' misalnya mengekspos lebih dari 20.000 situs WordPress ke kerentanan kontrol akses. Karena mengizinkan unggahan file sewenang-wenang, penyerang dapat mengeksekusi kode dari jarak jauh dan mengambil alih situs web yang menjalankan plugin ini. Pengguna harus menyadari dua hal dari contoh ini. Yang pertama adalah membatasi jumlah plugin yang digunakan di situs WordPress Anda jika memungkinkan. Yang kedua adalah memastikan bahwa semua aplikasi Anda – termasuk plugin dan versi WordPress – diperbarui secara berkala. Pembaruan terkadang menambahkan fitur baru, tetapi tujuan utamanya adalah untuk mengatasi kerentanan yang baru ditemukan.
2. Serangan injeksi SQL
Data adalah komoditas baru dan sangat berharga, dan salah satu alasan penyerang menargetkan situs web adalah untuk mencuri informasi yang disimpan dalam basis data. Injeksi SQL adalah cara populer untuk melakukan ini, dengan penyerang menyematkan perintah SQL di situs web yang dapat membahayakan informasi sensitif.
Jika Anda bertanya-tanya bagaimana ini terjadi, pikirkan tentang bentuk rata-rata yang akan Anda temukan di banyak situs WordPress. Hal ini memungkinkan pengguna untuk memberikan informasi seperti username dan password untuk login. Jika penyerang menyisipkan kode SQL di bidang ini, database yang mendasarinya dapat memproses kode tersebut dan melakukan tindakan yang tidak diharapkan. Ada beberapa cara yang dapat Anda lakukan untuk mencegah serangan injeksi SQL, tetapi yang paling umum adalah menerapkan validasi input yang ketat. Misalnya, Anda dapat menambahkan kode berikut ke file .htaccess Anda untuk memastikan bahwa semua input dikecualikan dari kueri SQL;
# Aktifkan mesin penulisan ulang Mesin Tulis Ulang Hidup Aturan Penulisan Ulang ^(.*)$ – [F,L] # Blokir injeksi MySQL Tulis Ulang %{QUERY_STRING} [a-zA-Z0-9_]=http:// [ATAU] Tulis Ulang %{QUERY_STRING} [a-zA-Z0-9_]=(..//?)+ [ATAU] Tulis Ulang %{QUERY_STRING} [a-zA-Z0-9_]=/([a-z0-9_.]//?)+ [NC,OR] RewriteCond %{QUERY_STRING} =PHP[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4} -[0-9a-f]{12} [NC,ATAU] Tulis Ulang %{QUERY_STRING} (../|..) [ATAU] Tulis Ulang %{QUERY_STRING} ftp: [NC,OR] Penulisan Ulang %{QUERY_STRING} http: [NC,OR] Penulisan Ulang %{QUERY_STRING} https: [NC,OR] Tulis Ulang %{QUERY_STRING} =|w| [NC,ATAU] Tulis Ulang %{QUERY_STRING} ^(.*)/self/(.*)$ [NC,OR] Penulisan Ulang %{QUERY_STRING} ^(.*)cPath=http://(.*)$ [NC,OR] Tulis Ulang %{QUERY_STRING} (<|%3C).*script.*(>|%3E) [NC,OR] Tulis Ulang %{QUERY_STRING} (<|%3C)([^s]*s)+cript.*(>|%3E) [NC,OR] Tulis Ulang %{QUERY_STRING} (<|%3C).*iframe.*(>|%3E) [NC,OR] Tulis Ulang %{QUERY_STRING} (<|%3C)([^i]*i)+frame.*(>|%3E) [NC,OR] Tulis Ulang %{QUERY_STRING} GLOBAL(=|[|%[0-9A-Z]{0,2}) [ATAU] Tulis Ulang %{QUERY_STRING} _REQUEST(=|[|%[0-9A-Z]{0,2}) [ATAU] Tulis Ulang %{QUERY_STRING} ^.*([|]|(|)|<|>).* [NC,ATAU] Tulis Ulang %{QUERY_STRING} (NULL|OUTFILE|LOAD_FILE) [ATAU] Tulis Ulang %{QUERY_STRING} (./|../|…/)+(motd|etc|bin) [NC,OR] Penulisan Ulang %{QUERY_STRING} (localhost|loopback|127.0.0.1) [NC,OR] Tulis Ulang %{QUERY_STRING} (<|>|'|%0A|%0D|%27|%3C|%3E|%00) [NC,ATAU] Penulisan Ulang %{QUERY_STRING} concat[^(]*( [NC,OR] Tulis Ulang %{QUERY_STRING} union([^s]*s)+pilih [NC,OR] Tulis Ulang %{QUERY_STRING} union([^a]*a)+ll([^s]*s)+pilih [NC,OR] Penulisan Ulang %{QUERY_STRING} (sp_executesql) [NC] Aturan Penulisan Ulang ^(.*)$ – [F,L] |
3. Serangan skrip lintas situs
Seperti serangan SQL Injection, Cross-site scripting (XSS) mencoba menyuntikkan kode berbahaya ke situs web yang rentan. Salah satu contohnya adalah memposting informasi yang mengarahkan pengguna situs web ke situs web lain yang kemudian mencoba mencuri data pribadi. Skenario ini dapat berpotensi berbahaya karena situs web lain bahkan mungkin tidak memerlukan masukan dari pengguna. Itu hanya dapat memindai data identifikasi pengguna seperti cookie, token sesi, dan banyak lagi.
Anda biasanya dapat mencegah serangan XSS menggunakan Web Application Firewall (WAF). Alat yang berguna ini memungkinkan Anda untuk memblokir lalu lintas tertentu di situs web. Sebagian besar plugin keamanan WordPress teratas seperti All In One WP Security & Firewall akan menyediakan fitur ini. Jika Anda lebih suka fokus menjalankan situs WordPress Anda dan ingin menyerahkan keamanannya kepada ahlinya, One WP Security & Firewall adalah cara yang bagus untuk melakukannya. Ini tidak hanya membantu Anda memblokir sebagian besar jenis serangan tetapi juga dapat memindai situs web WordPress Anda dari kerentanan yang mungkin tidak Anda sadari.
4. Serangan brute force
WordPress menggunakan sistem kredensial yang memungkinkan administrator dan pengguna resmi lainnya untuk mengakses fitur kontrolnya. Sayangnya, banyak pengguna cenderung menggunakan kata sandi yang lemah dan jelas. Kata sandi brute force menggunakan skrip yang melanjutkan dan beberapa kali upaya masuk ke situs WordPress hingga berhasil. Script bekerja dengan database yang menyimpan kamus nama pengguna dan kata sandi yang umum digunakan (seperti Admin dan Kata Sandi1), dengan harapan Anda akan memilih salah satu dari kombinasi ini tanpa memikirkan risikonya.
Namun Anda dapat melakukan beberapa hal untuk membatasi efektivitas serangan brute force;
- Gunakan kata sandi yang rumit dan unik
- Blokir akses ke direktori admin WordPress
- Tambahkan Otentikasi Dua Faktor (2FA)
- Nonaktifkan penjelajahan direktori
- Batasi jumlah upaya login
5. Serangan penolakan layanan terdistribusi
Serangan penolakan layanan (DDoS) terdistribusi terdiri dari banjir besar permintaan yang menargetkan situs web. Banjir ini dimaksudkan untuk melumpuhkan sebuah situs web, sehingga tidak dapat diakses oleh pengunjung biasa karena tidak mampu mengatasi volume permintaan. Meskipun DDoS tidak unik untuk WordPress, situs web berdasarkan CMS ini bisa sangat rentan karena membutuhkan lebih banyak sumber daya untuk melayani permintaan daripada situs web statis biasa. Akan tetapi, tidak mungkin untuk berjaga-jaga terhadap banjir DDoS yang ditentukan, tetapi bahkan organisasi yang paling menonjol pun telah menyerah pada serangan ini. Salah satu contohnya adalah serangan GitHub pada tahun 2018 , di mana situs web mereka terkena serangan banjir DDoS selama 20 menit.
Umumnya situs web yang lebih kecil bukanlah target dari volume yang begitu besar. Namun, untuk mengurangi gelombang DDoS yang lebih kecil, pastikan Anda menggunakan Jaringan Distribusi Konten (CDN). Jaringan server ini dapat membantu menyeimbangkan beban yang masuk dan membantu dalam menyajikan konten lebih cepat.
6. Serangan pemalsuan permintaan lintas situs
Serangan pemalsuan permintaan lintas situs (CSRF) adalah cara lain penyerang memaksa aplikasi web seperti WordPress untuk mengenali autentikasi palsu. WordPress sangat rentan karena situs-situs ini umumnya memiliki banyak kredensial pengguna. Serangan CSRF mirip dengan serangan XSS yang dibahas sebelumnya dalam banyak hal. Perbedaan utama adalah bahwa CSRF membutuhkan sesi otentikasi, sedangkan XSS tidak. Apapun, tujuan utamanya adalah untuk mengalihkan pengunjung ke lokasi alternatif untuk mencuri data.
Pencegahan CSRF membutuhkan implementasi di tingkat plugin dalam banyak kasus. Pengembang biasanya menggunakan token anti CSRF untuk menautkan sesi dengan pengguna tertentu. Pemilik situs WordPress hanya dapat mengandalkan pembaruan plugin dan teknik pengerasan situs web umum untuk membantu mencegah serangan CSRF.
Beberapa tindakan pengerasan yang mungkin berhasil meliputi;
- Menonaktifkan editor file
- Blok eksekusi PHO yang ditargetkan
- implementasi 2FA
Pemikiran terakhir tentang masalah keamanan WordPress
Terkadang ada kesalahpahaman bahwa WordPress adalah aplikasi web yang sangat rentan. Namun, ini bukan klaim yang sepenuhnya adil. Sebagian berasal dari meluasnya penggunaan WordPress, tetapi alasan yang lebih signifikan adalah kegagalan pemilik situs web untuk mengambil tindakan pencegahan yang diperlukan.
Kita sering mengabaikan keamanan tanpa memikirkan konsekuensi memilih kata sandi yang sederhana. Namun pemilik situs web harus bertanggung jawab tidak hanya untuk integritas situs web mereka, tetapi juga untuk keamanan data pengguna mereka.
Profil Penulis
Pui Mun Beh adalah pemasar digital WebRevenue .
Posting Masalah keamanan WordPress penting apa yang Anda ketahui? muncul pertama kali di UpdraftPlus. UpdraftPlus – Cadangkan, pulihkan, dan plugin migrasi untuk WordPress.