Tiket WordPress #30465 Dibuka 10 Tahun Lalu – Apakah 2025 Akan Menjadi Tahun Akhirnya Terselesaikan?
Diterbitkan: 2025-01-03Pada bulan November 2014, seorang pengembang WordPress bernama Sergej Mueller mengemukakan kekhawatiran yang tampaknya masuk akal: pengguna tidak memiliki cara untuk mengetahui apakah plugin yang mereka gunakan telah dihapus dari repositori resmi – meskipun plugin tersebut dihapus karena alasan keamanan. Tiketnya – secara resmi #30465 – ditutup segera setelahnya, tetapi tanpa penyelesaian. Sergej tidak menyangka bahwa tempat itu akan dibuka kembali hampir sepuluh tahun kemudian .
Dan di sinilah kita, di awal tahun 2025, dengan saya menulis pembaruan tentang hal tersebut.
Mengapa?
Karena beberapa alasan.
Pertama, ini sangat relevan dengan beberapa peristiwa keamanan plugin yang terjadi baru-baru ini – tepatnya Oktober tahun lalu. Saya akan segera membicarakannya. Dan, kedua, kemauan dan momentum untuk menyelesaikan masalah ini semakin meningkat – aktivitas terakhir yang dilakukan kurang dari sebulan yang lalu:
Jadi sepertinya kesabaran Sergej akhirnya akan segera membuahkan hasil…
Mari kita mulai dengan menelusuri kembali perkembangan tiketnya. Kemudian, kita dapat beralih ke apa yang terjadi dalam beberapa minggu terakhir:
Dari “tidak akan diperbaiki” hingga tampil di WCEU 2023 🙅♂️
Saat tiket pertama kali dibuka, ia menerima beberapa tanggapan namun ditutup dengan cukup cepat oleh pengembang utama WordPress Andrew Nacin. Dia menutupnya dan menandainya sebagai “tidak akan memperbaiki,” menjelaskan bahwa penghapusan plugin terjadi karena berbagai alasan, bukan hanya masalah keamanan:
Terdapat banyak komentar setelah itu, namun kemudian mereda menjadi komentar setahun sekali (terkadang bahkan kurang dari itu) dari seseorang yang mencoba menghidupkan kembali isu tersebut.
Lalu, pada Maret 2023 , terjadi hal menarik. Joost de Valk, tokoh ternama di komunitas WordPress, resmi membuka kembali tiketnya . Argumennya adalah bahwa WordPress memiliki tanggung jawab untuk memberi tahu pengguna apakah sebuah plugin dipertahankan atau tidak.
Dia juga menunjukkan bahwa WordPress.org sudah menampilkan informasi ini di platform itu sendiri, namun hanya setelah masa tunggu 60 hari. Sarannya adalah untuk menghadirkan transparansi yang sama ke backend WordPress tempat pengguna mengelola plugin mereka.
Hal ini memicu gelombang antusiasme baru di seluruh thread. Tiket tersebut menjadi sangat populer sehingga Oliver Sild, CEO dan salah satu pendiri Patchstack, bahkan menyebutkannya dalam pidatonya di WCEU 2023 :
Dia tidak hanya menyebutkannya, namun dia mendorong peserta WCEU untuk meninggalkan komentar di thread dengan menggunakan kode QR khusus yang dia tambahkan ke presentasinya. Dia juga menggunakan plug ini sebagai gang tertunda untuk kontes yang akan diselenggarakan Patchstack pada tahun berikutnya.
Acara Patchstack Oktober 2024 🪲
Pada bulan Oktober 2024, Patchstack meluncurkan acara Bug Bounty sebagai bagian dari Bulan Keamanan Cyber. Jika penyebutan tiket #30465 oleh Oliver dalam pidato WCEU-nya adalah gang-oop, maka hasil dari acara ini adalah slam dunk-nya.
Peneliti keamanan yang berpartisipasi dalam acara tersebut, akhirnya menemukan 1.571 laporan kerentanan keamanan valid yang mengejutkan dalam satu bulan. Ini bukan hanya masalah kecil saja – yang kita bicarakan adalah:
- 73 kasus di mana penyerang dapat mengunggah file berbahaya.
- 67 Kerentanan injeksi SQL yang dapat membahayakan seluruh database.
- 58 cara bagi penyerang untuk meningkatkan hak istimewa mereka.
- 17 kerentanan eksekusi kode jarak jauh (ya!)
Dampaknya mengakibatkan hampir 1.000 plugin ditutup sementara. Dan ketika Patchstack mencoba menghubungi pengembang plugin tentang masalah ini, hampir 74% sama sekali tidak dapat dihubungi. Entah formulir kontak mereka rusak, email mereka terpental, atau domain mereka telah kedaluwarsa.
Yang menarik adalah banyak dari plugin yang rentan ini telah disimpan di repositori selama 6-11 tahun. Beberapa berasal dari 17 tahun yang lalu! Dan ya, masih ada situs web yang aktif bergantung pada plugin ini.
Tak perlu dikatakan lagi, semua data ini memberi Oliver pengaruh dalam rangkaian pesan untuk mendorong tiket #30465 maju menuju penyelesaian. Dia dengan senang hati memanfaatkannya, dan memposting beberapa detailnya dua minggu sebelum publikasi postingan blog resmi Patchstack yang membahas acara tersebut:
Dari diskusi hingga aksi 🛠️
Aktivitas di thread ini sudah semakin meningkat ketika Oliver menambahkan komentarnya sehingga sulit untuk mengukur dampak individualnya. Namun, tidak masuk akal untuk berasumsi bahwa hal itu menambah bahan bakar pada nyala api yang semakin membesar. Apalagi dengan pengguna lain (yang setidaknya salah satunya adalah karyawan Patchstack) secara terbuka mendukung komentarnya.
Sebagai tanggapan, pengembang utama WordPress Dion Hulse (@dd32) memberikan beberapa penolakan pada beberapa poin, tetapi juga mengambil langkah besar dengan membuat plugin eksperimental yang mengimplementasikan fitur yang telah lama ditunggu-tunggu:
Implementasinya sangat sederhana – ketika sebuah plugin telah ditutup di repositori WordPress.org, pengguna akan melihat notifikasi yang jelas namun terukur. Tidak ada peringatan merah yang memicu kepanikan, hanya informasi langsung tentang status plugin.
Seseorang temukan Sergej dan katakan padanya, "mama, kita berhasil!"
Yah… hampir.
Ini belum menjadi bagian dari inti WordPress, tapi saya rasa kita sudah dekat dengan garis akhir di sini!
Kini setelah hal ini terbukti memungkinkan, langkah selanjutnya adalah memutuskan implementasi akhir. Kemudian dapat diintegrasikan ke dalam inti WordPress.
Apa selanjutnya? 🎯
Pada saat tulisan ini dibuat, fitur tersebut sedang dipertimbangkan untuk disertakan di WordPress 6.8 (menurut Dion Hulse), meskipun masih ada beberapa kendala yang harus diselesaikan. Ini termasuk:
- Menyelesaikan waktu pemberitahuan (ada diskusi tentang kemungkinan perpanjangan jangka waktu 60 hari).
- Standarisasi dokumentasi alasan penutupan.
- Menyeimbangkan kesadaran pengguna dengan beban dukungan pengembang.
- Memutuskan lokasi yang tepat (layar kesehatan situs vs langsung pada plugin seperti yang ditunjukkan pada tangkapan layar contoh plugin).
Gambaran besarnya 🌐
Evolusi tiket WordPress #30465 memberi tahu kita sesuatu yang menarik tentang bagaimana keamanan WordPress telah berubah selama dekade terakhir. Apa yang tadinya dianggap sebagai kasus yang tidak menguntungkan kini menjadi semakin penting seiring dengan pertumbuhan ekosistem dan tantangan keamanan yang semakin besar.
Meskipun dibutuhkan waktu sepuluh tahun untuk mencapai hal ini, plugin eksperimental menunjukkan bahwa kita akhirnya mendekati solusi yang menyeimbangkan kesadaran keamanan dengan pengalaman pengguna. Dengan jutaan instalasi WordPress yang berpotensi terpengaruh oleh plugin yang rentan, fitur ini tidak dapat segera hadir.
Jika Anda ingin mengikuti perkembangannya, periksa plugin eksperimental di GitHub, atau perhatikan tiket #30465. Ini mungkin salah satu momen langka di mana kita menyaksikan percakapan selama satu dekade berubah menjadi hasil yang nyata. 💡
Apa pendapat Anda tentang fitur ini? Menurut Anda, apakah akan bermanfaat bagi Anda sebagai pengguna WordPress jika diberi tahu bahwa sebuah plugin ditutup? Beri tahu saya di komentar. Sampai jumpa di sana.