Webes alkalmazások tűzfala

Az oldal jelenlegi verzióját még nem ellenőrizték tapasztalt közreműködők, és jelentősen eltérhet a 2021. május 19-én felülvizsgált verziótól ; az ellenőrzések 7 szerkesztést igényelnek .

A webalkalmazások tűzfala ( angolul  Web application firewall , WAF ) a webalkalmazások  elleni hálózati támadások észlelésére és blokkolására tervezett monitorok és szűrők halmaza . A WAF-ok az OSI modell alkalmazási rétegébe tartoznak [1] .

Egy webalkalmazást magának az alkalmazásnak a fejlesztői védhetik WAF használata nélkül. Ez további fejlesztési költségeket igényel. Például az információbiztonsági osztály tartalma . A WAF magába szívta az összes ismert információs támadás elleni védelem képességét, amely lehetővé teszi a védelmi funkció átruházását rá. Ez lehetővé teszi a fejlesztők számára, hogy az alkalmazás üzleti logikájának megvalósítására összpontosítsanak , így több idejük marad a sebezhetőségek kijavítására [2] .

Leírás

A webalkalmazások tűzfalát fedvényvédelemként használják. Ez azt jelenti, hogy a fő webalkalmazás előtt ül, és elemzi a bejövő és kimenő forgalmat. Valós időben dönt arról, hogy engedélyezi vagy megtagadja a hozzáférést [1] .

Bármilyen biztonsági modell támogatható a WAF-ban: pozitív, negatív vagy ezek kombinációja. A modern WAF-ekre a PCI DSS -ben leírt követelmények vonatkoznak . Ellenőrzik az adatátviteli protokoll HTTP/HTTPS kéréseit és válaszait is a biztonsági szabályzatnak megfelelően [3] . Ezenkívül az OWASP nyílt projekt a világ minden tájáról gyűjt adatokat a kompromisszumokról, és minősíti a webes alkalmazások támadási vektorait – OWASP Top Ten [4] . A WAF-okat úgy tervezték, hogy sikeresen reagáljanak az ebben a minősítésben leírt fenyegetésekre [3] .

Meg kell jegyezni, hogy a WAF-ok nem abszolút eszközei az információ védelmének. Általában a teljes webalkalmazás-biztonsági rendszerben más elemekkel kombinálva szerepelnek, például olyan elemekkel, amelyek a HTTP / HTTPS-től eltérő protokollok, incidens-ellenőrző rendszerek, csalás elleni szolgáltatások problémáit oldják meg [5] .

Támadásvektorok

Injekciók

Az SQL injekciók régóta a sikeres támadások fő vektorai [6] . A különféle adatokkal való munkavégzéshez - törlése, módosítása, hozzáadása - az alkalmazás adatbázist használ . Az adatbázis elérésekor az alkalmazás létrehoz egy lekérdezési szöveget, amelyet a támadó meghamisíthat [7] . Ennek eredményeként például adatok kiszivároghatnak, törölhetők vagy megírhatók. A védelem érdekében a felhasználótól kapott adatokat gondosan ellenőrzik, a karaktersorozatok fekete vagy fehér listáit használják, a kérés szövegét kihagyják [8] .

A munkamenet-tárolási sebezhetőségek kihasználása

A felhasználók megkülönböztetése érdekében, amikor egy felhasználó jogosult az oldalon, munkamenet-süti kerül beállításra, vagy engedélyezési token kerül kiadásra, amelyet a böngésző minden alkalommal elment és elküld a szervernek, hogy megbizonyosodjon arról, hogy ez a megfelelő felhasználó. Ezt a kulcsot egy támadó megszerezheti, és a fiók eléréséhez használható [9] . A védelem érdekében a kulccsal együtt ellenőrzik a kapcsolódó információkat, például IP-címet, böngészőt. A szekciókulcs viszonylag rövid élettartammal is rendelkezik [10] .

XSS (Cross Site Scripting)

Ez a fajta támadás abból áll, hogy a támadó Java-Script vagy Html kódot ad át a felhasználó böngészőjének, ahol ez a kód lefut [7] . Így a támadó cookie-kat vagy adatokat kaphat egy fertőzött oldal formájában. A védelem érdekében a bemeneti és kimeneti adatok kihagyásra kerülnek. A mezők érvényesítésére reguláris kifejezéseket használnak [11] .

Bizalmas adatok nyilvánosságra hozatala

Az ilyen típusú támadásokat érzékeny adatok ellopására tervezték. Ez leggyakrabban akkor történik, amikor a kliensről a szerverre egy nem biztonságos HTTP vagy FTP protokollon keresztül továbbítják őket. Útban a szerver felé, egy csomóponton, miután hozzáfért, a támadó beolvashat egy nyitott, nem védett kérést bizalmas felhasználói adatokkal [12] . Az ilyen információk átviteléhez biztonságos HTTPS, TLS átviteli protokollokat használnak. Ezenkívül, ha szükség van ilyen adatok tárolására, akkor azokat titkosított formában tárolják [12] .

Hozzáférés-vezérlési sebezhetőségek kihasználása

A hozzáférés-vezérlési sérülékenységek bizonyos adatokhoz való hozzáférési jogok ellenőrzésének elégtelen alaposságával járnak. Ha rendelkezik bizonyos jogokkal, a támadó hozzáférhet azokhoz az adatokhoz, amelyek ezen jogok miatt zárva vannak [13] .

Például, ha egy támadó azonosítója 1, és a hivatkozás segítségével láthatja üzeneteinek listáját

mysite.com/messages?id=1

majd a jogok elégtelen ellenőrzésével az id értéket 2-re cserélve 

mysite.com/messages?id=2

a szerver üzeneteket ad ki az id = 2 felhasználótól. A fehérlistákat a hozzáférés ellenőrzésére használják. Bár egyes WAF-ok felvállalnak ilyen ellenőrzési funkciókat, ezeket a műveleteket túlnyomórészt a szerveren hajtják végre [14] .

Külső XML-entitások használata

Az OWASP 2017-es jelentésében az olyan támadási vektor, mint az XML External Entities (XXE) [15] , a webalkalmazások lehetséges legnagyobb kockázatai közé tartozott . Az ilyen támadások lehetősége akkor merül fel, ha egy alkalmazás lehetővé teszi a felhasználó számára XML dokumentumok használatát adatátvitelre, amelyek tartalmát egy rosszul konfigurált értelmező elemzi. Ennek eredményeként a támadó az XML-ben egy külső entitásra való hivatkozást adhat át, ami adatvesztéshez vagy egyéb nemkívánatos hatásokhoz vezethet a szerveren [16] [17] . A védelem érdekében gondosan konfigurált XML-sorosítót használnak, vagy lecserélik egy másikra, például JSON-ra. Vagy a külső XML entitások támogatása le van tiltva [18] .

Brute force attacks

A brute-force támadások a webalkalmazások elleni támadások egy fajtája, amelyben a támadó nyers erővel próbál hozzáférni egy webalkalmazáshoz vagy adatokhoz (fiókok, jelszavak, munkamenetadatok).

Például a jelszó paraméter értékének rendezésével a támadó a válaszkód [19] alapján meghatározhatja a sikeres engedélyezést :

GET /vulnerabilities/brute/?username=admin&password=123456&Login=Login

Meg kell jegyezni, hogy egyes szabványos támadások ellen minden modern böngészőbe beépített megfelelő fejlécek és jelzők segítségével lehet védekezni. Például az X-XSS-Protection fejléc vagy a HTTPonly jelző a Set-Cookie [20] [21] fejlécen .

Védelmi módszerek

Aláírás elemzés

A WAF-ok aktívan használják az aláíráselemzést a forgalom szűrésére. Az aláírási módszer a megvalósításában a rosszindulatú forgalom szótárát használja összehasonlítás céljából [22] . Ha a kérés (aláírás) egy része a bejövő forgalomban megtalálható, ami rosszindulatú forgalomnak felel meg, akkor a WAF-ok blokkolják ezt a kérést. Egy példa az aláírásokra [23] .

Hírnévszűrő IP-címekhez

A módszer az IP-címek és tartományok fehér és fekete listáin alapul. Ezekre a listákra hivatkozva a WAF-ok kiértékelik a bejövő kéréseket [2] .

Néhány népszerű blokkolista:

Viselkedéselemzés

A viselkedéselemzés a gépi tanuláson alapul. Ez lehetővé teszi a viselkedés anomáliáinak észlelését a megértés mély szintjén. Egy ilyen mechanizmus tanárral és tanár nélkül is betanítható a hozzáférési azonosítókra. A bejövő paraméterek lehetnek hozzáférési azonosítók, például HTTP paraméterek, erőforrás azonosító (URL, URN), munkamenet azonosító [1] . Így az érvényes hozzáférési azonosítók referencia-matematikai modellje kerül kiosztásra. Ha ez a modell nem egyezik, a következő kérés blokkolva lesz [5] . Ez lehetővé teszi mind az ismert, mind a nulladik napi támadások tükrözését [2] .

További funkciók

DoS védelem

A WAF-ok az információk védelmén túlmenően az elérhetőségükhöz kapcsolódó funkciókat is elláthatnak, és leküzdhetik a DoS támadásokat. Ha támadást észlel, a forgalomterhelésben részt vevő felhasználókat korlátozzák vagy blokkolják. A WAF-ok a captcha-t is implementálhatják a szerver válaszában, ezáltal leállítják az automatikus kéréseket, és lehetővé teszik a valódi felhasználókat [5] .

Sebezhetőségi szkennerek

A mellékelt WAF-ok saját sebezhetőségi szkennerrel rendelkezhetnek. A szkenner felhívja az alkalmazásfejlesztők figyelmét azokra a hiányosságokra, amelyek később javíthatók, illetve ezekért a felelősség a WAF-ra hárítható. Az elemzés során a szkenner olyan kéréseket generálhat, amelyek meghatározott paraméterértékekkel rendelkeznek, amelyek lehetővé teszik a talált sebezhetőség kihasználását. Ismerve a webalkalmazások gyenge pontjait, a WAF-ok virtuális foltokat generálnak, amelyek bezárják az ilyen helyeket [24] .

Kellékek típusai

A WAF többféle kelléket kínál.

Ezen esetek bármelyikében a WAF-ok a következő lehetőségek egyikében telepíthetők: transzparens híd , transzparens vagy fordított proxyszerver [25] .

Piac

Az interneten található webalkalmazások számának növekedésével egyre nő az igény minősített védelmükre [26] . Ez egy tényező a vállalatok ilyen irányú fejlődésében. Számos cég vesz részt az ipar fejlesztésében. Végezzen nyílt elemzést a piacról, a technológiákról és a fenyegetésekről. Mivel a webvédelem fejlesztése során biztonsági alapelveket és szabványokat dolgoztak ki, a különböző cégek WAF termékei funkcionalitásukban hasonlóak, és csak a grafikus héjban térnek el egymástól [3] .

A legnépszerűbb megoldások:


WAF nyílt forráskódú:

Jegyzetek

  1. ↑ 1 2 3 Web Application Firewall (WAF) védelmi rendszerek . Anti-Malware.com. Letöltve: 2019. december 11. Az eredetiből archiválva : 2019. december 11.
  2. ↑ 1 2 3 Alekszandr Antipov. Hogyan védenek a webhelyek, vagy miért van szükség a WAF-ra? . www.securitylab.ru Letöltve: 2019. december 11. Az eredetiből archiválva : 2019. december 11.
  3. ↑ 1 2 3 A webalkalmazás-biztonsági (WAF) piac áttekintése Oroszországban és a világban . Anti-Malware.ru (2015. augusztus 12.). Letöltve: 2019. december 11. Az eredetiből archiválva : 2019. december 11.
  4. Kategória: OWASP Top Ten Project - OWASP (downlink) . www.owasp.org. Letöltve: 2019. december 11. Az eredetiből archiválva : 2019. december 1.. 
  5. ↑ 1 2 3 Dobozos webes alkalmazások biztonsága. A webalkalmazások tűzfalának belseje . Anti-Malware.ru (2015. október 5.). Letöltve: 2019. december 11. Az eredetiből archiválva : 2019. december 11.
  6. OWASP Top10 2017  // OWASP. Archiválva az eredetiből 2018. július 26-án.
  7. ↑ 12 Michael Cross . Fejlesztői útmutató a webalkalmazások biztonságához. ISBN 1-59749-061-X .
  8. PHP: SQL Injection – Kézi . www.php.net. Letöltve: 2019. december 12. Az eredetiből archiválva : 2019. december 18.
  9. Katy Anton, Jim Manico, Jim Bird. 10 kritikus biztonsági terület, amellyel a szoftverfejlesztőknek tisztában kell lenniük  // https://www.owasp.org  : útmutató a webes alkalmazások biztonságossá tételéhez. — 2018. Archiválva : 2019. december 12.
  10. Mi az, és hogyan lehet megakadályozni a törött hitelesítést és munkamenet-kezelést | OWASP Top 10 (A2)  (angol) . hdivsecurity.com. Letöltve: 2019. december 11. Az eredetiből archiválva : 2019. december 11.
  11. Cross Site Scripting Prevention OWASP Cheat Sheet Series . cheatsheetseries.owasp.org. Letöltve: 2019. december 12. Az eredetiből archiválva : 2019. december 19.
  12. ↑ 1 2 Top 10-2017 A3-Sensitive Data Exposure – OWASP . www.owasp.org. Letöltve: 2019. december 11. Az eredetiből archiválva : 2019. szeptember 19.
  13. Top 10-2017 A5-Broken Access Control - OWASP . www.owasp.org. Letöltve: 2019. december 13. Az eredetiből archiválva : 2019. december 23.
  14. Kategória: Az OWASP legjobb gyakorlatai: Webalkalmazások tűzfalainak használata/1.0.5-ös verzió - OWASP . www.owasp.org. Letöltve: 2019. december 11. Az eredetiből archiválva : 2016. november 7..
  15. Top 10-2017 Top 10 - OWASP . www.owasp.org. Letöltve: 2019. december 11. Az eredetiből archiválva : 2019. november 6..
  16. Carrie Roberts. Gyakorlati XML külső entitás sebezhetőségi képzési modul. — 2013.
  17. XML külső entitás (XXE) feldolgozása – OWASP . www.owasp.org. Letöltve: 2019. december 11. Az eredetiből archiválva : 2013. május 8..
  18. XXE (Xml eXternal Entity) – Nemzeti Könyvtár. N. E. Bauman . en.bmstu.wiki. Letöltve: 2019. december 11. Az eredetiből archiválva : 2019. december 11.
  19. Védekezés a nyers erejű támadások ellen . waf.pentestit.ru. Letöltve: 2020. november 15. Az eredetiből archiválva : 2020. november 18.
  20. Biztonsági fejlécek – OWASP . www.owasp.org. Letöltve: 2019. december 15. Az eredetiből archiválva : 2019. december 15.
  21. HttpOnly - OWASP . www.owasp.org. Letöltve: 2019. december 15. Az eredetiből archiválva : 2008. december 26..
  22. S. I. Makarenko. Információbiztonság: tankönyv egyetemistáknak.
  23. Nemesida WAF szabályok.bin . rlinfo.nemesida-security.com. Letöltve: 2019. december 12. Az eredetiből archiválva : 2019. december 11.
  24. Virtuális foltozás | Nemesida WAF (2017. szeptember 14.). Letöltve: 2019. december 11. Az eredetiből archiválva : 2019. december 11.
  25. A webhelyek védelmét szolgáló tűzfalak összehasonlítása (Web Application Firewall - WAF) . Anti-Malware.ru (2017. október 3.). Letöltve: 2019. december 11. Az eredetiből archiválva : 2019. december 11.
  26. ↑ Digital 2019 : A globális internethasználat felgyorsul  . Szociálisak vagyunk (2019. január 30.). Letöltve: 2019. december 12. Az eredetiből archiválva : 2019. december 14.