Tworzysz stronę internetową i potrzebujesz pomocy?

Od kilku lat formularz dodawania komentarzy m.in. na stronie Webinsider.pl chroni wtyczka, która dodaje standardowo niewidzialne pole pułapkę (honeypot) na różnej maści skrypty (roboty/boty) rozsyłające za pomocą komentarzy SPAM. Wszystko działa sprawnie, ale od pewnego czasu obserwuję pewien skrypt, który zdaje się radzić sobie z tym zabezpieczeniem, zupełnie tak jakby, przetwarzał kod JavaScript, który zazwyczaj jest wykorzystywany w tego typu zabezpieczeniach. Dlatego uznałem, że krok na kolejny element układanki, tym razem na wyższym poziomie, bo już jakby DNSów…

Eliminacja SPAMu w komentarzach w WordPressie za pomocą Cloudflare WAF

Postanowiłem wykorzystać to, że większość stron i tam mam “schowanych” za usługą Cloudflare, a tam wśród licznym funkcji jest WAF (Web Application Firewall), dzięki czemu można odpowiednio przyciąć nieporządny ruch na komentarzach. Oczywiście w sposób w większości przypadków niewymagający od użytkownika (komentującego) jakichkolwiek działań dodatkowych, takich jak np. rozwiązywanie różnych “graficznych zagadek”, czy przepisywania szlaczków udających literki.

Tak więc będąc w widoku ustawień wybranej domeny przechodzimy do zakładki “firewall rules” w sekcji WAF (Security -> WAF -> Firewall rules):

W tym miejscu możemy dodać nową regułę, która będzie aktywna w momencie, gdy ktoś zachce kliknąć przycisk, dodający komentarz na naszej stronie:

Nazwa bez znaczenia, choć warto nadać taką, by później było wiadomo, co ta reguła robi. Ważne, by odpowiednio ustawić następne pola:

  • Field: URI Path
  • Operator: contains
  • Value: wp-comments-post.php

Co da regułę w stylu:

(http.request.uri.path contains "wp-comments-post.php")

Dalej musimy wybrać akcję, która ma się w takiej sytuacji zadziać. Jeszcze kilka dni temu byłaby to akcja “JS Challenge”, z której sam korzystałem. Jednak 1 kwietnia na blogu Cloudflare pojawiła się informacja, o pewnych zmianach w mechanizmie (mechanizmach) CAPTCHA wykorzystywanych (dostępnych) w Cloudflare. Stąd obecnie zaleca się wybrać opcję “Managed Challenge”.

Teoretycznie można by do tego wykorzystać zasady stron (page rusles) w Cloudflare, ale tam wśród działań nie znajdziemy opcji pozwalającej skierować ruchu na potencjalne wyzwanie (jest tylko opcja “I’m Under Attack!”, a to nie do końca to samo).

(!) Zgłoś błąd na stronie | Lub postaw nam kawę :-)
LUTy dla D-Cinelike (DJI Mini 3 Pro, DJI Avata, OSMO Pocket) od MiniFly
Wdrożenie Omnibusa w sklepie na WooCommerce
Jak (legalnie) latać dronem w Kategorii Otwartej
Kurs "WordPress: Pierwsze kroki" (bezpłatna lekcja)
Patryk
Kurs "WordPress: Pierwsze kroki" (bezpłatna lekcja)