Firewall Aplikasi Web (WAF) Cloudflare memblokir lebih dari 57 miliar ancaman siber per hari. Itu adalah 650 ribu permintaan HTTP yang diblokir per detik. Kode asli yang memfilter lalu lintas ini ditulis oleh CTO Cloudflare sekarang dan sejak itu WAF menerima banyak penghargaan termasuk skor tertinggi untuk kemampuan mengeksekusi di Gartner Magic Quadrant 2020 untuk WAF..

Karena kami menghargai penggantian kode ketika tidak lagi dapat dipelihara, berkinerja, atau ditingkatkan seperti dulu, kami secara berkala menulis ulang bagian-bagian penting pada tumpukan Cloudflare. Penggantian tersebut diperlukan karena pertumbuhan kami yang luar biasa sehingga membuat solusi sebelumnya tidak bisa dijalankan. Selama beberapa waktu, kami telah berupaya mengganti kode LuaJIT asli yang ditulis John dengan kode baru, yang ditulis dalam Rust, bersama dengan UI yang ditingkatkan.

Kami sekarang dengan senang hati mengumumkan Firewall Aplikasi Web Cloudflare yang baru.

Mulai hari ini, 10% akun yang baru dibuat di Cloudflare akan diberikan akses ke WAF baru setiap kali zona paket Pro atau yang lebih tinggi ditambahkan. Persentase ini akan meningkat menjadi 100% dari akun baru selama bulan April, setelah itu upaya migrasi akan dimulai untuk pelanggan yang sudah ada. Pelanggan perusahaan dapat bermigrasi lebih awal dengan menghubungi tim akun mereka.

Apa yang berubah

Firewall Aplikasi Web (WAF) adalah komponen inti dari platform Cloudflare. Sebagai salah satu produk yang paling sering digunakan dalam portofolio, kami telah memperoleh banyak umpan balik dan pengalaman dari menjalankan WAF dalam skala besar, yang membantu memandu kami dalam iterasi besar ini. WAF menghadirkan:

  • Penjelajahan dan konfigurasi aturan yang lebih baik - penerapan dengan satu klik yang mudah tanpa kehilangan alat bantu: pemfilteran lanjutan, pengeditan massal, tag aturan, dan lainnya. Mengaktifkan semua aturan WordPress, mengatur semua Aturan Terkelola Cloudflare ke LOG atau mencari tahu aturan mana yang tidak berjalan sekarang mudah dilakukan.
  • Mesin pencocokan baru - ditulis dalam Rust dan mendukung sintaks wirefilter - sintaks yang sama yang digunakan oleh Aturan Firewall kustom. Mesin ini akan memungkinkan kami untuk melakukan penerapan aturan terkelola yang lebih cepat dan mempunyai kemampuan untuk meningkatkan ke tingkat berikutnya dengan memungkinkan WAF untuk diterapkan pada lebih banyak lalu lintas. Semua sekaligus dengan meningkatkan kinerja dan keamanan.
  • Ruleset yang Diperbarui - WAF baru dikirimkan bersama ruleset yang diperbarui yang memberikan kontrol yang lebih baik untuk memisahkan status aturan dari tindakan. Core Ruleset OWASP Cloudflare juga telah ditingkatkan berdasarkan versi terbaru Core Ruleset OWASP (v3.3 pada saat penulisan), yang menambahkan tingkat paranoia dan meningkatkan tingkat positif palsu dibandingkan dengan versi yang tersedia saat ini.
  • Konfigurasi global - memberlakukan konfigurasi yang sama di seluruh akun Anda. Aturan grup sebagai ruleset dan memanfaatkan kemampuan versi dan rollback asli.

Daftar di atas hanyalah sebagian kecil dari hal-hal yang membuat kami bersemangat dan setiap poin layak untuk dibahas dalam postingan tersendiri, tetapi inilah ringkasannya.

Penjelajahan dan konfigurasi aturan yang lebih baik

Ruleset Terkelola Cloudflare, yang mencakup grup Cloudflare Specials1, yang merupakan salah satu komponen utama WAF. Aturan Terkelola Cloudflare ini memiliki beberapa ratus aturan yang disediakan dan dikelola oleh Cloudflare. Dalam konfigurasi default, kami bertujuan untuk mencapai tingkat positif palsu yang sangat rendah, sekaligus memberikan dasar keamanan yang sangat baik untuk semua aplikasi web. Namun, untuk posisi keamanan terbaik, Anda harus mengaktifkan aturan sebanyak mungkin. Ini berarti bahwa, terkadang perlu menyelami lebih dalam dan menyesuaikan perilaku ruleset berdasarkan aplikasi yang mendasarinya.

Dengan WAF baru, kami ingin memastikan pengaktifan Ruleset Terkelola adalah upaya satu klik dengan konfigurasi default, sekaligus memungkinkan pengalaman konfigurasi yang jauh lebih baik bagi mereka yang tertarik.

The new WAF UI. One click to turn on the Cloudflare Managed Ruleset and the Cloudflare OWASP ModSecurity Core Ruleset.
UI WAF baru. Satu klik untuk mengaktifkan Ruleset Terkelola Cloudflare dan Core Ruleset ModSecurity OWASP.

Sekarang, untuk mengaktifkan Ruleset Terkelola Cloudflare kami, Anda perlu mengaktifkan switch WAF global dan mengonfigurasikan grup aturan terkait. Sepuluh grup aturan, yang mencakup WordPress, Joomla, PHP, dan sejenisnya, ditampilkan langsung di halaman dengan tombol hidup/mati. UI ini tidak memungkinkan untuk dengan mudah memfilter atau mengonfigurasikan aturan dalam grup tersebut tanpa memeriksa setiap aturan satu per satu.

The current (old) Managed Ruleset WAF UI. Clicking on a group displays a list of rules in each group.
UI WAF Ruleset Terkelola (lama) saat ini. Mengklik grup akan menampilkan daftar aturan di setiap grup.

Meskipun UI ini sederhana, namun UI tidak memungkinkan tugas umum dieksekusi dengan cepat. Misalnya: tunjukkan semua aturan yang tidak aktif atau atau tunjukkan semua aturan yang memitigasi serangan XSS. Saat ini, semua aturan ditampilkan dalam satu tabel - tetapi memfilter berdasarkan status aturan, tindakan, dan tag hanya dengan satu klik. Tag aturan juga menggantikan grup, dan aturan mungkin memiliki satu atau beberapa tag, yang membuat sistem lebih fleksibel. Tag akan digunakan untuk:

  • Mengidentifikasi apakah aturan berlaku untuk komponen perangkat lunak tertentu
  • Mengidentifikasi vektor serangan (mis. XSS, SQLi, RCE)
  • Mengidentifikasi aturan yang spesifik untuk CVE

Terakhir, kami mengizinkan kontrol pengeditan massal selain kontrol aturan tunggal sebaris untuk memungkinkan perubahan konfigurasi yang lebih cepat berdasarkan kasus penggunaan tertentu.

Browser ruleset WAF baru. Opsi massal, tag, dan komponen pemfilteran di satu tempat.‌‌

Karena kami memperkirakan jumlah aturan yang tersedia akan meningkat, dan agar lebih banyak pengguna mengadopsi konfigurasi khusus, kami telah menambahkan layar tinjauan saat memberlakukan perubahan konfigurasi. Dari sini Anda dapat dengan mudah melihat setiap perubahan dari default, dan secara opsional mengembalikannya.

Ruleset deployment review screen. From here you can review any custom configuration overrides from defaults.
Layar tinjauan penerapan ruleset. Dari sini Anda dapat meninjau penggantian konfigurasi kustom dari default.

Mesin pencocokan baru

Cloudflare WAF saat ini, yang bertanggung jawab atas eksekusi ruleset terkelola, ditulis dalam LuaJIT dan diimplementasikan sebagai modul NGINX. Sintaks aturan mengikuti superset sintaks yang diterapkan oleh ModSecurity dengan fitur tambahan khusus untuk implementasi Cloudflare.

Dengan beralih ke mesin baru, kami ingin mencapai:

  • Lingkungan yang lebih aman, lebih baik, dan lebih berkinerja yang konsisten dengan teknologi lain yang digunakan di Cloudflare
  • Paparan kemampuan pemfilteran dan pencocokan yang jauh lebih baik untuk memungkinkan fleksibilitas pemberlakuan dan penanganan pengecualian yang lebih mudah
  • Kumpulan fitur produk terpadu dengan mengadopsi sintaks wirefilter sebagai dasar untuk ruleset terkelola

Poin terakhir ini sangat penting tidak hanya bagi kami tetapi juga bagi pengguna kami karena sintaks ini sudah digunakan untuk Aturan Firewall kustom kami, yang bahkan menggunakan perpustakaan Rust dasar yang sama untuk menjalankan filter!

Mesin baru diimplementasikan di Rust, yang telah kami bicarakan beberapa kali sebelumnya di blog ini. Kami juga berupaya memastikan bahwa penerapan baru ini tidak hanya disertai dengan peningkatan keamanan, tetapi juga peningkatan kecepatan, yang secara spesifik akan kami bahas di entri blog mendatang.

Ruleset Cloudflare yang Diperbarui

Ruleset Cloudflare telah diperbarui dan dipindahkan ke WAF baru. Khususnya, ruleset sekarang menggunakan sintaks wirefilter dan status aturan dipisahkan dari tindakan aturan, sehingga Anda dapat mengonfigurasikan keduanya secara terpisah.

Core Ruleset OWASP Cloudflare juga telah menerima pembaruan besar secara independen dari mesin. Cloudflare WAF saat ini mengimplementasikan versi 2.x dari Core Ruleset ModSecurity OWASP resmi. Di WAF baru, Core Ruleset OWASP Cloudflare didasarkan langsung pada versi 3.3 terbaru yang tersedia dari repositori GitHub.

Core Ruleset OWASP Cloudflare yang baru, bersama dengan fitur mesin tambahan, membawa beberapa peningkatan dari yang sudah ada:

  • Lebih sedikit positif palsu dan aturan umum aplikasi yang lebih kuat
  • Kontrol lebih besar atas skor sensitivitas, dengan indikasi yang jelas tentang seberapa besar kontribusi setiap aturan terhadap skor dan berapa skor total pada permintaan yang dipicu
  • Penambahan tingkat paranoia - untuk memudahkan penyertaan atau pengecualian atau grup aturan berdasarkan risiko positif palsu
  • Tag aturan untuk mengizinkan penerapan dengan aturan terkait berdasarkan aplikasi
Core Ruleset OWASP Cloudflare‌‌
Layar tinjauan Core Ruleset OWASP Cloudflare‌‌

Sebagai bagian dari upaya untuk mengonversi versi terbaru Core Ruleset ModSecurity OWASP ke implementasi Cloudflare, tim juga telah membangun ModSecurity ke konverter sintaks wirefilter. Ini akan memungkinkan kami dalam memberlakukan dan memperbarui ruleset dengan segera setelah peningkatan hulu untuk memastikan pelanggan memiliki akses ke versi terbaru setiap saat. Kami juga berencana untuk membuka sumber dan mengekspos konverter di UI di masa mendatang untuk mempermudah migrasi pelanggan dari WAF berbasis ModSecurity ke Cloudflare.

Konfigurasi global

Cloudflare telah beroperasi pada model berbasis zona untuk Cloudflare WAF sejak awal. Ini berfungsi dengan baik untuk kasus penggunaan sederhana di mana pelanggan melindungi sejumlah kecil aplikasi, atau serangkaian aplikasi yang sangat beragam pada basis per zona.

Penerapan yang lebih kompleks atau terpadu di seluruh zona biasanya diterapkan dengan memanfaatkan API atau alat otomatisasi seperti Penyedia Cloudflare Terraform kami.

Dengan WAF baru, penerapan ruleset dapat dilakukan di semua filter lalu lintas arbitrer pada satu akun. Misalnya:

  • Memberlakukan Ruleset Terkelola Cloudflare di semua zona saya.
  • Memberlakukan Core Ruleset OWASP Cloudflare pada semua lalu lintas yang tidak mengandung /api/* di jalurnya.
  • Menonaktifkan Ruleset Terkelola di akun saya untuk lalu lintas yang berasal dari IP saya.

Ini memungkinkan konfigurasi WAF luas akun yang kuat dengan beberapa klik.

Tiga ruleset diterapkan pada aplikasi arbitrer di akun.

Untuk mencapai ruleset (kelompok aturan) ini menjadi konsep kelas satu, dan berversi asli yang memungkinkan kemampuan rollback dan diffing secara langsung di UI — fitur yang kami rencanakan untuk mulai diekspos dalam beberapa bulan mendatang.

Konfigurasi berbasis akun pada awalnya hanya akan tersedia untuk pelanggan Perusahaan yang sekarang dapat meminta akses awal dengan menghubungi tim akun mereka. Aturan Firewall Kustom sendiri akan segera dimigrasikan ke mesin baru, sehingga pelanggan juga dapat membuat aturan firewall kustom mereka sendiri, dan menerapkannya sesuai kebutuhan pada semua filter lalu lintas.

Platform baru untuk fitur baru

Ada lebih banyak hal di WAF daripada yang terlihat dan tim sudah sibuk menyelesaikan serangkaian fitur tambahan yang dibangun di atas WAF baru — ini termasuk peningkatan pada mesin itu sendiri, analitik yang lebih baik, dan visibilitas ke dalam peristiwa yang dapat ditindaklanjuti. Seluruh mesin sebenarnya dirancang untuk menjadi dasar bagi banyak produk berbasis aturan Cloudflare, dengan tujuan pada akhirnya mewakili seluruh konfigurasi Cloudflare sebagai seperangkat aturan.

Sementara itu, kami menantikan tanggapan Anda dan kami senang melihat sejauh mana kami dapat berinovasi.

.......
1Cloudflare Specials adalah aturan yang ditulis oleh tim keamanan Cloudflare berdasarkan pengamatan dan perlindungan jutaan aplikasi web yang berada di belakang platform Cloudflare.