1. Home
  2. Tekninen
  3. Web-sovellusten palomuuri – WAF

Web-sovellusten palomuuri – WAF

Web-sovellusten palomuuri – WAF (Web Application Firewall) on turvajärjestelmä, joka on suunniteltu valvomaan, suodattamaan ja suojaamaan verkkosovelluksia estämällä haitallisen HTTP/S-liikenteen. Se toimii suojana verkkosovelluksen ja ulkoisten uhkien välillä ja auttaa suojaamaan sovellusta yleisiltä kyberhyökkäyksiltä ja haavoittuvuuksilta.

Zone-palvelinalusta käyttää ModSecurity ja OWASP ModSecurity Core Rule Set (CRS) -palomuurisääntöjä, jotka voidaan aktivoida myös My Zone -hallintapaneelin kautta.

Web-sovellusten palomuuri WAF aktivoidaan tai muuttaaksesi sen asetuksia, sinun on ensin kirjauduttava My Zone -ohjauspaneeliin.
Napsauta avautuvalla sivulla Webhotelli osiossa virtuaalipalvelimen nimeä:

Web-sovellusten palomuuri WAF aktivoidaan tai muuttaaksesi sen asetuksia, sinun on ensin kirjauduttava My Zone -ohjauspaneeliin.

Valitse Webhotellin hallintasivun valikosta: VerkkopalvelinPääverkkotunnuksen asetukset (tai Aliverkkotunnukset) > Muokkaa.

HUOM!

Itse isännöintipalvelimella on ModSecurity-ydinsäännöt aina aktiiviset ja ne vaikuttavat aina jokaisen web-palvelimen virtuaaliseen isäntään/verkkoalueeseen – vaikka WAF:n esto olisi pois päältä niiden asetuksista.

WAF estetyt pyynnöt

ModSecurityn estämät pyynnöt saavat web-palvelimelta vastauksen tilakoodilla “403 Forbidden”.
Voit tarkistaa, onko HTTP-pyyntö estetty verkkoselaimen DevTools-työkalulla (se voidaan avata painamalla F12-näppäintä). Siirry siinä Network-välilehteen, poista välimuisti (Disable cache) käytöstä ja valitse kaikki pyyntötyypit (All):

Web-sovellusten palomuuri - Voit tarkistaa, onko HTTP-pyyntö estetty verkkoselaimen DevTools-työkalulla (se voidaan avata painamalla F12-näppäintä). Siirry siinä Network-välilehteen, poista välimuisti (Disable cache) käytöstä ja valitse kaikki pyyntötyypit (All):

Toista sitten verkkoselaimessa toiminto, joka epäonnistui aiemmin, ja sivun latauksen jälkeen etsi pyyntö, jonka tila on “403”:

ModSecurityn estämät pyynnöt kirjataan Apache-verkkopalvelimen virhelokitiedostoon apache.ssl.error.log, joka sijaitsee logs -hakemistossa.

Etsi tiedostosta sana “ModSecurity” ja yhdistä pyynnön aika epäonnistuneen toiminnan aikaan. Tarkista löydetyltä lokiriviltä, ​​että DevTools-ikkunassa näkyvä estetyn pyynnön URI on sama lokirivin “uri”-parametrissa. ModSecurity-säännön numero näkyy “id”-parametrissa:

[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"]

Apache-verkkopalvelimen lokin aikavyöhyke on UTC (+00:00).

Sääntöjen valikoiva käytöstä poistaminen

Voit poistaa valitut säännöt käytöstä lisäämällä seuraavan Apache-ohjelohkon.

Apache-komentolohko voidaan lisätä My Zone -hallintapaneelin kautta Webhotelli -sivulla vastaavan pää- tai aliverkkotunnuksen virthost-asetusten alle.

Voit tehdä tämän valitsemalla valikosta: Verkkopalvelin > Pääverkkotunnuksen asetukset (tai Aliverkkotunnukset).
Paina alaosiossa “HTTPS – domain.tld” (jossa domain.tld on vastaavan virhostin verkkotunnus, jolle lisäys on tehtävä): Muokkaa > Apache-direktiivit >Lisää direktiiviryhmä.

ModSecurityn sääntönumerot on erotettava välilyönnillä. Valikoiman numerot on kirjoitettava lainausmerkkeihin ja erotettava yhdysmerkillä.

<IfModule mod_security2.c>
    # Disable rules that interfere with the work of the website
    SecRuleRemoveById 123456 "123460-123470"
</IfModule>
Esimerkkikomento sääntönumeroiden etsimiseksi SSH:n kautta

ModSecurity-sääntönumerot löytyvät nopeasti SSH:n kautta logs -hakemistossa sijaitsevasta Apachen virhelokitiedostosta.
Vaihta komennossa aika, jolloin ongelma ilmeni, mieluiten minuuttitarkkuudella, jotta vain tarvittavat säännöt poistetaan käytöstä.

Apache-lokitiedostojen aikavyöhyke on  UTC (+00:00).

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

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

 

Updated on 17. Dec 2024
Was this article helpful?

Related Articles