1. Home
  2. Tehniline
  3. WAF – veebirakenduse tulemüür

WAF – veebirakenduse tulemüür

Zone serveri platvormil on kasutusel ModSecurity ja Minu Zone haldusliidese kaudu on võimalik ka OWASP ModSecurity Core Rule Set (CRS) tulemüüri reegleid aktiveerida.

WAF tulemüüri aktiveerimiseks või seadistuste muutmiseks, tuleb esmalt sisse logida teenuste halduskeskkonda Minu Zone.
Avanevalt lehelt kliki alamjaotuses Veeb ja E-post virtuaalserveri nimel:

Halda virtuaalserverit

Tulemüüri häälestus asub Veebiserver alammenüüs Peadomeeni seaded, HTTPS’i all.
Kui soovid muuta alamdomeeni WAF’i seadeid, vali jaotus Alamdomeenid

Tähelepanu!

Veebimajutusserveril endal on ModSecurity tuumikreeglid alati aktiveeritud ja need  omavad mõju Virtuaalserveri igale virthostile/domeenile – ka siis kui nende seadistuses on WAF’i jaoks päringute blokeerimine välja lülitatud.

Blokeeritud päringud

ModSecurity poolt blokeeritud päringud saavad veebiserverilt vastuseks staatuskoodi “403 Forbidden”.
Kontrollida, kas HTTP-päring sai blokeeritud, saab veebisirvija tööriista DevTools kaudu (selle saab avada klahviga F12). Minna selles Network vahelehele, keelata puhvri kasutamine ja märkida nähtavaks kõik päringutüübid:

DevTools

Seejärel korrata veebisirvijas tegevust, mis ebaõnnestus ja otsida DevTools’ist päringut staatusega “403”, mis on enamasti on Doc või XHR tüüpi:

DevTools - blokeeritud päring

ModSecurity poolt blokeeritud päringud logitakse veebiserveri Apache error logifaili apache.ssl.error.log, mis asub virtuaalserveri kataloogis logs.
Sellest tuleb otsida ebaõnnestunud päringu tegemise aja järgi ridasi sõna “ModSecurity” järgi. Leitud logireast kontrollida, et blokeeritud päringu URI, mis on näha DevTools aknas, oleks sama ka logirea “uri” parameetris. ModSecurity reegli number on kirjas parameetris “id”:

[2023-01-01 00:00:00.123456] [vhost: domain.tld] [security2:error] [pid: 12345] [client 1.2.3.4] ModSecurity: Warning. Operator GE matched 5 at TX:inbound_anomaly_score. [id "123456"] [msg "Inbound Anomaly Score Exceeded (Total Inbound Score: 5 - SQLI=0,XSS=5,RFI=0,LFI=0,RCE=0,PHPI=0,HTTP=0,SESS=0): individual paranoia level scores: 5, 0, 0, 0"] [hostname "domain.tld"] [uri "/wp-admin/admin-ajax.php"]

Veebiserveri logide ajavööndiks on UTC ehk +00:00.

Reeglite valikuline välja lülitamine

Reeglite välja lülitamiseks tuleb lisada selle jaoks järgmine plokk Apache direktiivina.

Apache direktiiviploki saab lisada Minu Zone halduse kaudu, Veebiserveri haldamise leheküljel, vastava pea- või alamdomeeni virthosti seadete alt.

Selleks valige menüüst: Veebiserver > Peadomeeni seaded (või Alamdomeenid).
Vajutage alamjaotuses “HTTPS – domain.tld” (kus domain.tld on vastava virthosti domeeninimi, mille jaoks on vaja lisamine teha): Muuda > Apache direktiivid > Lisa direktiiviplokk.

Reeglite numbrid tuleb eraldada tühikuga. Vahemiku numbrid tuleb lisada jutumärkidesse ja eraldada sidekriipsuga.

<IfModule mod_security2.c>
    # Veebilehe tööd takistavate reeglite välja lülitamine
    SecRuleRemoveById 123456 "123460-123470"
</IfModule>
Näidiskäsk SSH kaudu reeglite numbrite välja otsimiseks

SSH kaudu saab kiiresti välja otsida ModSecurity reeglite numbrid Apache error logifailist, mis asub kataloogis logs.
Käsus asendada aeg selle ajaga, millal probleem esines, soovitatavalt minuti täpsusega, et ainult vajalikud reeglid välja lülitada. Apache veebiserveri logide ajavöönd on UTC ehk +00:00.

# Täispikad read
grep -E '^\[2023-01-01 00:0' apache.ssl.error.log | grep ModSecurity | grep -E '\[id "[0-9]+"\]'

# Ainult reeglite numbrid
grep -E '^\[2023-01-01 00:0' apache.ssl.error.log | grep ModSecurity | grep -Eo '\[id "[0-9]+"\]' | sort | uniq

Täpsemalt loe Zone blogist: WAF ehk veebirakenduse tulemüür 

Updated on 26. nov. 2023

Was this article helpful?

Related Articles