Gambaran umum lab
Selamat datang di Lab Tantangan AWS Web Application Firewall! AWS WAF merupakan firewall aplikasi web yang membantu melindungi aplikasi web atau API Anda dari eksploitasi web umum dan bot yang dapat memengaruhi ketersediaan, mengganggu keamanan, atau memakai sumber daya yang berlebihan. AWS WAF memberi Anda kontrol terhadap cara lalu lintas menjangkau aplikasi dengan memungkinkan Anda membuat aturan keamanan yang mengontrol lalu lintas bot dan memblokir pola serangan umum, seperti injeksi SQL (SQLi) atau cross-site scripting (XSS). Anda juga dapat melakukan kustomisasi aturan yang memfilter pola lalu lintas tertentu.
Di lab ini, Anda adalah seorang teknisi keamanan yang bekerja untuk perusahaan yang baru saja meluncurkan kedai jus daring. Anda telah diminta untuk mencari dan memitigasi kerentanan SQLi dan XSS dalam aplikasi web mereka.
Tidak seperti lab tradisional yang menyertakan petunjuk langkah demi langkah yang mendetail, Lab Tantangan ini memberi Anda tujuan dan hanya sedikit arahan. Anda perlu menerapkan pengetahuan Anda tentang keamanan dan eksploitasi web umum untuk menyelesaikan tugas.
Pada rangkaian tugas pertama, Anda akan dihadapkan dengan aplikasi web yang tidak aman dan diminta untuk menggunakan injeksi SQL dan serangan cross-site scripting untuk mengeksploitasinya. Jika Anda kesulitan, perluas menu Petunjuk dan Solusi untuk mendapatkan bantuan dalam melakukan serangan.
Pada rangkaian tugas kedua, Anda men-deploy dan mengonfigurasi AWS WAF dengan serangkaian aturan terkelola dan khusus yang dirancang untuk memitigasi serangan yang Anda luncurkan sebelumnya.
Tujuan
Di akhir lab ini, Anda akan mampu:
- Men-deploy serangan SQLi dan XSS sederhana untuk menyusupi aplikasi web.
- Membuat daftar kontrol akses web (ACL web) di AWS WAF dan mengaitkannya dengan Application Load Balancer.
- Menerapkan grup aturan terkelola AWS ke ACL web.
- Menerapkan aturan khusus ke ACL web.
Prasyarat pengetahuan teknis
Pengetahuan lanjutan tentang SQL, serta pemahaman yang kuat tentang keamanan jaringan, protokol web umum, dan kerangka kerja RESTful diperlukan untuk lab ini. Anda juga harus terbiasa bekerja di lingkungan Windows Server menggunakan Remote Desktop.
Persyaratan sistem
Lab ini memerlukan:
- Google Chrome
Durasi
Diperlukan sekitar 60 menit untuk menyelesaikan lab ini.
Kunci ikon
Beragam ikon digunakan di seluruh lab ini untuk menarik perhatian kepada berbagai jenis petunjuk dan catatan. Daftar berikut menjelaskan tujuan setiap ikon:
- Perintah: Perintah yang harus Anda jalankan.
- Output yang diharapkan: Output sampel yang dapat Anda gunakan untuk memverifikasi output dari perintah atau file yang diedit.
- Catatan: Petunjuk, tip, atau panduan penting.
- Pelajari selengkapnya: Tempat untuk menemukan informasi selengkapnya.
- Perhatian: Informasi dengan kepentingan khusus (tidak terlalu penting untuk menyebabkan masalah terkait peralatan atau data jika Anda melewatkannya, tetapi dapat mengakibatkan pengulangan langkah-langkah tertentu).
- PERINGATAN: Tindakan yang tidak dapat dibatalkan dan dapat berpotensi memengaruhi kegagalan perintah atau proses (termasuk peringatan tentang konfigurasi yang tidak dapat diubah setelah dibuat).
- Pertimbangkan: Berhenti sejenak untuk mempertimbangkan bagaimana Anda akan menerapkan konsep di lingkungan Anda sendiri atau memulai percakapan tentang topik yang ada.
- Keamanan: Peluang untuk menggunakan praktik keamanan terbaik.
- Petunjuk: Petunjuk untuk pertanyaan atau tantangan.
- Jawaban: Jawaban untuk pertanyaan atau tantangan.
Lingkungan lab
Diagram berikut menunjukkan arsitektur dasar lingkungan lab:
Deskripsi gambar: Diagram sebelumnya menggambarkan alur data. Lalu lintas bergerak dari instans EC2, yang disebut Pen Testing Host, melalui AWS WAF, lalu ke distribusi Cloudfront yang berada di depan Application Load Balancer. ALB meneruskan permintaan ke Grup Penskalaan Otomatis.
Daftar berikut menunjukkan sumber daya yang paling penting dalam diagram:
- VPC dengan dua subnet privat dan satu subnet publik yang ada di dua Availability Zone.
- Application Load Balancer internal yang berada di depan Grup Penskalaan Otomatis dengan dua node.
- Distribusi Cloudfront yang berada di depan Application Load Balancer.
- Lalu lintas yang melewati AWS WAF sebelum mencapai distribusi Cloudfront.
- Instans EC2 bernama PenTestingHost yang berada di subnet publik.