Saat mengonfigurasi template perlindungan, Anda harus menerapkannya ke objek yang dilindungi. WAF secara otomatis membuat objek yang dilindungi untuk setiap aset yang di-onboard, sehingga konfigurasi manual biasanya tidak diperlukan. Namun, jika Anda memiliki banyak aset, aturan perlindungan kompleks, atau memerlukan konfigurasi lanjutan seperti decoding khusus, cookie, atau header respons kustom, Anda mungkin perlu mengonfigurasi objek yang dilindungi atau kelompok objek yang dilindungi secara manual. Topik ini menjelaskan cara mengonfigurasi dan mengelolanya guna mencapai keamanan yang efisien dan detail halus.
Konsep utama
-
objek yang dilindungi: Saat Anda menambahkan nama domain atau instans layanan cloud ke WAF, WAF secara otomatis membuat objek yang dilindungi untuknya. Saat menggunakan template perlindungan, Anda harus memilih objek yang dilindungi sebagai target.
-
kelompok objek yang dilindungi: Anda dapat menambahkan beberapa objek yang dilindungi ke dalam satu kelompok objek yang dilindungi untuk manajemen terpusat. Setiap objek yang dilindungi hanya dapat menjadi anggota satu kelompok objek yang dilindungi.
Prasyarat
Sebelum memulai, pastikan persyaratan berikut terpenuhi:
-
Persyaratan onboarding: Anda harus telah menambahkan layanan web Anda ke WAF, yang akan membuat objek yang dilindungi. Jika Anda belum melakukan onboarding layanan, lihat Ikhtisar onboarding.
-
Pendaftaran ICP: Untuk menambahkan objek yang dilindungi bagi nama domain yang di-hosting pada server di Tiongkok daratan, nama domain tersebut harus memiliki pendaftaran ICP. Untuk informasi lebih lanjut, lihat Bagaimana cara mengecek informasi pendaftaran ICP suatu nama domain?
Tambahkan objek yang dilindungi
Saat Anda menambahkan resource ke WAF, WAF secara otomatis membuat objek yang dilindungi untuknya. Biasanya Anda tidak perlu menambahkannya secara manual. Namun, Anda harus menambahkan nama domain sebagai objek yang dilindungi secara manual dalam skenario berikut:
-
Skema layanan cloud: Beberapa nama domain meresolusi ke instans layanan cloud yang sama, dan Anda perlu mengonfigurasi aturan perlindungan berbeda untuk setiap nama domain.
-
Skema integrasi SDK cloud hibrida: Beberapa nama domain meresolusi ke instans kluster yang sama, dan Anda perlu mengonfigurasi aturan perlindungan berbeda untuk setiap nama domain.
-
Masuk ke Konsol Web Application Firewall 3.0. Dari bilah menu atas, pilih kelompok sumber daya dan wilayah (Chinese Mainland atau Outside Chinese Mainland) untuk instans WAF.
-
Di panel navigasi sebelah kiri, pilih .
-
Di tab Protected Objects, klik Add Protected Object.
-
Di kotak dialog Add Protected Object, konfigurasikan parameter berdasarkan Protected Object Type lalu klik OK.
Cloud Service
Parameter
Deskripsi
Domain Name
Masukkan nama domain yang ingin Anda lindungi. Anda dapat memasukkan nama domain yang cocok persis, seperti
www.aliyundoc.com, atau Nama domain wildcard, seperti*.aliyundoc.com.-
Aturan pencocokan Nama domain wildcard:
-
Wildcard hanya mencocokkan subdomain pada tingkat yang sama. Misalnya,
*.aliyundoc.commencocokkanwww.aliyundoc.comdanexample.aliyundoc.com, tetapi tidak mencocokkanwww.example.aliyundoc.com. -
Saat wildcard diterapkan pada domain tingkat kedua seperti
*.aliyundoc.com, wildcard tersebut juga mencocokkan nama domain tingkat kedua itu sendiri, yaitualiyundoc.com. -
Saat wildcard diterapkan pada domain tingkat tiga seperti
*.example.aliyundoc.com, wildcard tersebut tidak mencocokkan nama domain tingkat tiga itu sendiri, yaituexample.aliyundoc.com.
-
-
Aturan prioritas: Jika permintaan cocok dengan nama domain yang cocok persis dan nama domain wildcard, aturan untuk nama domain yang cocok persis memiliki prioritas lebih tinggi.
Cloud Service
Pilih tipe instans layanan cloud yang terkait dengan nama domain. Nilai yang valid:
-
ALB: Application Load Balancer.
-
CLB4: Classic Load Balancer dengan Listener TCP.
-
CLB7: Classic Load Balancer dengan listener HTTP/HTTPS.
-
ECS: Elastic Compute Service.
-
NLB: Network Load Balancer.
instance
Pilih ID instans ALB. Parameter ini hanya diperlukan jika Anda mengatur Cloud Service ke ALB.
Add to Protected Object Group
Anda dapat menambahkan objek yang dilindungi ke kelompok objek yang dilindungi untuk manajemen aturan perlindungan terpusat.
Setelah objek yang dilindungi ditambahkan ke kelompok, Anda hanya dapat mengonfigurasi aturan perlindungan untuk kelompok tersebut. Anda tidak lagi dapat mengonfigurasi aturan perlindungan untuk objek yang dilindungi secara individual.Resource Group
Anda dapat menambahkan objek yang dilindungi ke kelompok sumber daya untuk menyederhanakan manajemen sumber daya dan konfigurasi izin. Jika tidak ada persyaratan khusus, pilih Default Resource Group. Untuk informasi lebih lanjut, lihat Apa itu kelompok sumber daya?.
Hybrid Cloud SDK Integration
Parameter
Deskripsi
Protected Object Name
Masukkan nama yang mudah dikenali.
Domain Name/IP Address
Masukkan nama domain yang ingin Anda lindungi. Anda dapat memasukkan nama domain yang cocok persis, seperti
www.aliyundoc.com, atau Nama domain wildcard, seperti*.aliyundoc.com.Catatan-
Aturan pencocokan Nama domain wildcard: Nama domain wildcard hanya dapat mencocokkan subdomain pada tingkat yang sama. Misalnya,
*.aliyundoc.comdapat mencocokkanwww.aliyundoc.comdanexample.aliyundoc.com, tetapi tidak mencocokkanaliyundoc.comatauwww.example.aliyundoc.com. -
Aturan prioritas: Jika permintaan cocok dengan nama domain yang cocok persis dan nama domain wildcard, aturan perlindungan untuk nama domain yang cocok persis memiliki prioritas lebih tinggi.
URL
Masukkan path URL yang ingin Anda lindungi.
Add to Protected Object Group
Anda dapat menambahkan objek yang dilindungi ke kelompok objek yang dilindungi untuk manajemen aturan perlindungan terpusat.
Setelah objek yang dilindungi ditambahkan ke kelompok, Anda hanya dapat mengonfigurasi aturan perlindungan untuk kelompok tersebut. Anda tidak lagi dapat mengonfigurasi aturan perlindungan untuk objek yang dilindungi secara individual.Resource Group
Anda dapat menambahkan objek yang dilindungi ke kelompok sumber daya untuk menyederhanakan manajemen sumber daya dan konfigurasi izin. Jika tidak ada persyaratan khusus, pilih Default Resource Group. Untuk informasi lebih lanjut, lihat Apa itu kelompok sumber daya?.
-
Konfigurasi lanjutan
WAF menyediakan pengaturan lanjutan berikut. Untuk menyesuaikan pengaturan objek yang dilindungi sesuai kebutuhan bisnis dan kebijakan keamanan Anda, temukan objek yang dilindungi tersebut lalu klik Settings di kolom Actions.
|
Parameter |
Deskripsi |
|
Jika Proxy lapisan 7 seperti CDN ditempatkan di depan WAF, Anda harus mengonfigurasi Obtain Actual IP Address of Client. Hal ini memastikan WAF dapat memperoleh alamat IP client yang sebenarnya untuk analitik keamanan dan fitur seperti menampilkan Attacker IP Address di Security Reports. |
|
|
Saat Anda menggunakan modul perlindungan seperti HTTP Flood Protection dan Scan Protection, atau mengatur aksi aturan ke CAPTCHA, WAF menambahkan cookie pelacakan dan verifikasi ke respons. Anda dapat mengonfigurasi status penerbitan cookie dan atribut Secure untuk memenuhi persyaratan keamanan dan kompatibilitas. |
|
|
Untuk nama domain yang ditambahkan dalam Mode rekaman CNAME, Anda dapat menambahkan header kustom ke respons client untuk Penguatan Keamanan, kontrol kebijakan, atau debugging. |
|
|
WAF dapat mengurai data dalam format seperti JSON, XML, dan Form, serta mendekode data yang dikodekan dengan Base64 dan entitas HTML. Hal ini memungkinkan WAF mendeteksi traffic berbahaya yang disembunyikan oleh beberapa lapisan encoding atau kompresi. |
|
|
WAF mengekstraksi informasi identitas pengguna seperti username, token, dan isi JWT dari permintaan. Modul seperti Scan Protection, Bot Management, dan Custom Rule kemudian menggunakan informasi ini untuk kontrol keamanan tingkat akun yang detail halus. |
|
|
Setelah client berhasil melewati JavaScript Validation, CAPTCHA, atau Token-based Authentication, WAF mengizinkan permintaan berikutnya selama 1.800 detik (30 menit) secara default tanpa memerlukan tantangan ulang. Anda dapat mengatur waktu kedaluwarsa ini antara 5 hingga 1.800 detik. Setelah periode ini berakhir, client harus melewati tantangan lagi pada permintaan berikutnya. |
-
Pada tab WAF Link Settings, konfigurasikan parameter Is a Layer 7 proxy such as Anti-DDoS Proxy or CDN deployed in front of WAF. Untuk informasi selengkapnya, lihat Mendapatkan alamat IP asli klien.
CatatanUntuk nama domain yang ditambahkan dalam Mode rekaman CNAME dan untuk instans ECS, CLB, dan NLB yang ditambahkan sebagai layanan cloud, Anda tidak perlu mengulangi konfigurasi ini jika sudah menyelesaikannya saat onboarding aset.
-
Di tab WAF Link Settings, konfigurasikan Tracking Cookie dan Slider CAPTCHA Cookie.
-
Tracking Cookie Saat Anda menggunakan fitur seperti Serangan flood HTTP dan Perlindungan Pemindaian, WAF secara default menerbitkan cookie bernama
acw_tcuntuk mengidentifikasi dan melacak perilaku akses client. Anda dapat menggunakan sakelar Status untuk mengaktifkan atau menonaktifkan Tracking Cookie. Untuk menerbitkan cookie ini hanya untuk Permintaan HTTPS, aktifkan Secure Attribute.Penting-
Saran konfigurasi: Kami menyarankan Anda mengaktifkan sakelar Status untuk tracking cookie. Jika tidak, modul perlindungan seperti Serangan flood HTTP dan Perlindungan Pemindaian mungkin tidak berfungsi dengan baik.
-
Batasan kelompok objek yang dilindungi: Untuk objek yang dilindungi dalam kelompok objek yang dilindungi, Tracking Cookie diaktifkan secara default. Anda tidak dapat menonaktifkan Tracking Cookie atau mengaktifkan Secure Attribute untuk objek yang dilindungi ini.
-
Aturan efektif: Jika permintaan cocok dengan beberapa objek yang dilindungi, dan Tracking Cookie atau Secure Attribute diaktifkan untuk setidaknya salah satu objek yang dilindungi, fitur tersebut diaktifkan untuk semua objek yang dilindungi yang cocok.
-
-
Slider CAPTCHA Cookie Setelah pengguna berhasil melewati tantangan slider, WAF secara default menerbitkan cookie bernama
acw_sc__v3untuk mencatat verifikasi. Untuk menerbitkan cookie ini hanya untuk Permintaan HTTPS, aktifkan Secure Attribute.Penting-
Mengaktifkan Secure Attribute untuk cookie slider dapat memengaruhi operasi normal fitur slider pada situs HTTP.
-
Untuk objek yang dilindungi dalam kelompok objek yang dilindungi, Secure Attribute dinonaktifkan secara default dan tidak dapat diaktifkan.
-
-
-
Custom Response Header (hanya untuk Mode rekaman CNAME)
Di tab WAF Link Settings, konfigurasikan Custom Response Header. Anda dapat menambahkan hingga lima header. Jika Header Name dari header respons kustom sama dengan nama header respons dari server origin, nilai header asli akan diganti dengan Header Value yang Anda konfigurasikan di sini.
-
Konfigurasikan pengaturan di tab Decode Settings. Untuk informasi lebih lanjut, lihat Lampiran: Pengaturan decoding.
-
Konfigurasikan pengaturan di tab User Identification. Anda dapat mengonfigurasi hingga lima aturan untuk setiap objek yang dilindungi, diurutkan berdasarkan prioritas.
-
Anda dapat mengekstraksi informasi identitas pengguna dari lokasi berikut:
-
Query String
-
Body
-
Cookie
-
Header
-
-
Format akun:
-
Plaintext Authentication: Misalnya, email***@qq.com.
-
JWT Authentication: Biasanya ditemukan di header, JWT dapat membawa informasi pengguna. Format umumnya adalah
Authorization: Bearer {Token}. Jika token tersebut adalah JWT, Anda harus menentukan bidang akun dalam payload yang didekodekan. -
Basic Authentication: Biasanya ditemukan di header. Format umumnya adalah
Authorization: Basic {Token}.
-
-
-
Di tab Action Validity Settings, konfigurasikan parameter berikut:
-
JS Challenge TTL: Periode validitas hasil verifikasi ketika Rule Action adalah JavaScript Validation.
-
Dynamic Token Validity: Periode validitas hasil verifikasi dalam mode Token-based Authentication saat Anda menggunakan Bot Management untuk melindungi layanan web.
-
CAPTCHA Expiration Time: Periode validitas hasil verifikasi ketika Rule Action adalah CAPTCHA.
-
Kelola kelompok objek yang dilindungi
Untuk menerapkan aturan perlindungan yang sama ke beberapa objek yang dilindungi, gunakan kelompok objek yang dilindungi untuk manajemen terpusat.
-
Di panel navigasi sebelah kiri Konsol WAF, pilih .
-
Di tab Protected Object Groups, klik Create.
-
Di kotak dialog Create Protected Object Group, masukkan Nama kelompok objek yang dilindungi, pilih Associate with Protected Object, tambahkan Remarks, lalu klik OK.
Catatan-
Daftar Available Objects di bagian Associate with Protected Object hanya mencakup objek yang dilindungi yang memenuhi kondisi berikut: tidak termasuk dalam kelompok objek yang dilindungi mana pun, dan hanya memiliki template perlindungan default atau tidak memiliki template perlindungan yang diterapkan.
-
Objek yang dilindungi yang sudah berada dalam kelompok objek yang dilindungi tidak dapat ditambahkan ke kelompok lain. Anda harus menghapusnya dari kelompok asal sebelum menambahkannya ke kelompok lain.
-
-
Saat membuat template perlindungan, Anda dapat mengatur Apply To ke Protected Object Groups untuk menerapkan template ke semua objek dalam kelompok tersebut.
Operasi harian
Kelola objek yang dilindungi
-
Lihat aturan perlindungan untuk objek yang dilindungi: Di kolom Actions untuk objek yang dilindungi target, klik View Protection Rule. Halaman Core Web Protection menampilkan template perlindungan (aturan perlindungan yang dikonfigurasi) yang terkait dengan objek yang dilindungi tersebut.
-
Tambahkan objek yang dilindungi ke kelompok objek yang dilindungi: Di kolom Actions untuk objek yang dilindungi target, klik
> Add to Protected Object Group. Anda juga dapat memilih beberapa objek yang dilindungi lalu klik Add to Protected Object Group di bawah daftar. -
Lihat log objek yang dilindungi: Jika Anda telah mengaktifkan Log Service, Anda dapat mengklik
> View Logs di kolom Actions untuk objek yang dilindungi target. -
Hapus objek yang dilindungi: Di kolom Actions untuk objek target, klik Delete. Anda hanya dapat menghapus objek yang dilindungi yang ditambahkan secara manual. Untuk menghapus objek yang dilindungi yang dibuat secara otomatis, Anda harus Remove aset tersebut.
Kelola kelompok objek yang dilindungi
-
Ubah objek yang dilindungi dalam kelompok: Di tab Protected Object Groups, klik Edit di kolom Actions untuk kelompok target guna menambahkan atau menghapus objek yang dilindungi. Jika objek yang dilindungi dihapus dari kelompok, template perlindungan default akan diterapkan secara otomatis padanya.
-
Ubah aturan perlindungan untuk kelompok: Di tab Protected Object Groups, klik Configure Rule di kolom Actions untuk kelompok target guna melihat dan mengubah template perlindungan yang terkait dengan kelompok tersebut.
-
Hapus kelompok objek yang dilindungi: Di tab Protected Object Groups, temukan kelompok yang ingin Anda hapus lalu klik Delete di kolom Actions.
Kuota dan batasan
-
Batasan jumlah objek yang dilindungi: Jumlah objek yang dilindungi, kelompok objek yang dilindungi, dan objek yang dilindungi yang dapat ditambahkan ke satu kelompok bervariasi tergantung edisi WAF. Untuk informasi lebih lanjut, lihat Edisi WAF. Anda dapat membuka halaman Protected objects page untuk melihat jumlah objek yang dilindungi yang tersedia. Jika kuota Anda telah habis, Anda dapat menghapus objek yang dilindungi atau upgrade edisi WAF Anda.
-
Aturan reservasi untuk objek yang dilindungi: Untuk instans WAF berlangganan, WAF menyisihkan kuota untuk nama domain gratis yang termasuk dalam edisi WAF Anda dan untuk nama domain tambahan yang dibeli. Misalnya, jika Anda memiliki instans WAF Pro berlangganan yang mencakup 5 nama domain gratis dan mendukung 600 objek yang dilindungi, serta Anda membeli 2 Additional Domains, WAF menyisihkan 7 (5 + 2) objek yang dilindungi. Ini memberi Anda kuota 593 (600 - 7) objek yang dilindungi tambahan.
-
Batasan konfigurasi untuk objek yang dilindungi: Instans Microservices Engine (MSE) dan nama domain kustom Function Compute (FC) yang ditambahkan sebagai layanan cloud tidak mendukung Cookie Settings. Instans FC, MSE yang ditambahkan sebagai layanan cloud tidak mendukung Decode Settings.
Pengaturan decoding
-
Saat Anda menambahkan instans ALB sebagai layanan cloud, Base64 Decoding dinonaktifkan secara default. Anda dapat mengaktifkannya sesuai kebutuhan bisnis Anda.
-
Untuk integrasi SDK cloud hibrida, Anda harus meningkatkan agen ke versi 4.1.0 atau lebih baru agar pengaturan decoding berlaku.
Penguraian pasangan kunci-nilai
-
JSON Data Parsing
-
Deskripsi: Modul penguraian JSON mengurai dan menyusun ulang data JavaScript Object Notation (JSON) sesuai RFC 7159. Modul ini menangani sintaks JSON termasuk objek pasangan kunci-nilai, array, string, dan angka. Proses ini mencakup validasi sintaks, konversi tipe data, pemrosesan struktur bersarang, dan decoding urutan escape Unicode. Standarisasi format JSON meningkatkan kemampuan aturan WAF untuk mendeteksi konten berbahaya dalam muatan JSON.
-
Contoh: Untuk input
{"Hello":"World"}, penguraian JSON mengekstraksikuncisebagaiHellodannilaisebagaiWorld.
-
-
XML Data Parsing
-
Deskripsi: Modul penguraian XML mengurai dan menyusun ulang data Extensible Markup Language (XML) sesuai spesifikasi XML (Rekomendasi W3C). Modul ini mendukung penguraian komprehensif struktur dokumen XML, termasuk elemen, atribut, konten teks, bagian CDATA, dan instruksi pemrosesan. Proses ini mencakup validasi sintaks, resolusi referensi entitas, pemrosesan namespace, dan standarisasi struktur dokumen. Standarisasi format XML meningkatkan kemampuan aturan WAF untuk mendeteksi konten berbahaya dalam muatan XML.
-
Contoh: Untuk input
<Hello attr="desc"><![CDATA[World]]></Hello>, penguraian XML mengekstraksikuncisebagaiHello,nilaisebagaiWorld,kunci2sebagaiHello.attr, dannilai2sebagaidesc.
-
-
Form Data Parsing
-
Deskripsi: Modul penguraian form mengurai dan menyusun ulang data application/x-www-form-urlencoded sesuai RFC 1866. Modul ini mendukung penguraian komprehensif data form HTML, termasuk pasangan kunci-nilai, parameter array, bidang unggah file, dan struktur bersarang. Proses ini mencakup decoding URL, pemrosesan set karakter, pengenalan pemisah parameter, dan konversi tipe data. Standarisasi format data form meningkatkan kemampuan aturan WAF untuk mendeteksi konten berbahaya dalam muatan form.
-
Contoh: Untuk input
Hello=World, penguraian form mengekstraksikuncisebagaiHellodannilaisebagaiWorld.
-
-
Multipart Data Parsing
-
Deskripsi: Modul penguraian multipart mengurai dan menyusun ulang data multipart/form-data sesuai RFC 2046. Modul ini mendukung penguraian komprehensif unggah file HTTP dan data form kompleks, termasuk bidang file, bidang teks, pemisah batas, dan struktur bersarang. Proses ini mencakup deteksi batas, penguraian bidang, ekstraksi konten file, dan konversi encoding. Standarisasi format multipart meningkatkan kemampuan aturan WAF untuk mendeteksi konten berbahaya dalam unggahan file dan muatan form kompleks.
-
Contoh: Untuk input berikut, penguraian multipart mengekstraksi
kuncisebagaiHellodannilaisebagaiWorld.------WebKitFormBoundary7MA4YWxkTrZu0gW Content-Disposition: form-data; name="Hello" World ------WebKitFormBoundary7MA4YWxkTrZu0gW--
-
-
GraphQL Parsing
-
Deskripsi: Modul penguraian GraphQL mengurai dan menyusun ulang data bahasa kueri GraphQL sesuai spesifikasi GraphQL. Modul ini mendukung penguraian komprehensif kueri GraphQL, definisi variabel, argumen, dan direktif, termasuk seleksi bidang, parameter kueri, substitusi variabel, alias, dan kueri bersarang. Proses ini mendukung penguraian parameter URL, muatan JSON, kueri GraphQL mentah, dan format unggah file multipart. Standarisasi format GraphQL meningkatkan kemampuan aturan WAF untuk mendeteksi konten berbahaya dalam muatan GraphQL.
-
Contoh: Untuk kueri input
HelloWorld{ desc(Hello:"World"){ Hello } }, penguraian GraphQL mengekstraksikuncisebagaiHellodannilaisebagaiWorld.
-
Decoding
-
Base64 Decoding
-
Deskripsi: Mesin decoding Base64 membalikkan encoding Base64 sebagaimana didefinisikan dalam RFC 4648. Modul ini menangani set karakter Base64 standar (A-Z, a-z, 0-9, +, /) dan karakter padding (=). Proses decoding mencakup validasi karakter, penanganan padding, penyelarasan byte, dan pemeriksaan integritas data untuk memastikan akurasi dan keandalan data biner.
-
Contoh: Input
SGVsbG8gV29scmQhdidekode menjadiHello World!.
-
-
HTML Entity Decoding
-
Deskripsi: Mesin decoding entitas HTML mengurai referensi entitas karakter berdasarkan spesifikasi HTML 5.2 (Rekomendasi W3C). Modul ini mendukung pemrosesan standar referensi karakter numerik (&#x;) dan entitas karakter bernama (&).
-
Contoh: Input
Hello World!didekode menjadiHello World!.
-
-
PHP Deserialization
-
Deskripsi: Mesin deserialisasi PHP membalikkan fungsi serialize() PHP. Berdasarkan protokol serialisasi PHP, modul ini mengurai sintaks format serialisasi, termasuk pengenal tipe (seperti i, s, a, dan O), metadata panjang, dan struktur data rekursif. Proses ini mencakup validasi tipe, pemeriksaan keamanan memori, dan rekonstruksi graf objek, mendukung penguraian lengkap tipe skalar, tipe majemuk, dan serialisasi objek.
-
Contoh: Untuk input
payload=O:5:"Hello":1:{s:4:"desc";s:6:"World!";}, deserialisasi PHP mengekstraksikuncisebagaipayload.Hello.descdannilaiyang sesuai sebagaiWorld!.
-
-
Java Deserialization
-
Deskripsi: Deserialisasi Java membalikkan ObjectInputStream berdasarkan protokol serialisasi Java. Modul ini mengurai format biner aliran serialisasi Java, termasuk deskriptor kelas, metadata bidang, dan informasi status objek. Proses decoding mengikuti spesifikasi serialisasi JVM dan mendukung penguraian rekursif graf objek kompleks.
-
Contoh: Untuk input
rO0ABXNyABFqYXZhLnV0aWwuSGFzaE1hcAUH2sHDFmDRAwACRgAKbG9hZEZhY3RvckkACXRocmVzaG9sZHhwP0AAAAAAAAx3CAAAABAAAAABdAAFSGVsbG90AAZXb3JsZCF4, deserialisasi Java mengekstraksi kelas Javajava.util.HashMap.
-
-
UTF-7 Decoding
-
Deskripsi: Mesin decoding UTF-7 mengonversi encoding karakter panjang variabel sesuai RFC 2152. Modul ini memproses penanda encoding UTF-7 (+/-) dan urutan karakter Unicode yang dikodekan Base64. Algoritma ini mendukung transmisi Unicode di lingkungan ASCII 7-bit dan mencakup mesin keadaan encoding, pengalihan set karakter, dan kompatibilitas protokol lama. Ini cocok untuk sistem email dan skenario transmisi pesan MIME.
-
Contoh: Input
+/v8 +AEgAZQBsAGwAbwAgAFcAbwByAGwAZAAh-didekode menjadiHello World!.
-
-
Unicode Decoding
-
Deskripsi: Decoding Unicode adalah proses konversi encoding karakter berdasarkan standar Unicode (ISO/IEC 10646). Modul ini mengurai urutan escape UTF-16, mendukung notasi heksadesimal empat byte \uXXXX dan format diperluas \u{XXXXXX}. Proses decoding mengikuti spesifikasi Unicode 15.0 untuk memastikan encoding karakter yang distandarisasi.
-
Contoh: Untuk input
\u0048\u0065\u006c\u006c\u006f\u0020\u0057\u006f\u0072\u006c\u0064\u0021, output setelah decoding Unicode adalahHello World!.
-
-
URL Decoding
-
Deskripsi: Decoding URL membalikkan percent-encoding berdasarkan RFC 3986. Mekanisme ini memproses encoding karakter tereservasi, karakter non-ASCII, dan karakter khusus dalam sintaks URI generik. Algoritma decoding mengikuti spesifikasi tipe MIME application/x-www-form-urlencoded dan mendukung penguraian standar parameter permintaan HTTP.
-
Contoh: Input
Hello%20World%21didekode menjadiHello World!.
-
-
Hex Decoding
-
Deskripsi: Decoding heksadesimal mengonversi string heksadesimal ke data biner berdasarkan RFC 4648. Modul ini menggunakan urutan byte big-endian dan mendukung set karakter heksadesimal standar (0-9, A-F, a-f). Proses decoding mencakup validasi input, normalisasi karakter, dan penyelarasan byte.
-
Contoh: Input
\x48\x65\x6c\x6c\x6f\x20\x57\x6f\x72\x6c\x64\x21didekode menjadiHello World!.
-
-
Octal Decoding
-
Deskripsi: Mesin decoding oktal memproses encoding karakter yang diwakili oleh garis miring terbalik diikuti digit oktal, seperti
\123. Berdasarkan tabel ASCII, modul ini mengonversi angka oktal ke karakter yang sesuai, mendukung rentang oktal standar 0-377 (0-255 desimal), dan dapat mengurai urutan escape oktal dalam teks campuran secara batch. -
Contoh: Input
\110\145\154\154\157\040\127\157\162\154\144\041didekode menjadiHello World!.
-
Dekompresi
-
Gzip Decompression
-
Deskripsi: Mesin dekompresi Gzip beroperasi berdasarkan RFC 1952 dan menggunakan algoritma DEFLATE. Modul ini memproses header format file Gzip (magic number 0x1f8b, metode kompresi, dan flag), checksum CRC32, dan mendekompresi blok data terkompresi. Algoritma ini mendukung pemrosesan aliran dan dekompresi batch, serta mencakup manajemen mesin keadaan, pemrosesan file multi-anggota, dan mekanisme pemulihan kesalahan. Ini cocok untuk transmisi web, pengarsipan file, dan skenario kompresi data.
-
Contoh: Untuk data biner input
1f 8b 08 00 11 39 00 69 00 ff 01 0c 00 f3 ff 48 65 6c 6c 6f 20 57 6f 72 6c 64 21 a3 1c 29 1c 0c 00 00 00(ditampilkan dalam format heksadesimal untuk keterbacaan), dekompresi Gzip menghasilkan outputHello World!.
-
Pra-pemrosesan
-
Comment Stripping
-
Deskripsi: Modul penghapusan komentar mengenali dan menghapus sintaks komentar berdasarkan standar SQL dan sintaks ekstensi MySQL. Modul ini mendukung dua format komentar yang didefinisikan oleh standar ANSI SQL: komentar satu baris (-- diikuti karakter apa pun hingga akhir baris) dan komentar multi-baris (urutan karakter apa pun yang diapit /* */). Modul ini juga kompatibel dengan sintaks komentar kondisional khusus MySQL (/*! ... */). Proses ini mencakup pengenalan penanda komentar, penanganan komentar bersarang, penguraian kondisi versi, dan validasi batas sintaks. Dengan menghapus konten komentar, modul ini meningkatkan akurasi deteksi mesin aturan WAF terhadap pernyataan SQL berbahaya dan mengurangi risiko penyerang melewati aturan dengan menggunakan komentar.
-
Contoh: Untuk input
/*!40101 SET */@OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT ;, penghapusan komentar menghasilkan output SET@OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT ;.
-
-
Whitespace Compression
-
Deskripsi: Modul kompresi whitespace menormalisasi karakter whitespace berurutan. Modul ini mendeteksi urutan karakter whitespace berurutan dalam string input dan mengompresinya menjadi satu spasi. Proses ini mencakup pemrosesan terpadu whitespace awal, akhir, dan tengah yang berurutan untuk memastikan standarisasi dan konsistensi format teks.
-
Contoh: Untuk input
Hello World!, kompresi whitespace menghasilkan outputHello World!.
-