Do budoucna se samozřejmě může stát (a bude se stávat, věřte mi), že se aplikace opět s ModSecurity „nepohodne“ a vy se setkáte s oznámením Access denied (nebo podobným hlášením). V takovém případě nepropadejte panice a použijte následující postup:
Chápu, že je to napsané s ohledem na cílové publikum tohoto článku. Nebudu teď řešit, jestli má smysl, aby naprostí laici používali WAF – je to podle mne podobné, jako používat osobní firewall.
Nicméně mělo by zaznít, že v prostředích, kde se skutečně řeší bezpečnost, je nesmysl jen tak vypnout nějaké bezpečnostní pravidlo. Muselo by se analyzovat, co přesně problém způsobilo, tedy zjistit, zda byl problém v pravidle nebo v aplikaci, a pak to na správném místě opravit. V článku se totiž automaticky předpokládá, že chyba je v pravidle WAF – WAF se ale nasazuje proto, že se předpokládá, že chyba může být v aplikaci. Ano, ve skutečnosti chyba bude většinou na straně WAF, ale pokud všechna kolizní pravidla bez analýzy vypnete, nemusíte WAF mít vůbec. (Jen pro jistotu – na tu kolizi obvykle nepřijde správce WAF, ale někdo jiný. Pokud při každé kolizi příslušné pravidlo automaticky vypnete, vypnete ho i v případě, kdy na kolizi v prvním kole narazí útočník.)
Také by bylo dobré zmínit, že WAF je druhá úroveň zabezpečení. Záměrně se tedy na komunikaci dívá úplně jiným způsobem, než aplikace. Takže je pravda, že může odhalit třeba i SQL injection udělanou způsobem, která autory aplikace vůbec nenapadl. Ale zároveň spoustu triviálních chyb vůbec neodhalí. Takže v žádném případě nelze WAF používat způsobem, že máte nebezpečnou aplikaci a před ní postavíte WAF, aby útoky odchytil.