Bagaimana Mengamankan Aplikasi Web Dengan AWS WAF?



Artikel ini akan memberi tahu Anda bagaimana Anda dapat Mengamankan Aplikasi Web Dengan AWS WAF dan menindaklanjutinya dengan demonstrasi praktis.

Artikel ini akan memberi tahu Anda bagaimana Anda dapat Mengamankan Aplikasi Web dengan WAF dan menindaklanjutinya dengan demonstrasi praktis. Petunjuk berikut akan dibahas dalam artikel ini,

Jadi mari kita mulai,





Lanjutkan dengan artikel ini tentang 'Bagaimana Mengamankan Aplikasi Web Dengan AWS WAF?'

Memulai Beberapa Dasar

AWS menyediakan layanan seperti EC2, ELB (Elastic Load Balancer), S3 (Simple Storage Service), EBS (Elastic Block Storage) untuk membuat aplikasi yang berguna dan mewah dengan cepat dan dengan lebih sedikit CAPEX (CAPital EXpenditure). Saat membuat aplikasi ini, sama pentingnya untuk mengamankan aplikasi dan melindungi data. Jika tidak diamankan dengan benar, data aplikasi mungkin jatuh ke tangan yang salah seperti dalam kasus baru-baru ini Insiden Capital One .



Capital One menghosting Aplikasi Web di EC2 dan tidak diamankan dengan benar. Seorang mantan karyawan AWS dapat memanfaatkan kerentanan ini dan mengunduh rim data pelanggan dari S3. Belakangan diketahui bahwa data dari 30 organisasi lain juga diunduh dari AWS. Jadi, menekankannya lagi, tidak hanya cukup merancang dan merancang aplikasi, tetapi juga sama pentingnya untuk mengamankan aplikasi.

Capital One digunakan AWS WAF (Firewall Aplikasi Web) untuk melindungi Aplikasi Web, tetapi tidak dikonfigurasi dengan benar sehingga peretas bisa mendapatkan akses ke data di S3 dan mengunduhnya. Pada artikel ini kita akan mempelajari cara menggunakan dan mengkonfigurasi AWS WAF untuk melindungi dari serangan web umum seperti SQL Injection, XSS (Cross Site Scripting) dll. AWS WAF harus dikonfigurasi bersama dengan Application Load Balancer , CloudFront atau API Gateway. Dalam skenario ini, kami akan menggunakan Application Load Balancer. Setiap permintaan dari pelanggan melalui browser akan melalui AWS WAF dan kemudian ke Application Load Balancer dan terakhir ke Aplikasi Web di EC2. AWS WAF dapat digunakan untuk blokir permintaan jahat tersebut dari peretas menggunakan seperangkat aturan dan ketentuan.

Gambar - Aplikasi Web Aman Dengan AWS WAF - Edureka

Lanjutkan dengan artikel ini tentang 'Bagaimana Mengamankan Aplikasi Web Dengan AWS WAF?'



Urutan langkah untuk memulai dengan AWS WAF

Langkah 1: Membuat aplikasi web yang rentan,

Langkah pertama adalah membuat aplikasi web yang rentan terhadap serangan SSRF (Server Side Request Forgery) seperti yang disebutkan di sini. Blog tentang bagaimana serangan Capital One terjadi. Blog ini memiliki urutan langkah-langkah untuk:

perbedaan antara lemparan dan lemparan
  1. Buat EC2
  2. Instal perangkat lunak yang diperlukan untuk membuat aplikasi web dengan kerentanan SSRF
  3. Buat dan peran IAM dengan izin S3 Read Only
  4. Lampirkan peran IAM ke EC2
  5. Terakhir, manfaatkan kerentanan SSRF untuk mendapatkan Kredensial Keamanan yang terkait dengan peran IAM.

Setelah urutan langkah-langkah selesai di blog yang disebutkan, ganti 5.6.7.8 dengan alamat IP Publik EC2 di URL di bawah ini dan buka di browser. Kredensial Keamanan yang terkait dengan Peran IAM harus ditampilkan di browser seperti yang ditunjukkan di bawah ini. Beginilah pada dasarnya Capital One diretas. Dengan Kredensial Keamanan di tangan, peretas dapat mengakses layanan AWS lainnya seperti S3 untuk mengunduh data.

http://5.6.7.8:80?url=http://169.254.169.254/latest/meta-data/iam/security-credentials/Role4EC2-S3RO

Langkah 2: Membuat Application Load Balancer

AWS WAF tidak dapat dikaitkan secara langsung dengan Aplikasi Web. Namun, hanya dapat dikaitkan dengan Application Load Balancer, CloudFront, dan API Gateway. Dalam tutorial ini, kami akan membuat file Application Load Balancer dan mengaitkan AWS WAF dengan yang sama.

Langkah 2a: Grup Target adalah kumpulan instans EC2 dan harus dibuat sebelum membuat Application Load Balancer. Di Konsol Manajemen EC2, klik Grup Target di panel kiri dan klik 'Buat grup target'.

Langkah 2b: Masukkan nama Grup Target dan klik 'Buat'. Grup Target akan berhasil dibuat.

Langkah 2c: Pastikan Grup Target dipilih dan klik pada tab Target dan klik edit untuk mendaftarkan instans EC2 dengan Grup Target.

Langkah 2d: Pilih instans EC2 dan klik 'Tambahkan ke terdaftar' dan klik 'Simpan'.

Instans harus didaftarkan seperti yang ditunjukkan di bawah ini untuk Grup Target.

Langkah 2e: Saatnya membuat Application Load Balancer. Klik Load Balancer di panel kiri EC2 Management Console dan klik 'Buat Load Balancer'.

Klik 'Buat' untuk 'Application Load Balancer'.

Lanjutkan dengan artikel ini tentang 'Bagaimana Mengamankan Aplikasi Web Dengan AWS WAF?'

Langkah 2f: Masukkan nama Application Load Balancer. Dan pastikan semua Availability Zone dipilih dan klik Next.

Langkah 2g: Dalam 'Konfigurasi Pengaturan Keamanan' klik Berikutnya.

bagaimana belajar pl sql

Di 'Configure Security Groups' buat Grup Keamanan baru atau pilih salah satu Grup Keamanan yang ada. Pastikan port 80 terbuka untuk mengakses halaman web di EC2. Klik Berikutnya.

Langkah 2h: Dalam 'Configure Routing' pilih 'Existing target group' dan pilih salah satu yang telah dibuat pada langkah sebelumnya. Klik Berikutnya.

Langkah 2i: Instans EC2 target telah terdaftar sebagai bagian dari Grup Target. Jadi, di tab 'Register Target', tanpa ada perubahan klik Next.

Langkah 2j: Terakhir, tinjau semua detail Application Load Balancer dan klik Buat. Application Load Balancer akan dibuat seperti yang ditunjukkan di bawah ini.

Langkah 2k: Dapatkan nama domain Application Load Balancer dan ganti teks yang disorot di URL di bawah ini dan buka yang sama di browser. Perhatikan bahwa kami mengakses Aplikasi Web melalui Application Load Balancer dan Kredensial Keamanan ditampilkan seperti yang ditunjukkan di bawah ini. URL di bawah ini dapat diblokir dengan menggunakan AWS WAF seperti yang ditunjukkan dalam langkah-langkah berikutnya untuk menghentikan kebocoran Kredensial Keamanan.

MyALB-1929899948.us-east-1.elb.amazonaws.com ? url = http: //169.254.169.254/latest/meta-data/iam/security-credentials/Role4EC2-S3RO

Langkah 3: Membuat AWS WAF (Web Application Firewall)

Langkah 3a: Buka AWS WAF Management Console dan klik 'Konfigurasi web ACL'. Gambaran umum AWS WAF ditampilkan. Berikut adalah hierarki AWS WAF. Web ACL memiliki sekumpulan Aturan dan Aturan yang memiliki banyak Ketentuan yang akan kita buat di langkah selanjutnya. Klik Berikutnya.

Langkah 3b: Masukkan nama ACL Web, Wilayah sebagai Virginia Utara (atau tempat EC2 dibuat), jenis sumber daya sebagai 'Application Load Balancer' dan terakhir pilih Application Load Balancer yang dibuat pada langkah sebelumnya. Klik Berikutnya.

Langkah 3c: Di sini a kondisi untuk memblokir permintaan aplikasi web tertentu harus dibuat. Gulir ke bawah dan klik 'Buat kondisi' untuk 'Kondisi pencocokan string dan ekspresi reguler'.

Langkah 3d: Masukkan nama kondisi, Jenis sebagai 'String pencocokan', filter 'Semua parameter kueri' dan parameter lainnya persis seperti yang ditampilkan di bawah ini. Dan klik 'Tambahkan filter' dan kemudian Buat. Di sini kami mencoba membuat kondisi yang cocok dengan URL yang berisi nilai parameter kueri sebagai 169.254.169.254. Alamat IP ini terkait dengan Metadata EC2 .

Langkah 3e: Sekarang adalah waktunya membuat aturan yang merupakan kumpulan kondisi. Klik 'Buat aturan' dan tentukan parameter seperti yang ditunjukkan persis di bawah ini. Klik 'Tambahkan Ketentuan', Buat dan 'Tinjau dan buat'.

Lanjutkan dengan artikel ini tentang 'Bagaimana Mengamankan Aplikasi Web Dengan AWS WAF?'

Langkah 3f: Terakhir, tinjau semua detail dan klik 'Konfirmasi dan buat'. Web ACL (Access Control List) akan dibuat dan dikaitkan dengan Application Load Balancer seperti yang ditunjukkan di bawah ini.

Langkah 3g: Sekarang coba akses URL Application Load Balancer melalui browser seperti yang dilakukan di Langkah 2k . Kali ini kami akan mendapatkan '403 Forbidden' karena URL kami cocok dengan kondisi Web ACL dan kami memblokirnya. Permintaan tidak pernah mencapai Application Load Balancer atau Aplikasi Web di EC2. Di sini kami melihat bahwa meskipun aplikasi mengizinkan akses ke Kredensial Keamanan, WAF memblokirnya.

Langkah 4: Membersihkan sumber daya AWS yang dibuat dalam tutorial ini. Pembersihan harus dilakukan dengan urutan yang persis sama seperti yang disebutkan di bawah. Ini untuk memastikan bahwa AWS menghentikan penagihan untuk sumber daya terkait yang dibuat sebagai bagian dari tutorial ini.

  • Hapus Ketentuan di Aturan
  • Hapus Aturan di WebACL
  • Pisahkan ALB di WebACL
  • Hapus WebACL
  • Hapus Aturan
  • Hapus filter di Kondisi
  • Hapus Kondisi
  • Hapus ALB dan Grup Target
  • Hentikan EC2
  • Hapus Peran IAM

Kesimpulan

Seperti yang disebutkan sebelumnya, membuat Aplikasi Web menggunakan AWS sangat mudah dan menarik. Namun kita juga harus memastikan bahwa aplikasi tersebut aman dan datanya tidak bocor ke tangan yang salah. Keamanan dapat diterapkan di banyak lapisan. Dalam tutorial ini kita telah melihat bagaimana menggunakan AWS WAF (Web Application Firewall) untuk melindungi Aplikasi Web dari serangan seperti mencocokkan dengan alamat IP Metadata EC2. Kami juga dapat menggunakan WAF untuk melindungi dari serangan umum seperti SQL Injection dan XSS (Cross Site Scripting).

Menggunakan AWS WAF atau sebenarnya produk keamanan lainnya tidak membuat aplikasi tersebut aman, tetapi produk tersebut harus dikonfigurasi dengan benar. Jika tidak dikonfigurasi dengan benar, data mungkin jatuh ke tangan yang salah seperti yang terjadi dengan Capital One dan Organisasi lainnya. Juga, hal penting lainnya untuk dipertimbangkan adalah bahwa Keamanan harus dipikirkan sejak hari pertama dan tidak dicolokkan ke aplikasi di kemudian hari.

Ini membawa kita ke akhir artikel ini tentang Cara Mengamankan Aplikasi Web Dengan AWS WAF. Kami juga telah membuat kurikulum yang mencakup dengan tepat apa yang Anda perlukan untuk memecahkan Ujian Arsitek Solusi! Anda dapat melihat detail kursus untuk latihan.

Ada pertanyaan untuk kami? Harap sebutkan di bagian komentar di blog Apa itu AWS dan kami akan menghubungi Anda kembali.