Cara Memperbaiki dan Mencegah Serangan XSS di WordPress

Diterbitkan: 2022-06-14
How to fix and prevent xss attacks

Apakah Anda khawatir tentang peretas yang menyerang situs web Anda?

Skrip lintas situs, juga disebut XSS, adalah salah satu serangan paling umum di situs WordPress. Peretas menemukan kerentanan di situs Anda dan menggunakannya untuk mencuri informasi dan menyalahgunakan situs web Anda.

Yang lebih buruk adalah jika Anda tidak segera memperbaikinya, peretasan ini dapat menyebabkan kerusakan yang lebih parah – jenis yang sangat sulit untuk dipulihkan.

Anda dapat mencegah peretasan ini dengan memasang firewall di situs WordPress Anda.

Jika situs web Anda sudah diserang, kami akan menunjukkan cara memperbaikinya segera dalam bahasa sederhana yang ramah pemula. Kami akan menjaga jargon keamanan siber seminimal mungkin dalam tutorial ini. Kami juga akan menunjukkan cara mencegah serangan di masa mendatang.

Pertama, mari kita cepat memahami apa yang terjadi dalam serangan XSS sehingga Anda akan lebih siap untuk menanganinya.

Apa itu Serangan XSS di WordPress?

XSS adalah singkatan dari Cross Site Scripting yang merupakan jenis serangan injeksi di mana peretas menyuntikkan skrip berbahaya ke dalam situs web.

Skrip ini disamarkan sebagai kode bagus di situs web tepercaya. Selanjutnya, ketika pengguna membuka situs web ini, browser mereka mengeksekusi semua kode, termasuk skrip berbahaya, karena menganggap itu semua instruksi tepercaya.

Dalam istilah yang lebih sederhana, bayangkan Anda seorang mata-mata dan Anda baru saja menerima email resmi dari pemerintah tentang misi rahasia. Ini berisi semua instruksi yang perlu Anda ikuti hingga ke T.

Apa yang Anda tidak tahu adalah bahwa seseorang mencegat email itu dan menambahkan beberapa instruksi mereka sendiri. Pemerintah tidak tahu tentang itu dan Anda tidak perlu repot-repot memeriksa ulang karena Anda memercayai sumbernya.

Beberapa di antaranya tidak masuk akal tetapi Anda dilatih untuk mematuhi setiap perintah untuk mencapai misi Anda.

Dalam skenario ini, pemerintah adalah situs web Anda, dan mata-mata adalah peramban pengguna. Peramban mengikuti instruksi dari situs web Anda dan tidak dapat membedakan antara skrip yang baik dan yang buruk.

Script ini biasanya dalam Javascript, salah satu bahasa pemrograman yang paling populer dan banyak digunakan. Meskipun, serangan ini dapat terjadi menggunakan bahasa sisi klien apa pun.

Sekarang ada banyak cara untuk melakukan serangan XSS. Salah satu caranya adalah dengan mengirimkan tautan ke pengguna yang tidak menaruh curiga agar mereka mengekliknya. Setelah mereka mengkliknya, serangan itu mungkin dapat melakukan satu atau lebih hal berikut:

  • Arahkan pengguna ke situs berbahaya
  • Tangkap penekanan tombol pengguna
  • Jalankan eksploitasi berbasis browser web
  • Curi informasi cookie dari pengguna yang masuk ke akun

Jika peretas dapat mencuri informasi cookie, mereka dapat sepenuhnya membahayakan akun pengguna. Misalnya, jika Anda masuk ke panel wp-admin situs web Anda, peretas dapat mencuri kredensial Anda dan masuk ke situs Anda.

Apa yang perlu Anda lakukan untuk mencegah serangan ini adalah memastikan semua data pengguna divalidasi dan disanitasi dengan benar sebelum masuk ke situs web Anda. Dengan begitu, tidak ada input pengguna yang dapat berupa kode Javascript berbahaya. Selain itu, Anda perlu memastikan tidak ada kerentanan XSS di situs Anda yang memungkinkan peretas menyerang.

Kami baru saja menggores permukaan serangan XSS tetapi kami harap Anda memiliki pemahaman yang baik tentang cara kerja serangan XSS WordPress. Sekarang jika Anda mencurigai situs Anda diretas, ikuti tutorial langkah demi langkah kami yang mudah di bawah ini.

Cara Menemukan dan Memperbaiki Serangan XSS di WordPress

Untuk menemukan segala jenis malware atau peretasan di situs Anda, Anda harus menjalankan pemindaian mendalam di seluruh situs web Anda termasuk file dan basis datanya.

Kami akan menggunakan Sucuri untuk memindai dan membersihkan situs Anda yang diretas. Sucuri memberi Anda pengaturan keamanan yang kuat termasuk firewall, pemindai malware, dan pembersih malware.

Sucuri menawarkan pemindai malware situs web gratis yang dapat Anda instal di dalam situs WordPress Anda dengan menavigasi ke Plugin »Tambah tab Baru .

Sebaiknya gunakan pemindai sisi server premium. Ini akan mengubah situs web Anda keluar untuk menemukan jejak malware.

Selain itu, berikut adalah beberapa sorotannya:

  • Memantau spam dan skrip berbahaya
  • Memeriksa pintu belakang tersembunyi yang dibuat oleh peretas
  • Mendeteksi perubahan yang dibuat pada DNS (sistem nama domain) dan SSL
  • Memeriksa daftar hitam dengan mesin pencari dan otoritas lainnya
  • Memantau waktu aktif situs web
  • Peringatan instan melalui email, SMS, Slack, dan RSS

Untuk detail lebih lanjut, baca Ulasan Sucuri kami.

Sucuri hadir dengan label harga $ 199,99 per tahun. Jika itu di luar anggaran Anda, Anda dapat mencoba plugin keamanan lainnya. Lihat daftar kami: 9 Plugin Keamanan WordPress Terbaik Dibandingkan.

Saat memilih plugin keamanan, pastikan itu memberi Anda semua fitur keamanan cyber yang Anda butuhkan untuk menemukan dan memperbaiki infeksi malware dan melindungi situs web Anda.

Langkah 1: Memindai Situs Web Anda

Untuk memulai, Anda harus mendaftar paket dengan Sucuri. Kemudian, masuk ke dasbor Sucuri tempat Anda dapat menambahkan situs Anda.

Add site in Sucuri

Di sini, Anda harus menghubungkan situs web Anda dengan memasukkan kredensial FTP Anda. Jika Anda tidak mengetahui kredensial FTP Anda, Anda bisa mendapatkannya dari host web Anda.

Connect site to Sucuri

Saat situs Anda terhubung, Sucuri akan secara otomatis menjalankan pemindaian menyeluruh terhadap situs web Anda. Setelah selesai, laporan terperinci akan ditampilkan di bawah tab 'Situs Saya' .

Sucuri dashboard site infected

Sekarang Anda dapat mengklik tombol 'Details' di sebelah pesan peringatan. Ini akan membuka halaman Pemantauan tempat Anda dapat melihat detail peretasan atau infeksi.

Langkah 2: Meminta Pembersihan Malware

Di halaman Pemantauan , Anda dapat melihat jenis malware apa yang telah menginfeksi situs Anda. Sucuri menambahkan peringkat untuk menunjukkan tingkat risiko. Jadi, jika itu adalah risiko kritis atau tinggi, Anda tahu bahwa Anda harus segera memperbaikinya. Selain itu, ini juga akan menunjukkan kepada Anda jika situs Anda telah masuk daftar hitam oleh mesin pencari mana pun.

Clean up site with Sucuri

Sekarang setelah Anda tahu situs Anda terinfeksi, Anda perlu membersihkannya dan Sucuri membuatnya sangat mudah bagi Anda. Untuk memulai prosesnya, klik tombol 'Bersihkan Situs Saya' .

Malware removal request in Sucuri

Pada halaman berikutnya, klik tombol Permintaan Penghapusan Malware Baru dan sebuah formulir akan muncul di mana Anda dapat memasukkan detail situs Anda.

Malware removal request form in Sucuri

Cukup isi formulir dan kirimkan. Setelah selesai, pakar keamanan Sucuri akan membersihkan situs Anda untuk Anda. Jika Anda tidak mengetahui detail apa pun yang Anda perlukan untuk formulir tersebut, Anda dapat menanyakannya kepada host web Anda.

Sekarang Anda mungkin bertanya-tanya berapa lama waktu yang dibutuhkan untuk membersihkan situs Anda.

Sucuri memberikan preferensi pertama kepada pengguna pada paket Bisnis. Mereka menjamin waktu penyelesaian 6 jam. Untuk paket lain, itu tergantung pada seberapa kompleks infeksi situs Anda dan volume permintaan yang mereka miliki dalam antrian.

Segera setelah serangan, kami sangat menyarankan untuk mengeluarkan semua pengguna dari situs Anda dan mengubah kredensial masuk Anda agar aman.

Cara Mencegah Serangan XSS di Situs WordPress Anda

Itu selalu yang terbaik untuk melindungi situs web Anda dan mencegah serangan malware semacam ini di situs Anda. Ini jauh lebih mudah dan lebih murah daripada mencoba memperbaiki situs web yang diretas. Berikut adalah langkah-langkah yang kami rekomendasikan untuk mencegah serangan XSS di situs Anda.

1. Aktifkan Firewall Aplikasi Web (WAF)

Sucuri memiliki salah satu firewall terbaik untuk situs WordPress. Itu tidak hanya memblokir serangan XSS tetapi semua jenis serangan malware lainnya seperti DDoS, Brute Force, Phishing, dan injeksi SQL.

Firewall akan berada di depan situs web Anda dan memindai setiap pengguna yang masuk. Ini akan mengidentifikasi dan memblokir bot jahat sebelum mereka mencapai situs Anda.

Untuk mengaktifkan firewall Sucuri, navigasikan ke tab Firewall di dasbor Sucuri Anda.

Pilih situs Anda, dan Anda akan melihat petunjuk penyiapan yang dapat Anda ikuti. Sucuri memberi Anda 2 opsi untuk mengatur firewall:

1. Integrasi Otomatis: Cukup masukkan kredensial hosting Anda menggunakan cPanel atau Plesk. Metode ini mengharuskan Anda untuk memberikan Sucuri akses ke server situs web Anda untuk secara otomatis mengatur firewall di situs Anda.

Sucuri firewall waf

2. Integrasi Manual: Anda dapat mengatur firewall sendiri tanpa memberikan akses internal ke Sucuri. Untuk memulai, klik tautan domain internal dan pastikan tautan itu dimuat.

check internal domain link

Selanjutnya, Anda dapat mengonfigurasi DNS Anda untuk mengarahkan lalu lintas web Anda ke firewall Sucuri. Untuk ini, Anda harus mengakses catatan DNS di akun hosting Anda. Di sini, Anda dapat mengubah catatan 'A' situs Anda dan memasukkan alamat IP yang disediakan Sucuri.

sucuri dns ip addresses

Jika Anda stres karena ini semua terlalu rumit, Anda dapat meminta bantuan host web Anda dan mereka akan memandu Anda melalui prosesnya. Selain itu, Anda juga dapat meningkatkan tiket dukungan dengan Sucuri dan tim dukungan mereka akan membantu Anda mengubah catatan DNS.

Untuk membuka tiket, Anda akan menemukan tautan di dalam petunjuk manual di halaman yang sama.

open a ticket sucuri

Setelah Anda selesai menyiapkan firewall, biasanya diperlukan beberapa jam agar perubahan terlihat. Anda dapat mengharapkan waktu tunggu maksimum 48 jam.

Saat Anda mengaktifkan firewall, itu akan secara otomatis menambahkan header keamanan ke situs Anda untuk melindunginya dari serangan XSS.

Jika ada percobaan serangan XSS, Sucuri akan memblokirnya dan melaporkannya kepada Anda di tab Laporan .

Sekarang yang kami sukai dari firewall Sucuri adalah sangat mudah digunakan oleh siapa saja, termasuk pemula. Anda tidak perlu menjadi ahli keamanan dunia maya atau mengetahui pengkodean apa pun.

Anda dapat mengaktifkan semua jenis fitur perlindungan hanya dengan satu klik di tab Pengaturan »Keamanan .

Jadi misalnya, Anda dapat mengaktifkan perlindungan DDoS dan pemblokiran geografis untuk mempersulit peretas menyerang situs Anda.

Emergency ddos protection

Untuk mengaktifkan fitur keamanan di sini, yang harus Anda lakukan adalah mencentang kotak dan menyimpan pengaturan Anda. Saat Anda perlu menonaktifkannya, Anda hanya perlu menghapus centang pada kotak.

Selain itu, plugin Sucuri akan:

  • Pindai dan pantau spam dan kode berbahaya secara teratur
  • Memberi tahu Anda tentang kerentanan skrip lintas situs
  • Blokir bot dan peretas jahat
  • Periksa daftar hitam dengan mesin pencari dan otoritas lainnya
  • Pantau waktu aktif situs web
  • Deteksi perubahan yang dibuat pada DNS (sistem nama domain) dan SSL
  • Mengirimi Anda peringatan keamanan instan melalui email, SMS, Slack, dan RSS

Jadi situs Anda akan dilindungi setiap saat.

2. Gunakan Formulir Aman

Di situs web yang rentan, formulir adalah salah satu target paling umum bagi peretas. Jika formulir Anda tidak aman, ini berarti siapa pun dapat dengan mudah memasukkan kode berbahaya di bidang formulir Anda.

Rekomendasi kami untuk mengamankan formulir situs web Anda adalah WPForms. Ini adalah pembuat formulir WordPress #1 yang memiliki keamanan bawaan sehingga formulir Anda terlindungi sejak awal.

anti spam protection in WPForms

Secara default, formulir memiliki perlindungan anti-spam yang diaktifkan. Plus, Anda bahkan dapat menambahkan CAPTCHA ke formulir Anda untuk memblokir bot spam.

Advanced noCaptcha and Invisible Captcha

Anda dapat mengaktifkan captcha yang tidak terlihat atau jenis di mana pengguna harus memecahkan teka-teki kecil atau mencentang kotak untuk membuktikan bahwa mereka adalah manusia.

3. Tetapkan Izin Peran Pengguna

Saat Anda memiliki banyak orang yang mengerjakan situs web Anda, tidak bijaksana untuk memberikan akses admin kepada semua orang. Lebih baik untuk menetapkan mereka peran berdasarkan izin apa yang mereka butuhkan.

WordPress memungkinkan Anda membuat peran untuk:

  • Admin super
  • Administrator
  • Editor
  • Pengarang
  • Penyumbang
  • pelanggan

Sekarang jika seorang peretas mendapatkan kendali atas akun pengguna, mereka akan dibatasi dalam apa yang dapat mereka lakukan di situs Anda.

4. Auto-logout Pengguna Tidak Aktif

Peretas dapat memperoleh akses ke akun pengguna dengan membajak sesi browser mereka dan mencuri cookie.

Anda dapat meminimalkan risiko ini dengan keluar dari pengguna WordPress yang tidak aktif.

Banyak plugin keamanan memiliki fitur keluar sesi idle atau Anda dapat menggunakan plugin Logout Tidak Aktif.

5. Perbarui Situs Web Anda Secara Teratur

Plugin WordPress, tema, dan bahkan instalasi WordPress Anda mendapatkan pembaruan secara teratur. Anda akan melihatnya di dalam dasbor WordPress Anda saat tersedia:

updates in wordpress

Banyak pemilik situs web mengabaikan pembaruan untuk waktu yang lama tetapi ini dapat mengekspos situs web Anda ke peretas. Pembaruan biasanya membawa perbaikan bug, fitur baru, dan peningkatan perangkat lunak. Mereka juga dapat memiliki patch keamanan. Anda dapat melihat apakah pembaruan membawa patch keamanan dengan melihat detail pembaruan.

view version details of update

Ini berarti kerentanan ditemukan dalam perangkat lunak yang dapat digunakan peretas untuk menyerang situs Anda. Ketika pengembang menemukan masalah keamanan, mereka menambalnya dan merilis versi baru perangkat lunak.

Yang harus Anda lakukan adalah memperbarui perangkat lunak di situs Anda.

Jadi, jika Anda melihatnya sebagai patch keamanan, segera perbarui untuk menghindari risiko diretas.

security update

Salah satu alasan utama pemilik situs mengabaikan pembaruan adalah mereka terkadang dapat merusak situs Anda atau menyebabkan masalah ketidakcocokan. Kami menyarankan Anda menguji pembaruan di situs pementasan dan kemudian menjalankannya di situs langsung Anda.

Dengan itu, Anda telah belajar cara memperbaiki dan mencegah serangan XSS di situs WordPress Anda.

Sebelum kami menyelesaikannya, kami akan memberi Anda satu tip keamanan lagi. Selalu ambil cadangan rutin situs web Anda.

Bahkan dengan langkah-langkah keamanan terkuat di situs Anda, ada banyak hal yang bisa salah. Misalnya, pengguna dapat membuat kesalahan manusia sederhana yang membuat situs web Anda mogok.

Anda dapat mengatur pencadangan otomatis menggunakan plugin pencadangan seperti UpdraftPlus. Untuk opsi lainnya, lihat daftar plugin cadangan WordPress teratas kami.

FAQ

1. Apakah WordPress rentan terhadap serangan skrip lintas situs?

Perangkat lunak inti WordPress dikembangkan dan dikelola oleh beberapa ahli terbaik di dunia. Perangkat lunak mereka cukup kuat tetapi perlu diingat bahwa tidak ada perangkat lunak yang bebas dari kerentanan.

Alasan situs WordPress sering diserang adalah karena platformnya sangat populer. Dan sebagian besar pengguna memasang banyak tema dan plugin pihak ketiga. Kerentanan dapat berkembang di salah satu elemen ini dan peretas dapat mengeksploitasinya untuk meretas situs Anda.

2. Apakah ada berbagai jenis serangan skrip lintas situs?

Ya. Ada 3 jenis utama serangan XSS:

  • Stored XSS (juga dikenal sebagai XSS persisten): Penyerang menyimpan muatan mereka di server yang disusupi, menyebabkan situs web mengirimkan kode berbahaya ke pengunjung lain.
  • Reflected XSS: Payload disimpan dalam data yang dikirim dari browser ke server.
  • DOM XSS: Di sini, server itu sendiri bukanlah yang rentan terhadap XSS, melainkan JavaScript pada halaman tersebut.
  • Skrip lintas situs mandiri: Penyerang dapat mengeksploitasi kerentanan yang membutuhkan konteks dan perubahan manual yang sangat spesifik. Korban di sini hanya bisa menjadi diri Anda sendiri.
  • Skrip lintas situs buta: Dalam serangan ini, kerentanan biasanya terletak pada halaman yang hanya dapat diakses oleh pengguna yang berwenang. Penyerang tidak dapat melihat hasil serangan.

3. Bagaimana cara memastikan tidak ada masalah keamanan lain di situs saya?

Pastikan Anda selalu memasang plugin keamanan di situs web Anda. Ini adalah suatu keharusan untuk semua jenis situs web termasuk WooCommerce, blog, dan situs bisnis kecil. Kami merekomendasikan Sucuri, tetapi Anda juga dapat memeriksa Wordfence, MalCare, dan SiteLock. Lihat lebih banyak rekomendasi teratas kami di sini: 9 Plugin Keamanan WordPress Terbaik Dibandingkan.

Itu saja yang kami miliki untuk Anda hari ini. Kami berharap posting ini telah memberi Anda semua yang Anda butuhkan untuk mengamankan situs web Anda.

Untuk informasi lebih lanjut tentang keamanan situs web, lihat sumber daya kami di:

  • Panduan Keamanan WordPress Lengkap (Ramah untuk Pemula)
  • 5 Pemindai Kerentanan WordPress Terbaik Untuk Menemukan Ancaman
  • 9 Plugin Log Aktivitas Terbaik untuk Melacak dan Mengaudit Situs WordPress Anda

Posting ini akan memberi Anda lebih banyak cara untuk menutup kerentanan dan melindungi situs web Anda dari semua risiko.