Perlindungan keselamatan Aplikasi Web Firewall untuk aplikasi HTTP dan HTTPS

DIPOS oleh Zevenet | 10 September 2019

Gambaran Keseluruhan

Artikel berikut menerangkan kes penggunaan sebenar untuk penyedia ISP atau penyedia hosting, di mana proksi terbalik HTTP / S Load Balancer adalah titik utama akses kepada semua perkhidmatan web awam, konfigurasi ini menunjukkan betapa mudahnya untuk mengkonfigurasi WAF yang maju dan berkuasa ruleset untuk mengamankan aplikasi web berdasarkan alamat IP sumber hitam senarai hitam, di mana masing-masing VirtualHost mengurus senarai hitamnya sendiri dengan cara satu IP Awam boleh dilarang untuk menyambung ke domain web seperti www.company1.com tetapi dibenarkan untuk menyambung ke www.company2.com.

Kami akan memfokuskan artikel dalam dua bahagian, di bahagian utama konfigurasi profil HTTPS akan berfungsi sebagai proksi terbalik dengan senarai perkhidmatan yang berbeza, dan bahagian kedua akan menjelaskan cara mengkonfigurasi Firewall Aplikasi Web ruleset yang akan menguruskan senarai hitam yang berbeza bagi setiap Perkhidmatan HTTP / S.

alam Sekitar

Gambarajah berikut menggambarkan dalaman Weven ZAF. Seperti yang ditunjukkan, lapisan pertama adalah modul WAF yang matlamatnya adalah untuk memastikan pada peringkat awal bahawa hanya permintaan yang selamat dibenarkan untuk lulus ke modul pengimbangan beban dan kemudian mengemukakan permintaan ke belakang.

Pertama, HTTP Tuan rumah header dievaluasi dan IP pelanggan diperiksa dalam senarai hitam yang sudah dikonfigurasi. Sekiranya Tuan rumah header dan alamat IP pelanggan yang cocok maka sambungan dijatuhkan dan a Larangan 403 Sambutan HTTP dihantar kepada pelanggan, tetapi dalam hal klien IP dan diminta Tuan rumah header tidak sepadan maka lalu lintas dikenal pasti tidak berniat jahat dan diteruskan ke modul load balancer, di mana destinasi dipilih berdasarkan permintaan HTTP Tuan rumah header dan akhirnya dihantar ke pelayan backend yang tersedia.

Di sini anda boleh mencari skema dalaman Aplikasi Web Firewall untuk contoh yang diberikan.

zevenet IPDS WAF

Konfigurasi perkhidmatan maya HTTP

Konfigurasikan satu yang didedikasikan Alamat IP maya, dalam contoh kita 192.168.100.58, dengan melayari Rangkaian> Antaramuka maya> Buat Muka Maya seperti yang ditunjukkan di bawah:

Zevenet Buat VIP

Sekarang mari kita pergi untuk mengkonfigurasi perkhidmatan pengimbangan beban HTTP, pergi ke LSLB> Ladang dan kemudian klik pada butang Buat Ladang dan masukkan butiran perkhidmatan maya seperti yang ditunjukkan di bawah:

Zevenet Buat Ladang HTTP Hosting

Kemudian tekan Buat.

Sekarang klik pada Tab atas Perkhidmatan Kami dan buat banyak perkhidmatan sebagai laman web yang berbeza yang anda uruskan klik pada butang Perkhidmatan Baru, dalam kes kami, kami akan membuat dua perkhidmatan yang berbeza, satu untuk menguruskan perkhidmatan tersebut www.mycompany1.com dan satu lagi untuk www.mycompany2.com.

Zevenet Buat HTTP Perkhidmatan

Setelah perkhidmatan dibuat, tambahkan Hos Maya penapis dan bahagian belakang seperti ditunjukkan dalam imej di bawah.

Konfigurasi Perkhidmatan HTTP Zevenet

Sekiranya anda mempunyai beberapa laman web, anda hanya perlu menambah lebih banyak perkhidmatan untuk menentukan satu perkhidmatan khusus untuk mengurus setiap web dari alamat IP yang sama.

Sekarang konfigurasi mengimbangi beban telah dilakukan, membolehkan untuk mengkonfigurasi mod Aplikasi Web IPDS Firewall.

Konfigurasi senarai hitam

Kami akan membuat satu senarai hitam untuk setiap perkhidmatan web untuk memasukkan setiap senarai hitam alamat IP yang dikehendaki untuk menyekat akses. Dalam contoh kami, kami akan membuat dua senarai hitam yang berbeza dengan nama itu blacklistmycompany1 dan blacklistmycompany2, satu perkhidmatan setiap satu.

Zevenet IPDS Blacklist1

Senarai hitam ini akan disimpan dalam laluan /usr/local/zevenet/config/ipds/blacklists/lists/Blacklistmycompany1.txt.

Kami termasuk alamat IP 2 untuk tujuan ujian, sila pertimbangkan untuk menambah IP yang diperlukan. Juga, sudah ada Senarai hitam dalam IPDS modul boleh digunakan.

Zevenet Cipta IPDS Blacklist2

Senarai hitam kedua ini akan disimpan di jalan /usr/local/zevenet/config/ipds/blacklists/lists/Blacklistmycompany2.txt.

Ambil perhatian bahawa dalam senarai hitam ini kami memasukkan alamat IP 192.168.1.191, IP ini akan digunakan untuk tujuan pengujian sahaja, dari mana kami akan menjalankan permintaan HTTP.

Konfigurasi kaedah firewall Web Application

Tujuan konfigurasi ini adalah untuk mengekalkan senarai hitam IP yang berbeza bagi setiap laman web, untuk mengelakkan untuk menyimpan senarai hitam yang sama untuk keseluruhan titik akses ladang.

Kami akan mengkonfigurasi a peraturan, yang merupakan kumpulan peraturan, dengan nama HostingBlacklisting. Aturan ini akan disusun oleh dua peraturan mudah (rule ID 1000 dan ID ID 1001 dalam contoh kita), setiap peraturan ditakrifkan sebagai perlawanan dan tindakan, jika jika keadaan cocok maka tindakan itu dilaksanakan. Dalam contoh kami, kami akan menggunakan tindakan yang sama dalam kedua-dua peraturan, jika keadaan sepadan dengan Tolak Tindakan dilaksanakan dengan a Akses 403 ditolak tindak balas.

Pergi ke IPDS> WAF, kemudian klik Buat peraturan WAF dan tetapkan nama peraturan yang bersifat deskriptif, dalam contoh kami HostingBlacklisting.

Mengkonfigurasi medan Fasa lalai kepada Permintaan pengepala diterima. Bidang ini bermakna bahawa modul WAF akan menganalisis tajuk permintaan masuk dari klien.

IPTEK Zevenet Buat WAF Ruleset

Kemudian pergi ke tab peraturan dan buat yang pertama peraturan jenis Tindakan seperti yang ditunjukkan di bawah.

IPTEK Zevenet Buat WAF Ruleset

Sekarang peraturan pertama peraturan dibuat, membolehkan untuk mewujudkan syarat-syarat untuk memadankan IP klien dalam senarai hitam untuk setiap Tuan rumah kepala. Pergi ke Syarat dan mewujudkan keadaan mengikut REMOTE_ADDR pembolehubah seperti yang ditunjukkan di bawah.

Perlawanan Hitlist IPTS Zevenet

Kemudian buat satu lagi keadaan untuk Hos Maya perlawanan mengikut SERVER_NAME pembolehubah seperti berikut:

Perlawanan Zevenet IPDS SERVER_NAME

Pada ketika ini, laman web yang dihoskan pertama www.mycompany1.com mengurus alamat IP blacklist aplikasi web dari senarai hitam yang sudah dikonfigurasikan, dirujuk Blacklistmycompany1.txt.

Mari buat peraturan lain untuk laman web kedua www.mycompany2.com dan ulangi konfigurasi yang sama seperti konfigurasi peraturan sebelumnya tetapi dalam kes ini, anda perlu mengubahnya SERVER_NAME kepada mycompany2.com dan lakukan merujuk kepada yang berikut blacklist2.txt.

Lihat keseluruhan konfigurasi peraturan WAF yang dikompaun:

Zevenet IPDS WAF Kesemua peraturan seting

Akhirnya, tambahkan peraturan ini ke ladang yang sudah dibuat, pergi ke tab Farms dan bergerak ladang hosting, dalam contoh kami, kepada Ladang yang dihidupkan seksyen seperti yang ditunjukkan di bawah.

Zevenet IPDS WAF - Tugasan ladang

Sekarang mula peraturan WAF untuk ladang, klik tindakan bermain di bahagian atas sebelah kiri tetingkap ini, dan sistem akan mula menapis trafik HTTP untuk Ladang hosting.

Menguji aturan Web Firewall Aplikasi Web

IP pelanggan 192.168.1.191 akan meminta laman web tersebut http://www.mycompany1.com dan http://www.mycompany2.com dan, mengikut konfigurasi kami, sistem WAF akan membenarkan menyambung ke perkhidmatan pertama dengan nama yang sama tetapi sambungan akan ditolak mycompany2.com kerana IP ini telah dimasukkan ke dalam senarai hitam dengan nama Blacklistmycompany2.

Dari alamat IP 192.168.1.191 ke VIP yang meminta laman web www.mycompany1.com melalui pengimbang beban:

root@192.168.1.191:# curl -H "Host: www.mycompany1.com" http://192.168.100.58 -v
* Rebuilt URL to: http://192.168.100.58/
*   Trying 192.168.100.58...
* TCP_NODELAY set
* Connected to 192.168.100.58 (192.168.100.58) port 80 (#0)
> GET / HTTP/1.1
> Host: www.mycompany1.com
> User-Agent: curl/7.52.1
> Accept: */*
> 
< HTTP/1.1 200 OK
< Server: nginx/1.10.3
< Date: Tue, 10 Sep 2019 15:36:22 GMT
< Content-Type: text/html
< Content-Length: 11383
< Last-Modified: Thu, 13 Dec 2018 11:01:49 GMT
< Connection: keep-alive
< ETag: "5c123c1d-2c77"
< Accept-Ranges: bytes
< 

Dari alamat IP 192.168.1.191 ke VIP yang meminta laman web www.mycompany2.com melalui pengimbang beban:

root@192.168.1.191:# curl -H "Host: www.mycompany2.com" http://192.168.100.58 -v
* Rebuilt URL to: http://192.168.100.58/
*   Trying 192.168.100.58...
* TCP_NODELAY set
* Connected to 192.168.100.58 (192.168.100.58) port 80 (#0)
> GET / HTTP/1.1
> Host: www.mycompany2.com
> User-Agent: curl/7.52.1
> Accept: */*
> 
* HTTP 1.0, assume close after body
< HTTP/1.0 403 Request forbidden
< Content-Type: text/html
< Content-Length: 17
< Expires: now
< Pragma: no-cache
< Cache-control: no-cache,no-store
< 
* Curl_http_done: called premature == 0
* Closing connection 0
replied forbiddenp

Sebaik sahaja Larangan Sambutan dijana, modul WAF memaklumkan penolakan dalam fail pengimbang beban Syslog.

root@zva6000:# tail -f /var/log/syslog
Sep 10 15:38:44 zva6000 pound: Hosting, ModSecurity: Warning. Matched "Operator `StrMatch' with parameter `mycompany2.com' against variable `SERVER_NAME' (Value: `www.mycompany2.com' ) [file "/usr/local/zevenet/config/ipds/waf/sets/HostingBlacklisting.conf"] [line "17"] [id "1001"] [rev ""] [msg "Custom Match 2"] [data ""] [severity "0"] [ver ""] [maturity "0"] [accuracy "0"] [hostname "192.168.100.58"] [uri "/"] [unique_id "156812992458.770641"] [ref "v0,13v21,18"]
Sep 10 15:38:44 zva6000 pound: Hosting, [WAF,service mycompany2, backend 192.168.100.22:80,] (7f6cfac3c700) [client 192.168.1.191] ModSecurity: Access denied with code 403 (phase 1). Matched "Operator `StrMatch' with parameter `mycompany2.com' against variable `SERVER_NAME' (Value: `www.mycompany2.com' ) [file "/usr/local/zevenet/config/ipds/waf/sets/HostingBlacklisting.conf"] [line "17"] [id "1001"] [rev ""] [msg "Custom Match 2"] [data ""] [severity "0"] [ver ""] [maturity "0"] [accuracy "0"] [hostname "192.168.100.58"] [uri "/"] [unique_id "156812992458.770641"] [ref "v0,13v21,18"]
Sep 10 15:38:44 zva6ktpl1 pound: Hosting, service mycompany2, backend 192.168.100.25:80, (7f6cfac3c700) WAF denied a request from 192.168.1.191

Sekarang anda boleh membina peraturan firewall khusus anda untuk melindungi aplikasi web anda menggunakan teknik pemeriksaan paket HTTP / S yang mendalam.

Related articles

https://www.zevenet.com/knowledge-base/enterprise-edition/enterprise-edition-v6-0-administration-guide/v6-0-ipds-waf-update/

Berkongsi pada:

Dokumentasi di bawah syarat-syarat Lesen Dokumentasi Bebas GNU.

Adakah artikel ini berguna?

Artikel yang berkaitan