Evolusi Tembok Api Aplikasi Web: daripada tembok api kepada sistem perlindungan berasaskan awan dengan pembelajaran mesin

Dalam bahan kami sebelum ini mengenai topik awan, kami memberitahu, cara melindungi sumber IT dalam awan awam dan sebab antivirus tradisional tidak sesuai sepenuhnya untuk tujuan ini. Dalam siaran ini, kami akan meneruskan topik keselamatan awan dan bercakap tentang evolusi WAF dan perkara yang lebih baik untuk dipilih: perkakasan, perisian atau awan. 

Evolusi Tembok Api Aplikasi Web: daripada tembok api kepada sistem perlindungan berasaskan awan dengan pembelajaran mesin

Apa itu WAF

Lebih daripada 75% serangan penggodam ditujukan kepada kelemahan aplikasi web dan tapak web: serangan sedemikian biasanya tidak dapat dilihat oleh infrastruktur keselamatan maklumat dan perkhidmatan keselamatan maklumat. Kerentanan dalam aplikasi web membawa, seterusnya, risiko kompromi dan penipuan akaun pengguna dan data peribadi, kata laluan dan nombor kad kredit. Selain itu, kelemahan dalam laman web berfungsi sebagai titik masuk untuk penyerang ke dalam rangkaian korporat.

Tembok Api Aplikasi Web (WAF) ialah skrin pelindung yang menyekat serangan pada aplikasi web: suntikan SQL, skrip merentas tapak, pelaksanaan kod jauh, kekerasan dan pintasan kebenaran. Termasuk serangan yang mengeksploitasi kelemahan sifar hari. Firewall aplikasi menyediakan perlindungan dengan memantau kandungan halaman web, termasuk HTML, DHTML dan CSS, serta menapis permintaan HTTP/HTTPS yang berpotensi berniat jahat.

Apakah keputusan pertama?

Percubaan pertama untuk mencipta Tembok Api Aplikasi Web telah dibuat pada awal 90-an. Sekurang-kurangnya tiga jurutera diketahui telah bekerja dalam bidang ini. Yang pertama ialah profesor sains komputer Gene Spafford dari Universiti Purdue. Beliau menerangkan seni bina tembok api aplikasi proksi dan menerbitkannya pada tahun 1991 dalam buku itu "Keselamatan UNIX dalam Amalan".

Yang kedua dan ketiga ialah pakar keselamatan maklumat William Cheswick dan Marcus Ranum dari Bell Labs. Mereka membangunkan salah satu prototaip firewall aplikasi pertama. Ia diedarkan oleh DEC - produk itu dikeluarkan di bawah nama SEAL (Pautan Akses Luar Selamat).

Tetapi SEAL bukanlah penyelesaian WAF sepenuhnya. Ia adalah tembok api rangkaian klasik dengan fungsi lanjutan - keupayaan untuk menyekat serangan pada FTP dan RSH. Atas sebab ini, penyelesaian WAF pertama hari ini dianggap sebagai produk Perfecto Technologies (kemudian Sanctum). Pada tahun 1999 dia dibentangkan Sistem AppShield. Pada masa itu, Perfecto Technologies sedang membangunkan penyelesaian keselamatan maklumat untuk e-dagang, dan kedai dalam talian menjadi khalayak sasaran produk baharu mereka. AppShield dapat menganalisis permintaan HTTP dan menyekat serangan berdasarkan dasar keselamatan maklumat dinamik.

Sekitar masa yang sama seperti AppShield (pada tahun 2002), WAF sumber terbuka pertama muncul. Beliau menjadi ModSecurity. Ia dicipta dengan tujuan untuk mempopularkan teknologi WAF dan masih disokong oleh komuniti IT (ini dia repositori di GitHub). ModSecurity menyekat serangan pada aplikasi berdasarkan set standard ungkapan biasa (tandatangan) - alat untuk menyemak permintaan berdasarkan corak - Set Peraturan Teras OWASP.

Hasilnya, pembangun berjaya mencapai matlamat mereka - penyelesaian WAF baharu mula muncul di pasaran, termasuk yang dibina berdasarkan ModSecurity.

Tiga generasi sudah menjadi sejarah

Adalah menjadi kebiasaan untuk membezakan tiga generasi sistem WAF, yang telah berkembang dengan perkembangan teknologi.

Generasi pertama. Berfungsi dengan ungkapan biasa (atau tatabahasa). Ini termasuk ModSecurity. Pembekal sistem mengkaji jenis serangan pada aplikasi dan menjana corak yang menerangkan permintaan yang sah dan berpotensi berniat jahat. WAF menyemak senarai ini dan memutuskan perkara yang perlu dilakukan dalam situasi tertentu - untuk menyekat trafik atau tidak.

Contoh pengesanan berdasarkan ungkapan biasa ialah projek yang telah disebutkan Set Peraturan Teras sumber terbuka. Contoh yang lain - Naxsi, yang juga merupakan sumber terbuka. Sistem dengan ungkapan biasa mempunyai beberapa kelemahan, khususnya, apabila kelemahan baharu ditemui, pentadbir perlu membuat peraturan tambahan secara manual. Dalam kes infrastruktur IT berskala besar, mungkin terdapat beberapa ribu peraturan. Menguruskan begitu banyak ungkapan biasa agak sukar, apatah lagi fakta bahawa menyemaknya boleh mengurangkan prestasi rangkaian.

Ungkapan biasa juga mempunyai kadar positif palsu yang agak tinggi. Ahli bahasa terkenal Noam Chomsky mencadangkan klasifikasi tatabahasa di mana dia membahagikannya kepada empat tahap kerumitan bersyarat. Menurut klasifikasi ini, ungkapan biasa hanya boleh menerangkan peraturan firewall yang tidak melibatkan sisihan daripada corak. Ini bermakna bahawa penyerang boleh dengan mudah "menipu" WAF generasi pertama. Satu kaedah untuk memerangi ini adalah dengan menambah aksara khas pada permintaan aplikasi yang tidak menjejaskan logik data berniat jahat, tetapi melanggar peraturan tandatangan.

Evolusi Tembok Api Aplikasi Web: daripada tembok api kepada sistem perlindungan berasaskan awan dengan pembelajaran mesin

Generasi kedua. Untuk mengelakkan isu prestasi dan ketepatan WAF, tembok api aplikasi generasi kedua telah dibangunkan. Mereka kini mempunyai penghurai yang bertanggungjawab untuk mengenal pasti jenis serangan yang ditetapkan dengan ketat (pada HTML, JS, dll.). Penghurai ini berfungsi dengan token khas yang menerangkan pertanyaan (contohnya, pembolehubah, rentetan, tidak diketahui, nombor). Urutan token yang berpotensi berniat jahat diletakkan dalam senarai berasingan, yang selalu disemak oleh sistem WAF. Pendekatan ini pertama kali ditunjukkan pada persidangan Black Hat 2012 dalam bentuk C/C++ perpustakaan libinjection, yang membolehkan anda mengesan suntikan SQL.

Berbanding dengan WAF generasi pertama, penghurai khusus boleh menjadi lebih pantas. Walau bagaimanapun, mereka tidak menyelesaikan kesukaran yang berkaitan dengan mengkonfigurasi sistem secara manual apabila serangan berniat jahat baharu muncul.

Evolusi Tembok Api Aplikasi Web: daripada tembok api kepada sistem perlindungan berasaskan awan dengan pembelajaran mesin

Generasi ketiga. Evolusi dalam logik pengesanan generasi ketiga terdiri daripada penggunaan kaedah pembelajaran mesin yang memungkinkan untuk membawa tatabahasa pengesanan sedekat mungkin dengan tatabahasa SQL/HTML/JS sebenar bagi sistem yang dilindungi. Logik pengesanan ini dapat menyesuaikan mesin Turing untuk merangkumi tatabahasa yang boleh dikira secara rekursif. Lebih-lebih lagi, sebelum ini tugas untuk mencipta mesin Turing yang boleh disesuaikan tidak dapat diselesaikan sehingga kajian pertama mesin Turing saraf diterbitkan.

Pembelajaran mesin menyediakan keupayaan unik untuk menyesuaikan sebarang tatabahasa untuk meliputi sebarang jenis serangan tanpa membuat senarai tandatangan secara manual seperti yang diperlukan dalam pengesanan generasi pertama, dan tanpa membangunkan tokenizer/penghurai baharu untuk jenis serangan baharu seperti Memcached, Redis, Cassandra, suntikan SSRF , seperti yang dikehendaki oleh metodologi generasi kedua.

Dengan menggabungkan ketiga-tiga generasi logik pengesanan, kita boleh melukis gambar rajah baharu di mana generasi ketiga pengesanan diwakili oleh garis besar merah (Rajah 3). Generasi ini termasuk salah satu penyelesaian yang kami laksanakan dalam awan bersama Onsek, pembangun platform untuk perlindungan adaptif aplikasi web dan API Wallarm.

Logik pengesanan kini menggunakan maklum balas daripada aplikasi untuk menala sendiri. Dalam pembelajaran mesin, gelung maklum balas ini dipanggil "tetulang." Biasanya, terdapat satu atau lebih jenis tetulang tersebut:

  • Analisis tingkah laku tindak balas aplikasi (pasif)
  • Imbas/fuzzer (aktif)
  • Laporkan fail/prosedur pemintas/perangkap (selepas fakta)
  • Manual (ditakrifkan oleh penyelia)

Akibatnya, logik pengesanan generasi ketiga juga menangani isu ketepatan yang penting. Kini bukan sahaja mungkin untuk mengelakkan positif palsu dan negatif palsu, tetapi juga untuk mengesan negatif benar yang sah, seperti pengesanan penggunaan elemen perintah SQL dalam Panel Kawalan, pemuatan templat halaman web, permintaan AJAX yang berkaitan dengan ralat JavaScript dan lain-lain.

Evolusi Tembok Api Aplikasi Web: daripada tembok api kepada sistem perlindungan berasaskan awan dengan pembelajaran mesin

Evolusi Tembok Api Aplikasi Web: daripada tembok api kepada sistem perlindungan berasaskan awan dengan pembelajaran mesin

Evolusi Tembok Api Aplikasi Web: daripada tembok api kepada sistem perlindungan berasaskan awan dengan pembelajaran mesin

Seterusnya, kami akan mempertimbangkan keupayaan teknologi pelbagai pilihan pelaksanaan WAF.

Perkakasan, perisian atau awan - apa yang perlu dipilih?

Salah satu pilihan untuk melaksanakan tembok api aplikasi ialah penyelesaian perkakasan. Sistem sedemikian ialah peranti pengkomputeran khusus yang dipasang oleh syarikat secara tempatan di pusat datanya. Tetapi dalam kes ini, anda perlu membeli peralatan anda sendiri dan membayar wang kepada penyepadu untuk menyediakannya dan menyahpepijatnya (jika syarikat tidak mempunyai jabatan IT sendiri). Pada masa yang sama, sebarang peralatan menjadi lapuk dan tidak boleh digunakan, jadi pelanggan terpaksa membuat belanjawan untuk peningkatan perkakasan.

Pilihan lain untuk menggunakan WAF ialah pelaksanaan perisian. Penyelesaian itu dipasang sebagai alat tambah untuk sesetengah perisian (contohnya, ModSecurity dikonfigurasikan di atas Apache) dan berjalan pada pelayan yang sama dengannya. Sebagai peraturan, penyelesaian sedemikian boleh digunakan pada pelayan fizikal dan di awan. Kelemahan mereka ialah kebolehskalaan terhad dan sokongan vendor.

Pilihan ketiga ialah menyediakan WAF daripada awan. Penyelesaian sedemikian disediakan oleh penyedia awan sebagai perkhidmatan langganan. Syarikat tidak perlu membeli dan mengkonfigurasi perkakasan khusus; tugas-tugas ini terletak di bahu pembekal perkhidmatan. Perkara penting ialah WAF awan moden tidak membayangkan pemindahan sumber ke platform penyedia. Tapak ini boleh digunakan di mana-mana, walaupun di premis.

Kami akan menerangkan dengan lebih lanjut mengapa orang kini semakin melihat ke arah WAF awan.

Apa yang WAF boleh lakukan dalam awan

Dari segi keupayaan teknologi:

  • Pembekal bertanggungjawab untuk kemas kini. WAF disediakan melalui langganan, jadi pembekal perkhidmatan memantau perkaitan kemas kini dan lesen. Kemas kini bukan sahaja melibatkan perisian, tetapi juga perkakasan. Pembekal menaik taraf taman pelayan dan mengekalkannya. Ia juga bertanggungjawab untuk mengimbangi beban dan redundansi. Jika pelayan WAF gagal, trafik akan segera dilencongkan ke mesin lain. Pengagihan trafik yang rasional membolehkan anda mengelakkan situasi apabila tembok api memasuki mod terbuka gagal - ia tidak dapat menampung beban dan menghentikan permintaan penapisan.
  • Tampalan maya. Tampalan maya menyekat akses kepada bahagian aplikasi yang terjejas sehingga pembangun menutup kelemahan. Akibatnya, pelanggan penyedia awan mendapat peluang untuk menunggu dengan tenang sehingga pembekal perisian ini atau itu menerbitkan "tampalan" rasmi. Melakukan ini secepat mungkin adalah keutamaan bagi pembekal perisian. Contohnya, dalam platform Wallarm, modul perisian berasingan bertanggungjawab untuk menampal maya. Pentadbir boleh menambah ungkapan biasa tersuai untuk menyekat permintaan berniat jahat. Sistem ini memungkinkan untuk menandakan beberapa permintaan dengan bendera "Data Sulit". Kemudian parameter mereka bertopeng, dan dalam apa jua keadaan ia tidak dihantar ke luar kawasan kerja firewall.
  • Perimeter terbina dalam dan pengimbas kelemahan. Ini membolehkan anda menentukan secara bebas sempadan rangkaian infrastruktur IT menggunakan data daripada pertanyaan DNS dan protokol WHOIS. Selepas itu, WAF secara automatik menganalisis perkhidmatan yang berjalan di dalam perimeter (melakukan pengimbasan port). Firewall mampu mengesan semua jenis kelemahan biasa - SQLi, XSS, XXE, dsb. - dan mengenal pasti ralat dalam konfigurasi perisian, contohnya, akses tanpa kebenaran kepada repositori Git dan BitBucket serta panggilan tanpa nama ke Elasticsearch, Redis, MongoDB.
  • Serangan dipantau oleh sumber awan. Sebagai peraturan, pembekal awan mempunyai jumlah kuasa pengkomputeran yang besar. Ini membolehkan anda menganalisis ancaman dengan ketepatan dan kelajuan yang tinggi. Sekumpulan nod penapis digunakan dalam awan, yang melaluinya semua lalu lintas. Nod ini menyekat serangan pada aplikasi web dan menghantar statistik ke Pusat Analitis. Ia menggunakan algoritma pembelajaran mesin untuk mengemas kini peraturan penyekatan untuk semua aplikasi yang dilindungi. Pelaksanaan skim sedemikian ditunjukkan dalam Rajah. 4. Peraturan keselamatan yang disesuaikan sedemikian meminimumkan bilangan penggera tembok api palsu.

Evolusi Tembok Api Aplikasi Web: daripada tembok api kepada sistem perlindungan berasaskan awan dengan pembelajaran mesin

Sekarang sedikit tentang ciri WAF awan dari segi isu dan pengurusan organisasi:

  • Peralihan kepada OpEx. Dalam kes WAF awan, kos pelaksanaan akan menjadi sifar, kerana semua perkakasan dan lesen telah dibayar oleh pembekal; pembayaran untuk perkhidmatan dibuat melalui langganan.
  • Pelan tarif yang berbeza. Pengguna perkhidmatan awan boleh mendayakan atau melumpuhkan pilihan tambahan dengan cepat. Fungsi diuruskan daripada panel kawalan tunggal, yang juga selamat. Ia diakses melalui HTTPS, serta terdapat mekanisme pengesahan dua faktor berdasarkan protokol TOTP (Time-based One-Time Password Algorithm).
  • Sambungan melalui DNS. Anda boleh menukar DNS sendiri dan mengkonfigurasi penghalaan rangkaian. Untuk menyelesaikan masalah ini tidak perlu merekrut dan melatih pakar individu. Sebagai peraturan, sokongan teknikal pembekal boleh membantu dengan persediaan.

Teknologi WAF telah berkembang daripada tembok api mudah dengan peraturan praktikal kepada sistem perlindungan yang kompleks dengan algoritma pembelajaran mesin. Tembok api aplikasi kini menawarkan pelbagai ciri yang sukar dilaksanakan pada tahun 90-an. Dalam banyak cara, kemunculan fungsi baharu menjadi mungkin berkat teknologi awan. Penyelesaian WAF dan komponennya terus berkembang. Sama seperti bidang keselamatan maklumat yang lain.

Teks itu disediakan oleh Alexander Karpuzikov, pengurus pembangunan produk keselamatan maklumat di penyedia awan #CloudMTS.

Sumber: www.habr.com

Tambah komen