Elementor Pro 4.2.1 dan versi sebelumnya dapat disusupi oleh celah remote-code-execution (RCE) tanpa autentikasi pada kolom unggah file di widget Forms; masalah ini telah diperbaiki pada versi 4.2.2, sehingga situs yang menjalankan kode lama harus segera melakukan pembaruan.

Cara kerja bug ini

Kerentanan ini memiliki peringkat CVSS 9.0, yang berarti penyerang yang dapat mengakses situs yang rentan dapat mengeksekusi kode PHP arbitrer pada server tanpa perlu masuk (login) atau memberikan kredensial apa pun. Masalahnya terletak pada cara Elementor Pro memproses unggahan file di widget Forms miliknya. Plugin ini menjalankan dua loop terpisah: satu untuk memvalidasi setiap file yang diunggah, dan satu lagi untuk menyimpan file ke direktori unggahan yang dapat diakses melalui web.

Penyerang dapat membuat satu permintaan (request) yang berisi dua file. File pertama diberi nama kosong, yang menyebabkan loop validasi melewati pemeriksaannya. File kedua, berupa skrip PHP berbahaya, melewati loop kedua dan ditulis ke folder publik. Karena Elementor Pro menamai file yang diunggah menggunakan stempel waktu (timestamp), penyerang dapat memprediksi nama file tersebut dan kemudian memintanya secara langsung untuk menjalankan kode.

Bagaimana celah ini muncul

Desain loop ganda tersebut dimaksudkan agar validasi dan penyimpanan tetap independen, namun kurangnya pemeriksaan validitas (sanity check) bersama memungkinkan trik nama kosong tersebut lolos. Bug ini memengaruhi setiap instalasi yang menggunakan kolom unggah file pada widget Forms, terlepas dari apakah pemilik situs telah mengaktifkan fitur tersebut untuk pengunjung atau tidak.

Siapa yang berisiko

Setiap situs WordPress yang menginstal Elementor Pro 4.2.1 atau rilis sebelumnya terpapar risiko. Karena eksploitasi ini tidak memerlukan autentikasi, bahkan situs yang membatasi akses admin pun tetap rentan. Eksploitasi yang berhasil memberikan penyerang kendali penuh atas lingkungan hosting, membuka pintu bagi pencurian data, perusakan tampilan situs (defacement), atau penyebaran ransomware.

Apa yang harus dilakukan sekarang

  • Verifikasi versi yang terinstal dengan perintah WordPress CLI:

    wp plugin list --name=elementor-pro --field=version
    
  • Jika output menunjukkan 4.2.1 atau lebih rendah, segera perbarui ke 4.2.2 atau versi terbaru. Pembaruan ini mengganti logika unggahan yang cacat dengan satu rutinitas validasi-dan-simpan atomik tunggal yang memblokir bypass nama kosong.

  • Setelah melakukan pembaruan, audit direktori unggahan untuk mencari file PHP apa pun yang sesuai dengan pola stempel waktu yang digunakan oleh plugin dan hapus file tersebut.

  • Pertimbangkan untuk menonaktifkan kolom unggah file pada formulir publik hingga patch diterapkan, terutama pada situs dengan lalu lintas tinggi.

Argumen Penyeimbang

Beberapa pengembang berpendapat bahwa risikonya terbatas karena eksploitasi ini memerlukan widget Forms dikonfigurasi dengan kolom unggah file yang dapat diakses secara publik. Namun, banyak situs berbasis Elementor menyediakan formulir semacam itu untuk kontak, lamaran kerja, atau konten buatan pengguna, sehingga kondisi tersebut cukup umum sehingga kerentanan ini dianggap kritis.

Apa yang perlu diperhatikan selanjutnya

Peneliti keamanan memperkirakan akan muncul catatan saran tambahan seiring dengan semakin banyaknya situs yang melaporkan upaya eksploitasi. Pantau komunikasi resmi Elementor dan basis data kerentanan yang bereputasi untuk mendapatkan patch atau mitigasi lanjutan.

Intinya: Celah RCE pada Elementor Pro 4.2.1 dan versi sebelumnya adalah vektor serangan tingkat tinggi tanpa perlu login. Memperbarui ke 4.2.2 adalah satu-satunya pertahanan yang andal; menunda pembaruan akan menempatkan server dan data Anda dalam risiko serius.