Aiemmassa pilviaiheita käsittelevässä materiaalissamme me
Mikä on WAF
Yli 75 % hakkerihyökkäyksistä kohdistuu verkkosovellusten ja verkkosivustojen haavoittuvuuksiin: tällaiset hyökkäykset ovat yleensä näkymättömiä tietoturvainfrastruktuurille ja tietoturvapalveluille. Verkkosovellusten haavoittuvuuksiin liittyy puolestaan käyttäjätilien ja henkilötietojen, salasanojen ja luottokorttinumeroiden vaarantumis- ja petosriski. Lisäksi verkkosivuston haavoittuvuudet toimivat hyökkääjien pääsypisteenä yritysverkkoon.
Web Application Firewall (WAF) on suojaava näyttö, joka estää hyökkäykset verkkosovelluksiin: SQL-injektio, sivustojen välinen komentosarja, koodin etäsuoritus, raaka voima ja valtuutuksen ohitus. Mukaan lukien hyökkäykset, jotka hyödyntävät nollapäivän haavoittuvuuksia. Sovellusten palomuurit tarjoavat suojaa valvomalla verkkosivujen sisältöä, mukaan lukien HTML, DHTML ja CSS, ja suodattamalla mahdollisesti haitallisia HTTP/HTTPS-pyyntöjä.
Какими были первые решения?
Ensimmäiset yritykset luoda Web Application Firewall tehtiin jo 90-luvun alussa. Ainakin kolmen insinöörin tiedetään työskennelleet tällä alalla. Ensimmäinen on tietojenkäsittelytieteen professori Gene Spafford Purduen yliopistosta. Hän kuvasi välityspalvelinsovelluksen palomuurin arkkitehtuuria ja julkaisi sen vuonna 1991 kirjassa
Toinen ja kolmas olivat tietoturva-asiantuntijat William Cheswick ja Marcus Ranum Bell Labsista. He kehittivät yhden ensimmäisistä sovellusten palomuuriprototyypeistä. Sen jakeli DEC - tuote julkaistiin nimellä SEAL (Secure External Access Link).
Но SEAL не являлся полноценным WAF-решением. Он представлял собой классический сетевой файрвол с расширенной функциональностью — возможностью блокировать атаки на FTP и RSH. По этой причине первым WAF-решением сегодня считается продукт компании Perfecto Technologies (позже Sanctum). В 1999 году она
Noin samaan aikaan kuin AppShield (vuonna 2002), ensimmäinen avoimen lähdekoodin WAF ilmestyi. Hän tuli
В итоге разработчикам удалось добиться своей цели — на рынке начали появляться новые WAF-решения, в том числе построенные на базе ModSecurity.
Kolme sukupolvea on jo historiaa
On tapana erottaa kolme WAF-järjestelmien sukupolvea, jotka ovat kehittyneet tekniikan kehityksen myötä.
Ensimmäinen sukupolvi. Toimii säännöllisten lausekkeiden (tai kielioppien) kanssa. Tämä sisältää ModSecurityn. Järjestelmäntarjoaja tutkii sovellusten hyökkäystyyppejä ja luo malleja, jotka kuvaavat laillisia ja mahdollisesti haitallisia pyyntöjä. WAF tarkistaa nämä luettelot ja päättää, mitä tehdä tietyssä tilanteessa - estääkö liikenne vai ei.
Esimerkki säännöllisiin lausekkeisiin perustuvasta havaitsemisesta on jo mainittu projekti
Säännöllisillä lausekkeilla on myös melko korkea väärien positiivisten prosenttiosuus. Kuuluisa kielitieteilijä Noam Chomsky ehdotti kielioppiluokitusta, jossa hän jakoi ne neljään ehdolliseen monimutkaisuustasoon. Tämän luokituksen mukaan säännölliset lausekkeet voivat kuvata vain palomuurin sääntöjä, jotka eivät sisällä poikkeamia mallista. Tämä tarkoittaa, että hyökkääjät voivat helposti "huijata" ensimmäisen sukupolven WAF:ia. Yksi tapa torjua tätä on lisätä sovelluspyyntöihin erikoismerkkejä, jotka eivät vaikuta haitallisen tiedon logiikkaan, mutta rikkovat allekirjoitussääntöä.
Toinen sukupolvi. WAF:ien suorituskyky- ja tarkkuusongelmien kiertämiseksi kehitettiin toisen sukupolven sovelluspalomuurit. Heillä on nyt jäsentimiä, jotka vastaavat tiukasti määriteltyjen hyökkäystyyppien tunnistamisesta (HTML, JS jne.). Nämä jäsentimet toimivat erityisten kyselyitä kuvaavien tunnuksien kanssa (esimerkiksi muuttuja, merkkijono, tuntematon, numero). Mahdollisesti haitalliset merkkisekvenssit sijoitetaan erilliseen luetteloon, jota WAF-järjestelmä tarkistaa säännöllisesti. Tämä lähestymistapa esiteltiin ensimmäisen kerran Black Hat 2012 -konferenssissa C/C++-muodossa
Ensimmäisen sukupolven WAF:eihin verrattuna erikoistuneet jäsentimet voivat olla nopeampia. Ne eivät kuitenkaan ratkaisseet ongelmia, jotka liittyvät järjestelmän manuaaliseen määrittämiseen uusien haitallisten hyökkäysten ilmaantuessa.
Kolmas sukupolvi. Kolmannen sukupolven tunnistuslogiikan kehitys koostuu koneoppimismenetelmien käytöstä, jotka mahdollistavat tunnistuksen kieliopin saattamisen mahdollisimman lähelle suojattujen järjestelmien todellista SQL/HTML/JS-kielioppia. Tämä ilmaisulogiikka pystyy mukauttamaan Turingin koneen kattamaan rekursiivisesti numeroitavia kielioppeja. Lisäksi aiemmin tehtävä mukautuvan Turingin koneen luominen oli ratkaisematon, kunnes ensimmäiset tutkimukset hermo Turingin koneista julkaistiin.
Машинное обучение предоставляет уникальную возможность адаптировать любую грамматику для охвата любого типа атак без создания списков сигнатур вручную, как это требовалось при обнаружении первого поколения, и без разработки новых токенизаторов/парсеров для новых типов атак, таких как внедрения Memcached, Redis, Cassandra, SSRF, как того требовала методология второго поколения.
Yhdistämällä kaikki kolme tunnistuslogiikan sukupolvea voidaan piirtää uusi kaavio, jossa kolmatta sukupolvea ilmaisu edustaa punaisella ääriviivalla (kuva 3). Tämä sukupolvi sisältää yhden ratkaisuista, joita toteutamme pilvessä yhdessä verkkosovellusten mukautuvan suojauksen alustan ja Wallarm API:n kehittäjän Onsekin kanssa.
Tunnistuslogiikka käyttää nyt sovelluksen palautetta itsensä virittämiseen. Koneoppimisessa tätä palautesilmukkaa kutsutaan "vahvistukseksi". Tyypillisesti tällaisia vahvistuksia on yksi tai useampia:
- Sovelluksen vastekäyttäytymisen analyysi (passiivinen)
- Scan/fuzzer (aktiivinen)
- Файлы отчетов/процедуры-перехватчики/ловушки (пост фактум)
- Manuaalinen (esimiehen määrittelemä)
В результате логика обнаружения третьего поколения также решает важную проблему точности. Теперь возможно не только избежать ложных срабатываний и ложных отрицаний, но и обнаружить допустимые истинно отрицательные результаты, такие как обнаружение использования командного элемента SQL в панели управления, загрузка шаблонов веб-страниц, запросы AJAX, связанные с ошибками JavaScript, и другие.
Seuraavaksi tarkastelemme eri WAF-toteutusvaihtoehtojen teknisiä ominaisuuksia.
Laitteisto, ohjelmisto vai pilvi – mitä valita?
Yksi vaihtoehdoista sovellusten palomuurien toteuttamiseen on laitteistoratkaisu. Tällaiset järjestelmät ovat erikoistuneita laskentalaitteita, jotka yritys asentaa paikallisesti datakeskukseensa. Mutta tässä tapauksessa sinun on ostettava omat laitteet ja maksettava rahaa integraattoreille niiden asentamisesta ja virheenkorjauksesta (jos yrityksellä ei ole omaa IT-osastoa). Samaan aikaan kaikki laitteet vanhentuvat ja muuttuvat käyttökelvottomiksi, joten asiakkaiden on pakko varata laitteistopäivityksiä.
Toinen vaihtoehto WAF:n käyttöönottamiseksi on ohjelmistototeutus. Ratkaisu asennetaan lisäosana joihinkin ohjelmistoihin (esimerkiksi ModSecurity on määritetty Apachen päälle) ja toimii samalla palvelimella sen kanssa. Pääsääntöisesti tällaisia ratkaisuja voidaan ottaa käyttöön sekä fyysisellä palvelimella että pilvessä. Niiden haittana on rajoitettu skaalautuvuus ja toimittajatuki.
Kolmas vaihtoehto on WAF:n määrittäminen pilvestä. Tällaisia ratkaisuja tarjoavat pilvipalveluntarjoajat tilauspalveluna. Yrityksen ei tarvitse ostaa ja konfiguroida erikoislaitteita, vaan nämä tehtävät kuuluvat palveluntarjoajan harteille. Tärkeä asia on, että moderni pilvi-WAF ei tarkoita resurssien siirtymistä palveluntarjoajan alustalle. Sivusto voidaan ottaa käyttöön missä tahansa, jopa paikan päällä.
Почему сейчас все чаще смотрят в сторону облачного WAF, расскажем далее.
Что может WAF в облаке
Teknisten ominaisuuksien suhteen:
- Palveluntarjoaja on vastuussa päivityksistä. WAF toimitetaan tilauksella, joten palveluntarjoaja seuraa päivitysten ja lisenssien merkitystä. Päivitykset eivät koske vain ohjelmistoja, vaan myös laitteistoja. Palveluntarjoaja päivittää palvelinpuiston ja ylläpitää sitä. Se vastaa myös kuormituksen tasapainotuksesta ja redundanssista. Jos WAF-palvelin epäonnistuu, liikenne ohjataan välittömästi toiselle koneelle. Liikenteen järkevä jakautuminen mahdollistaa tilanteiden välttämisen, kun palomuuri siirtyy epäonnistuneeseen avoimeen tilaan - se ei kestä kuormaa ja lopettaa pyyntöjen suodattamisen.
- Virtuaalinen korjaus. Виртуальные патчи ограничивают доступ к скомпрометированным частям приложения до закрытия уязвимости разработчиком. В результате заказчик облачного провайдера получает возможность спокойно дождаться пока поставщик того или иного программного обеспечения опубликует официальные «заплатки». Сделать это максимально оперативно — приоритет для поставщика ПО. К примеру, в платформе «Валарм» за виртуальный патчинг отвечает отдельный программный модуль. Администратор может добавлять кастомные регулярные выражения для блокировки вредоносных запросов. Система дает возможность отмечать некоторые запросы флагом «Конфиденциальные данные». Тогда их параметры маскируются, а сами они ни при каких условиях не передаются за пределы рабочей зоны файрвола.
- Sisäänrakennettu kehä- ja haavoittuvuusskanneri. Это позволяет самостоятельно определять сетевые границы ИТ-инфраструктуры, используя данные DNS-запросов и протокола WHOIS. После WAF автоматически анализирует работающие внутри периметра службы и сервисы (выполняет сканирование портов). Файрвол способен обнаруживать все распространённые типы уязвимостей — SQLi, XSS, XXE и др. — и выявлять ошибки в конфигурации ПО, например, несанкционированный доступ к репозиториям Git и BitBucket и анонимные обращения к Elasticsearch, Redis, MongoDB.
- Атаки мониторятся ресурсами облака. Pääsääntöisesti pilvipalveluntarjoajilla on paljon laskentatehoa. Tämän avulla voit analysoida uhkia erittäin tarkasti ja nopeasti. Pilveen on otettu käyttöön suodatinsolmujen klusteri, jonka läpi kaikki liikenne kulkee. Nämä solmut estävät hyökkäykset verkkosovelluksiin ja lähettävät tilastoja Analytics-keskukseen. Se käyttää koneoppimisalgoritmeja päivittääkseen kaikkien suojattujen sovellusten estosäännöt. Tällaisen järjestelmän toteutus on esitetty kuvassa. 4. Tällaiset räätälöidyt turvallisuussäännöt minimoivat väärien palomuurin hälytysten määrän.
Nyt vähän pilvi WAF:ien ominaisuuksista organisatoristen asioiden ja hallinnan kannalta:
- Siirtyminen OpExiin. Pilvi-WAF:ien tapauksessa toteutuskustannukset ovat nolla, koska palveluntarjoaja on jo maksanut kaikki laitteistot ja lisenssit, palvelusta maksetaan tilauksella.
- Eri tariffisuunnitelmat. Pilvipalvelun käyttäjä voi nopeasti ottaa käyttöön tai poistaa käytöstä lisäasetuksia. Toimintoja hallitaan yhdestä ohjauspaneelista, joka on myös turvallinen. Sitä käytetään HTTPS:n kautta, ja siinä on kaksivaiheinen todennusmekanismi, joka perustuu TOTP-protokollaan (Time-based One-Time Password Algorithm).
- Подключение по DNS. Voit muuttaa DNS:ää itse ja määrittää verkkoreitityksen. Näiden ongelmien ratkaisemiseksi ei tarvitse rekrytoida ja kouluttaa yksittäisiä asiantuntijoita. Pääsääntöisesti palveluntarjoajan tekninen tuki voi auttaa asennuksessa.
WAF-технологии прошли эволюцию от простых сетевых экранов с эмпирическими правилами до комплексных систем защиты с алгоритмами машинного обучения. Сейчас файрволы приложений обладают широким спектром функций, которые были труднореализуемы в 90-х. Во многом появление новой функциональности стало возможно благодаря облачным технологиям. WAF-решения и их компоненты продолжают развиваться. Так же, как и другие сферы ИБ.
Текст подготовил Александр Карпузиков, менеджер по развитию продуктов ИБ облачного провайдера #CloudMTS.
Lähde: will.com