Minta opsi komponen - AWS WAF, AWS Firewall Manager, dan AWS Shield Advanced

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Minta opsi komponen

Bagian ini menjelaskan komponen permintaan web yang dapat Anda tentukan untuk diperiksa. Anda menentukan komponen permintaan untuk pernyataan aturan pertandingan yang mencari pola di dalam permintaan web. Jenis pernyataan termasuk pencocokan string, pertandingan regex, batasan ukuran, dan pernyataan serangan injeksi SQL. Untuk informasi tentang cara menggunakan pengaturan komponen permintaan ini, lihat pernyataan aturan individual. Untuk informasi selengkapnya tentang pernyataan aturan, lihatDaftar pernyataan aturan

Kecuali dinyatakan lain, jika permintaan web tidak memiliki komponen permintaan yang ditentukan dalam pernyataan aturan,AWS WAF mengevaluasi permintaan sebagai tidak cocok dengan kriteria aturan.

catatan

Anda menentukan komponen permintaan tunggal untuk setiap pernyataan aturan yang memerlukannya. Untuk memeriksa lebih dari satu komponen permintaan, buat pernyataan aturan untuk setiap komponen.

DokumentasiAWS WAF konsol dan API memberikan panduan untuk pengaturan komponen permintaan di lokasi berikut:

  • Pembuat aturan di konsol — Dalam pengaturan Pernyataan untuk jenis aturan reguler, pilih komponen yang ingin Anda periksa dalam dialog Inspect di bawah komponen Permintaan.

  • Isi pernyataan API -FieldToMatch

Sisa bagian ini menjelaskan opsi untuk bagian permintaan web yang akan diperiksa.

Metode HTTP

Memeriksa metode HTTP untuk permintaan. Metode HTTP menunjukkan jenis operasi yang diminta oleh permintaan web untuk dilakukan sumber daya Anda yang dilindungi, sepertiPOST atauGET.

Header tunggal

Memeriksa header bernama tunggal dalam permintaan. Untuk opsi ini, Anda menentukan tombol header di Nama bidang header, misalnya,User-Agent atauReferer. Pencocokan string untuk kunci tidak peka huruf besar/kecil.

Semua header

Memeriksa semua header permintaan, termasuk cookie. Anda dapat menerapkan filter untuk memeriksa subset dari semua header. Untuk opsi ini, Anda memberikan spesifikasi berikut:

  • Pola pertandingan - Filter yang digunakan untuk mendapatkan subset header untuk diperiksa. AWS WAFmencari pola-pola ini di tombol header.

    Pengaturan pola pertandingan dapat salah satu dari berikut:

    • Semua - Cocokkan semua kunci. Evaluasi kriteria pemeriksaan aturan untuk semua header.

    • Header yang dikecualikan - Periksa hanya header yang kuncinya tidak cocok dengan string yang Anda tentukan di sini. Pertandingan string untuk kunci tidak peka huruf besar/kecil.

    • Header yang disertakan - Periksa hanya header yang memiliki kunci yang cocok dengan salah satu string yang Anda tentukan di sini. Pertandingan string untuk kunci tidak peka huruf besar/kecil.

  • Lingkup pencocokan - Bagian header yangAWS WAF harus diperiksa dengan kriteria pemeriksaan aturan. Anda dapat menentukan Kunci, Nilai, atau Semua untuk kedua kunci dan nilai.

  • Oversize handling - BagaimanaAWS WAF seharusnya menangani permintaan yang memiliki data header yang lebih besar dari yangAWS WAF dapat diperiksa. AWS WAFdapat memeriksa paling banyak 8 KB pertama (8.192 byte) dari header permintaan dan paling banyak 200 header pertama. Konten tersedia untuk diperiksaAWS WAF hingga batas pertama tercapai. Anda dapat memilih untuk melanjutkan pemeriksaan, atau untuk melewati pemeriksaan dan menandai permintaan sebagai cocok atau tidak cocok dengan aturan. Untuk informasi selengkapnya tentang penanganan konten yang terlalu besar, lihat.

Cookie

Memeriksa semua cookie permintaan. Anda dapat menerapkan filter untuk memeriksa bagian dari semua cookie. Untuk opsi ini, Anda memberikan spesifikasi berikut:

  • Pola pencocokan - Filter yang digunakan untuk mendapatkan subset cookie untuk diperiksa. AWS WAFmencari pola-pola ini di kunci cookie.

    Pengaturan pola pertandingan dapat salah satu dari berikut:

    • Semua - Cocokkan semua kunci. Evaluasi kriteria pemeriksaan aturan untuk semua cookie.

    • Cookie yang dikecualikan — Periksa hanya cookie yang kuncinya tidak cocok dengan string yang Anda tentukan di sini. Pencocokan string untuk kunci adalah peka huruf besar/kecil dan harus tepat.

    • Cookie yang disertakan - Periksa hanya cookie yang memiliki kunci yang cocok dengan salah satu string yang Anda tentukan di sini. Pencocokan string untuk kunci adalah peka huruf besar/kecil dan harus tepat.

  • Ruang lingkup pencocokan - Bagian cookie yangAWS WAF harus diperiksa dengan kriteria pemeriksaan aturan. Anda dapat menentukan Kunci, Nilai, atau Semua untuk kedua kunci dan nilai.

  • Penanganan oversize - BagaimanaAWS WAF harus menangani permintaan yang memiliki data cookie yang lebih besar dari yangAWS WAF dapat diperiksa. AWS WAFdapat memeriksa paling banyak 8 KB pertama (8.192 byte) dari cookie permintaan dan paling banyak 200 cookie pertama. Konten tersedia untuk diperiksaAWS WAF hingga batas pertama tercapai. Anda dapat memilih untuk melanjutkan pemeriksaan, atau untuk melewati pemeriksaan dan menandai permintaan sebagai cocok atau tidak cocok dengan aturan. Untuk informasi selengkapnya tentang penanganan konten yang terlalu besar, lihat.

Jalur URI

Memeriksa bagian URL yang mengidentifikasi sumber daya, misalnya,/images/daily-ad.jpg. Untuk informasi, lihat Uniform Resource Identifier (URI): Generic Syntax.

Jika Anda tidak menggunakan transformasi teks dengan opsi ini,AWS WAF tidak menormalkan URI dan memeriksanya persis seperti menerimanya dari klien dalam permintaan. Untuk informasi tentang transformasi teks, lihatTransformasi teks.

String kueri

Memeriksa bagian dari URL yang muncul setelah? karakter, jika ada.

catatan

Untuk pernyataan pencocokan skrip lintas situs, sebaiknya pilih Semua parameter kueri, bukan string Kueri. Memilih Semua parameter kueri menambahkan 10 WCU ke biaya dasar.

Parameter kueri tunggal

Memeriksa parameter kueri tunggal yang telah Anda definisikan sebagai bagian dari string kueri. AWS WAFmemeriksa nilai dari parameter yang Anda tentukan.

Untuk opsi ini, Anda juga menentukan argumen Query. Misalnya, jika URLwww.xyz.com?UserName=abc&SalesRegion=seattle, Anda dapat menentukanUserName atauSalesRegion untuk argumen kueri. Panjang maksimum untuk nama argumen adalah 30 karakter. Nama ini tidak peka huruf, jadi jika Anda menentukanUserName,AWS WAF cocok dengan semua variasiUserName, termasukusername danUsERName.

Jika string kueri berisi lebih dari satu instance argumen kueri yang telah Anda tentukan,AWS WAF periksa semua nilai untuk kecocokan, menggunakanOR logika. Misalnya, dalam URLwww.xyz.com?SalesRegion=boston&SalesRegion=seattle,AWS WAF mengevaluasi nama yang telah Anda tentukan terhadapboston danseattle. Jika salah satu pertandingan, inspeksi adalah kecocokan.

Semua parameter kueri

Memeriksa semua parameter query dalam permintaan. Hal ini mirip dengan pilihan komponen parameter query tunggal, tetapiAWS WAF memeriksa nilai-nilai dari semua argumen dalam string query. Misalnya, jika URL tersebutwww.xyz.com?UserName=abc&SalesRegion=seattle,AWS WAF memicu kecocokan jika nilaiUserName atauSalesRegion cocok dengan kriteria pemeriksaan.

Memilih opsi ini menambahkan 10 WCU ke biaya dasar.

Tubuh

Memeriksa badan permintaan, dievaluasi sebagai teks biasa. Anda juga dapat mengevaluasi tubuh sebagai JSON menggunakan jenisJSON konten.

Isi permintaan adalah bagian dari permintaan yang segera mengikuti tajuk permintaan. Ini berisi data tambahan yang diperlukan untuk permintaan web, misalnya, data dari formulir.

  • Di konsol, Anda memilih ini di bawah pilihan Request pilihan Body, dengan memilih pilihan Jenis konten Teks biasa.

  • Di API, dalamFieldToMatch spesifikasi aturan, Anda menentukanBody untuk memeriksa badan permintaan sebagai teks biasa.

Untuk ACL web regional,AWS WAF dapat memeriksa 8 KB pertama dari badan permintaan. Untuk CloudFront web ACL, secara default,AWS WAF dapat memeriksa 16 KB pertama, dan Anda dapat meningkatkan batas ini dalam konfigurasi ACL web Anda untuk 32 KB, 48 KB, atau 64 KB. Untuk informasi tentang mengubah limit, lihatBatas ukuran pemeriksaan tubuh untuk ACL CloudFront web.

Anda harus menentukan penanganan kebesaran untuk jenis komponen ini. Penanganan oversize mendefinisikan bagaimanaAWS WAF menangani permintaan yang memiliki data tubuh yang lebih besar dari yangAWS WAF dapat diperiksa. Anda dapat memilih untuk melanjutkan pemeriksaan, atau untuk melewati pemeriksaan dan menandai permintaan sebagai cocok atau tidak cocok dengan aturan. Untuk informasi selengkapnya tentang penanganan konten yang terlalu besar, lihatMenangani komponen permintaan web yang terlalu besar.

Anda juga dapat mengevaluasi tubuh sebagai JSON yang diurai. Untuk informasi tentang ini, lihat bagian berikut.

JSON isi JSON

Memeriksa isi permintaan, dievaluasi sebagai JSON. Anda juga dapat mengevaluasi isi sebagai teks biasa.

Isi permintaan adalah bagian dari permintaan yang segera mengikuti tajuk permintaan. Ini berisi data tambahan yang diperlukan untuk permintaan web, misalnya, data dari formulir.

  • Di konsol, Anda memilih ini di bawah pilihan Permintaan pilihan Body, dengan memilih pilihan jenis konten JSON.

  • Di API, dalamFieldToMatch spesifikasi aturan, Anda tentukanJsonBody.

Untuk ACL web regional,AWS WAF dapat memeriksa 8 KB pertama dari badan permintaan. Untuk CloudFront web ACL, secara default,AWS WAF dapat memeriksa 16 KB pertama, dan Anda dapat meningkatkan batas ini dalam konfigurasi ACL web Anda untuk 32 KB, 48 KB, atau 64 KB. Untuk informasi tentang mengubah batas, lihatBatas ukuran pemeriksaan tubuh untuk ACL CloudFront web.

Anda harus menentukan penanganan kebesaran untuk jenis komponen ini. Penanganan oversize mendefinisikan bagaimanaAWS WAF menangani permintaan yang memiliki data tubuh yang lebih besar dari yangAWS WAF dapat diperiksa. Anda dapat memilih untuk melanjutkan pemeriksaan, atau untuk melewati pemeriksaan dan menandai permintaan sebagai cocok atau tidak cocok dengan aturan. Untuk informasi selengkapnya tentang penanganan konten yang terlalu besar, lihatMenangani komponen permintaan web yang terlalu besar.

SaatAWS WAF memeriksa badan permintaan web sebagai JSON yang diurai, ia mem-parsing dan mengekstrak elemen dari JSON dan memeriksa bagian yang Anda tunjukkan menggunakan kriteria pernyataan kecocokan aturan.

Memilih opsi ini menggandakan WCU biaya dasar pernyataan pertandingan. Misalnya, jika biaya dasar pernyataan pertandingan adalah 5 WCU tanpa penguraian JSON, menggunakan parsing JSON menggandakan biaya menjadi 10 WCU.

Dengan opsi ini,AWS WAF jalankan dua pola pertandingan terhadap badan permintaan web. Output dari pola pertandingan pertama digunakan sebagai masukan ke pola pertandingan kedua:

  1. AWS WAFmem-parsing dan mengekstrak konten JSON dan mengidentifikasi elemen yang akan diperiksa. Untuk melakukannya,AWS WAF gunakan kriteria yang Anda berikan dalam spesifikasi badan JSON aturan.

  2. AWS WAFmenerapkan transformasi teks apa pun ke elemen yang diekstrak dan kemudian cocok dengan elemen JSON yang dihasilkan yang ditetapkan terhadap kriteria kecocokan pernyataan aturan. Jika salah satu elemen cocok, permintaan web cocok untuk aturan.

Anda menentukan kriteria berikut untuk digunakanAWS WAF untuk langkah pencocokan pola pertama, untuk mengidentifikasi elemen JSON yang akan diperiksa:

  • Perilaku fallback parsing isi — Apa yangAWS WAF harus dilakukan jika isi JSON gagal untuk sepenuhnya diuraikan olehnya. Opsi nya adalah sebagai berikut:

    • Tidak ada (perilaku default) -AWS WAF mengevaluasi konten hanya sampai titik di mana ia mengalami kesalahan parsing.

    • Evaluasi sebagai string - Periksa tubuh sebagai teks biasa. AWS WAFmenerapkan perubahan teks dan kriteria pemeriksaan yang Anda tentukan untuk pemeriksaan JSON ke string teks isi.

    • Match - Memperlakukan permintaan web sebagai cocok dengan pernyataan aturan. AWS WAFmenerapkan tindakan aturan untuk permintaan.

    • Tidak cocok - Memperlakukan permintaan web sebagai tidak cocok dengan pernyataan aturan.

    AWS WAF melakukan yang terbaik untuk menguraikan seluruh isi JSON, tetapi mungkin dipaksa untuk berhenti karena alasan seperti karakter yang tidak valid, duplikat kunci, pemotongan, dan konten yang simpul root-nya bukan objek atau susunan.

    AWS WAFmenguraikan JSON dalam contoh berikut sebagai dua pasangan nilai key:value yang valid:

    • Kehilangan koma: {"key1":"value1""key2":"value2"}

    • Kehilangan titik dua: {"key1":"value1","key2""value2"}

    • Titik dua ekstra: {"key1"::"value1","key2""value2"}

  • Lingkup pencocokan JSON - Jenis elemen dalam JSON yangAWS WAF harus diperiksa. Anda dapat menentukan Kunci, Nilai, atau Semua untuk kedua kunci dan nilai.

  • Konten untuk diperiksa - Elemen dalam JSON yang diurai dan diekstraksi yangAWS WAF ingin Anda periksa.

    Anda harus menentukan salah satu hal berikut:

    • Konten JSON penuh - Evaluasi semua elemen dalam JSON diurai.

    • Hanya elemen yang disertakan - Evaluasi hanya elemen dalam JSON yang cocok dengan kriteria Pointer JSON yang Anda berikan. Untuk informasi tentang sintaks JSON Pointer, lihat dokumentasi Internet Engineering Task Force (IETF) Object Notation (JSON) dokumentasi Internet Engineering Task Force (IETF)JavaScript Object Notation (JSON).

      Jangan gunakan opsi ini untuk menyertakan semua jalur di JSON. Gunakan konten Full JSON sebagai gantinya.

      Misalnya, di konsol, Anda dapat memberikan berikut ini:

      /dogs/0/name /dogs/1/name

      Di API atau CLI, Anda dapat memberikan berikut ini:

      "IncludedPaths": ["/dogs/0/name", "/dogs/1/name"]
Contoh skenario pemeriksaan tubuh JSON

Jika pengaturan elemen yang disertakan adalah/a/b, maka untuk tubuh JSON berikut:

{ "a":{ "c":"d", "b":{ "e":{ "f":"g" } } } }

Daftar berikut menjelaskan apa yangAWS WAF akan dievaluasi untuk setiap pengaturan lingkup pertandingan. Kuncinyab, yang merupakan bagian dari jalur elemen yang disertakan, tidak dievaluasi.

  • Untuk lingkup pertandingan diatur ke semua:e,f, dang.

  • Untuk lingkup pertandingan diatur ke kunci:e danf.

  • Untuk lingkup pertandingan diatur ke nilai-nilai:g.