BBQ:Blocați interogări greșite WordPress Plugin Review

Publicat: 2014-01-30

BBQ:Block Bad Queries este un paravan de protecție pentru aplicații web WordPress care blochează cererile HTTP rău intenționate

Există multe pluginuri de securitate WordPress disponibile, dar doar câteva abordează corect securitatea WordPress și vă ajută să vă protejați instalarea WordPress de atacurile hackerilor rău intenționați.

Unul dintre aceste plugin-uri este BBQ: Block Bad Queries. Acest plugin este ca un firewall de aplicație web WordPress extrem de personalizabil, dar simplu și fără întreținere, pe care fiecare administrator și manager WordPress ar trebui să îl instaleze.

Această postare de securitate WordPress explică:

  • Cum funcționează pluginul BBQ:Block Bad Queries
  • Cum să personalizați pluginul BBQ:Block Bad Queries
    • Modificarea/adăugarea modelelor pentru a fi blocate
    • Blocați vizitatorii folosind un anumit șir User Agent
    • Configurarea unui număr maxim de caractere permis în solicitările HTTP
  • Cum să testați grătarul: blocați interogările necorespunzătoare și personalizările dvs

Cum funcționează pluginul WordPress BBQ:Block Bad Queries

Pluginul BBQ:Block Bad Queries analizează fiecare solicitare trimisă către WordPress înainte ca aceasta să fie executată de nucleul WordPress. În cazul în care cererea este rău intenționată, pluginul interzice vizitatorului să acceseze o astfel de resursă, răspunzând cu un cod de stare HTTP 403, acces interzis.

Lista implicită de blocuri de tipare rău intenționate Block Bad Queries nu numai că vă va proteja WordPress de atacurile WordPress vizate, dar vă va proteja și WordPress de potențialele vulnerabilități zero day și alte atacuri tipice, cum ar fi Cross-site scripting, SQL Injection și traversarea directoarelor. Prin urmare, dacă instalați BBQ:Block Bad Queries, hackerii rău intenționați tot nu pot exploata vulnerabilitățile cunoscute dacă rulați o instalare, un plugin sau o temă WordPress vulnerabilă (veche).

Sfat de securitate WP White : Chiar dacă rulați BBQ:Block Bad Queries, ar trebui să rulați în continuare cele mai recente și mai sigure versiuni de WordPress, pluginuri și teme. Pluginul WordPress BBQ ar trebui folosit ca un strat suplimentar de securitate, mai degrabă decât pentru a închide găurile de securitate existente.

Personalizarea BBQ:Block Bad Queries Plugin

În mod implicit, Block Bad Queries nu necesită personalizări sau modificări de configurare, dar există întotdeauna excepții de la reguli. În cazul în care trebuie să personalizați BBQ:Block Bad Queries, iată o explicație a ceea ce puteți personaliza. Pentru început, scanează trei părți din fiecare solicitare care este trimisă la o instalare WordPress:

URI de solicitare: adresa URL solicitată de utilizator, de exemplu https://www.wpwhitesecurity.com/wordpress-security/

Query String : șirul de interogare inclus cu adresa URL, de exemplu https://www.wpwhitesecurity.com/wordpress-security/?query_string=1

Șir de agent utilizator : șirul de agent de utilizator este trimis automat de la software-ul client care accesează WordPress pentru a se identifica. De exemplu, Google Chrome utilizează următorul șir de agent de utilizator:

Mozilla/5.0 (Windows NT 6.2; Win64; x64) AppleWebKit/537.36 (KHTML, ca Gecko) Chrome/32.0.1667.0 Safari/537.36

Toate modelele utilizate de obicei în cererile rău intenționate sunt stocate în trei matrice în plugin și numele lor se explică de la sine:

  • $request_uri_array
  • $query_string_array
  • $user_agent_array

BBQ:Block Bad Queries nu are interfață de configurare. Prin urmare, dacă doriți să faceți modificări așa cum este explicat în exemplele de mai jos, trebuie să editați codul din fișierul plugin php.

Modificarea solicitărilor HTTP pe care pluginul BBQ:Block Bad Queries ar trebui să le blocheze

Dacă doriți să blocați un anumit tip de șir de interogare, adăugați modelul de șir de interogare la matricea $query_string_array. Odată ce adăugați un model nou, testați-l pentru a vă asigura că nu blocați cererile legitime. Urmează un exemplu de sintaxă:

$query_string_array  = apply_filters( 'query_string_items',  array( 'PATTERN_1', 'PATTERN_2', 'PATTERN_3');

Notă: Fiecare model pe care îl adăugați trebuie declarat între ghilimele simple (') și separat de celelalte modele cu un simbol virgulă (,).

Blocarea vizitatorilor cu un anumit agent de utilizator din WordPress

Pentru a bloca vizitatorii care folosesc un anumit agent utilizator, cum ar fi boții automati de viruși și malware, adăugați șirul agentului lor de utilizator în $user_agent_array.

Configurarea unei limite maxime de lungime URL pentru WordPress

Prin limitarea numărului de caractere care pot fi folosite într-o solicitare HTTP, vă puteți proteja instalarea WordPress de atacurile zero day și de alte câteva atacuri rău intenționate. Atacurile Zero Day sunt vulnerabilități software care sunt exploatate de hackeri rău intenționați, dar nu sunt încă cunoscute de furnizorul de software, prin urmare nu există încă nici un patch.

Majoritatea atacurilor de aplicații web rău intenționate folosesc adrese URL lungi pentru a exploata vulnerabilitățile cunoscute. Prin urmare, dacă limitați numărul de caractere care pot fi utilizate într-o solicitare HTTP, vă protejați automat instalarea WordPress de astfel de atacuri.

Limitând numărul de caractere utilizate într-o adresă URL, este posibil să blochezi și cererile legitime. Prin urmare, înainte de a activa această caracteristică de securitate, verificați care este lungimea celei mai lungi adrese URL pe care o aveți în instalarea dvs. WordPress (inclusiv în secțiunea pagini de administrare WordPress (/wp-admin/).

Pentru a activa și configura o lungime maximă a adresei URL, decomentați (prin ștergerea „//”) linia de cod de mai jos din plugin și specificați numărul maxim de caractere pe care îl poate conține o solicitare HTTP. Valoarea implicită a pluginului este 255, după cum se arată mai jos.

strlen( $_SERVER['REQUEST_URI'] ) > 255 ||

Testarea aplicației dvs. web WordPress Firewall

Odată ce ați instalat pluginul WordPress BBQ:Block Bad Queries, executați mai multe teste solicitând lista de mai jos cu exemple de URL-uri pentru a vă asigura că funcționează (înlocuiți some_site.com cu domeniul dvs.):

  • http://www.some_site.com/../../../etc/passwd
  • http://www. some_site.com/path/?q=%00
  • http://www. some_site.com/path/base64_

Dacă pluginul funcționează corect, serverul ar trebui să răspundă cu un cod de stare HTTP de 403 interzis la solicitarea unor astfel de adrese URL. Solicitarea de mai sus sunt doar exemple de URL care ar trebui blocate de pluginul BBQ:Block Bad Requests. Puteți rula alte câteva teste utilizând solicitări utilizate de obicei în atacurile de hacking din viața reală.

Testarea pluginului BBQ:Block Bad Queries cu Fiddler

Dacă nu sunteți sigur care este răspunsul serverului atunci când trimiteți solicitări HTTP rău intenționate, puteți confirma răspunsul utilizând proxy Fiddler.

După cum se evidențiază în captura de ecran de mai jos, în acest test am solicitat adresa URL https://www.wpwhitesecurity.com/contact/base64_ și putem confirma că serverul răspunde cu un răspuns HTTP 403 Interzis.

Testarea grătarului: pluginul WordPress Block Requests Bad cu Fiddler

Block Bad Queries Plugin – Un firewall pentru aplicații web pentru WordPress

Iată-l! Dacă ați căutat un firewall de aplicație web foarte personalizabil și puternic pentru blogurile și site-urile dvs. WordPress, instalați pluginul BBQ:Block Bad Queries și uitați de el. Puteți descărca BBQ:Block Bad Queries din depozitul de pluginuri WordPress sau puteți cumpăra versiunea PRO de aici.

Dacă, pe de altă parte, preferați ceva care nu are nevoie de nicio configurație și care face, de asemenea, scanare malware, aș recomanda Malcare malware scanner.