Ce să faceți dacă sunteți infectat cu spam SEO pe WordPress

Publicat: 2021-05-17

La Jetpack, tratarea diferitelor tipuri de amenințări și atacuri web face parte din rutina noastră. De cele mai multe ori, acesta variază de la colectarea unui fișier rău intenționat și găsirea vectorului de atac, până la furnizarea de asistență pentru restaurarea unui site web din cea mai recentă copie de rezervă. Dar uneori intrăm într-o dimensiune diferită a atacurilor cu adevărat creative, într-o dimensiune a reinfecțiilor inexplicabile - intrăm... în zona crepusculară.

Bine, probabil că sunt exagerat de dramatic, dar suportă-mă când pregătesc scena pentru această poveste de mister. Gata? Vă rugăm să fiți alături de mine în această călătorie în tărâmul fantomelor, spamului și motoarelor de căutare.

Comportamentul rău intenționat

Am găsit un site web care a fost supus unui atac foarte interesant. A apărut pentru prima dată ca un e-mail trimis de Google Search Console: o adresă URL neobișnuită (și una foarte suspectă, cu o adresă URL pe care se poate face clic în interior) a fost listată ca o pagină cu cea mai mare creștere.

Imagine care arată spam inserat într-o adresă URL
Cele mai populare pagini ale Instrumentului de căutare Google

Proprietarul site-ului a fost puțin supărat, deoarece un astfel de comportament este adesea rezultatul unei infecții, dar Jetpack nu i-a detectat sau avertizat despre nimic. În plus, aceste pagini nici nu existau pe site când au verificat, dar erau oricum indexate de Google. Zona crepusculară se intensifică .

Pe măsură ce am verificat dacă există fișiere suspecte pe care Jetpack Scan le-ar fi ratat (niciun instrument de securitate nu detectează 100% dintre amenințări), lucrurile au devenit și mai ciudate. WordPress Core și pluginurile au fost intacte: niciun fișier sau scripturi injectate în baza de date. Câteva plugin-uri învechite nu aveau nicio remediere de securitate, WordPress era cu o versiune în urmă (5.6), iar cea mai recentă actualizare nu a enumerat nicio remediere mare de securitate. Nu era nimic suspect. Fără suspecți obișnuiți, fără dovezi de atacuri; nu încă, oricum.

Următorul pas logic este verificarea jurnalelor de acces. Poate că ar putea arunca puțină lumină în acest mister. Am descoperi că ne confruntăm cu un atac de zi zero sau că am găsit în sfârșit o dovadă pentru teoria multiversului, iar acest site web este infectat doar în Universul #1337? La busteni!

Cod pentru o solicitare de spam
O cerere către acest spam ciudat
O altă solicitare ciudată de spam. De ce îi place lui Bing?
Se pare că și lui Bing îi place... Dar de ce?

După cum v-ați aștepta: nimic ciudat, în afară de o grămadă de solicitări către acele pagini de spam, așa cum puteți vedea în capturile de ecran. Și toți întorceau un „200 OK”. Așadar, pagina a existat undeva în continuumul timp și spațiu, sau... așteaptă o secundă... o vezi acum?

Toate acele pagini arătau către aceeași locație: `/?s=`, adică motoarele de căutare (problema a fost observată de Google, dar solicitările vin de la Bing) indexau paginile cu rezultatele căutării. De ce, mă rog? Crawler-ul nu efectuează căutări pe pagină, din câte știm, nu?

Paradoxul indexării

Elementele de bază ale modului în care funcționează un motor de căutare sunt destul de simple dacă sunteți în afacerea cu site-uri web. Există un robot (sau script automat) care accesează cu crawlere paginile web, își indexează conținutul, efectuează ceva magie și stochează resursele interogabile undeva în cloud.

Având în vedere asta, am săpat jurnalele puțin mai mult pentru a vedea dacă vreuna dintre aceste solicitări avea vreun alt indiciu, cum ar fi un referrer, dar nu a avut noroc. Toate cererile înregistrate proveneau de la motoarele de căutare. Din fericire, Google Search Console avea una dintre paginile de referință într-unul dintre jurnale.

Revizuirea paginii din Google Search Console
Instrumentul Google Search Console ne-a oferit câteva indicii.

Acum cred că este timpul să schimbăm pălăria noastră Twilight Zone cu o pălărie CSI și să scoatem niște oase ale site-ului web pentru a le pune la microscop.

Pentru ochiul instruit, este ușor de observat că adresa URL a paginii de referință a aparținut unui site web compromis; din fericire, avem ochi bine antrenați! Directorul `index.php` nu are sens și probabil a fost adăugat pentru a deruta proprietarul site-ului. Apoi, este urmat de un alt director aleator și de un fișier PHP cu un nume aleator, care este probabil un încărcător care primește sarcina utilă finală: `cargese4/cca442201.htm`, care este, de asemenea, aleatoriu. Toate acestea sunt caracteristici ale unei infecții malware din fermă de legături.

O căutare rapidă pe Google pentru a vedea ce a fost indexat pentru site-ul de trimitere a confirmat că acesta a fost într-adevăr infectat și a difuzat spam SEO pentru o perioadă. Site-ul este pentru o companie alimentară din India, dar oferă oferte pentru SUV-uri în Japonia - da, asta este spam.

Rezultatele căutării japoneze pentru atacul de spam
Interogare de căutare care aduce spam în japoneză pe site-urile indiene.

Însă, niciunul dintre rezultate nu a fost legat de site-ul prietenului nostru, așa că am decis să aflu dacă alte site-uri au fost afectate de același comportament ciudat.

Pentru a căuta mai multe victime ale acestui atac de spam, doar în scopuri educaționale, am folosit cunoștințele noastre Google-fu pentru a crea o interogare de căutare care ar returna site-uri care se termină cu .edu, care aveau `/?s=` în adresa URL, și cuvântul „cumpără” din titlu. Și am obținut 22 de rezultate. Ceea ce este suficient pentru vânătoarea noastră.

Rezultatele căutării pentru pastile spam
Folosind site-urile .edu și .gov pentru a verifica infecția cu spam, filtrează domeniile (cum ar fi .com) care au fost create numai pentru link farming.

Aceasta este o dovadă că site-ul raportat nu a fost singurul afectat; pare a fi o problemă mai răspândită. Ne-am gândit la ce ar fi putut face Google să indexeze acele pagini. Cum a ajuns Googlebot la ei? Următorul pas: verificatori de backlink.

Rezultatele unei verificări de backlink
Rezultatele unei verificări de backlink

Există mai multe instrumente online care oferă rapoarte privind backlink-urile către site-uri web; cel pe care l-am folosit în această cercetare a fost Ahrefs, dar alte instrumente pot ajunge la aceleași rezultate. Unele dintre paginile de căutare rău intenționate sunt enumerate în rezultate, confirmând că am fost pe calea cea bună.

Selectând unul dintre aceste site-uri web pentru a verifica ce se întâmplă, am văzut aproape 5.000 de comentarii spam, așa cum puteți vedea în următoarea captură de ecran (ar trebui să verifice Jetpack Anti-spam). Fiecare comentariu trimitea către o pagină de căutare a unui site web cu spam în interogare.

Secțiunea de comentarii trimite la rezultatele spamului
Comentarii care trimit spre spam

Prinderea iepurelui alb

După cum am menționat anterior, roboții motoarelor de căutare nu efectuează interogări pe paginile site-urilor web. Dar, dacă găsește un link către el, va fi urmărit. Și dacă pagina nu spune scriptului automat că o anumită pagină nu este indexabilă, o va adăuga.

Exemplu de spam injectat
Voi ați injectat spam

Aceasta este o metodă inteligentă de „injectare” de spam pe un site web pentru a trimite spam rezultatelor motoarelor de căutare și pentru a crește rangul paginii site-ului printr-un link farming cu efort redus.

Acum că înțelegem problema, cum le spunem roboților motoarelor de căutare să evite să urmărească link-uri către paginile de căutare (sau să refuze pur și simplu să le indexeze)? Cea mai bună modalitate ar fi să faceți o modificare la WordPress Core, ceea ce ar ajuta la protejarea întregii comunități (dacă doriți să raportați un bug sau doriți să contribui cu codul, vă rugăm să ni se alăture).

Pentru a evita unele reluări inutile, am verificat WordPress Core trac și am găsit această problemă care a fost rezolvată pe versiunea 5.7, dar, din păcate, nu a ajuns în jurnalul de modificări ca o problemă de securitate.

Voi cita autorul, care a descris problema mai bine decât am putut (mulțumesc abagtcs pentru raport):

Spammerii web au început să abuzeze de funcțiile de căutare ale acelor site-uri, trimițând termeni de spam și nume de gazdă, în speranța de a crește clasamentul de căutare a site-urilor spammerilor.

Spammerii plasează aceste link-uri în wiki-uri deschise, comentarii de blog, forumuri și alte ferme de linkuri, bazându-se pe motoarele de căutare care le accesează cu crawlere și apoi vizitează și indexează paginile rezultate ale căutării cu conținut spam.

Acest atac este surprinzător de răspândit, afectând multe site-uri web din întreaga lume. Deși unele CMS și site-uri alimentate cu cod personalizat pot fi vulnerabile la această tehnică, pe baza unei investigații preliminare, se pare că – cel puțin în spațiul .edu – cea mai țintită platformă web este WordPress.”

Acest lucru nu este surprinzător când mai mult de 41% dintre cele mai mari site-uri de pe web sunt site-uri WordPress.

Închiderea cazului

Există câteva lecții bune de învățat din acest incident:

  1. Adresa URL prezentată în Top Growing Pages nu este bine igienizat, așa că adresele URL de spam pe care le vedeți separate de emoji-uri sunt de fapt direct pe care se poate face clic (bună, prieteni Google, asta vă revine); utilizatorii neștiuți ar putea să facă clic pe ele și să acceseze conținut nedorit.
  2. Google are nevoie de unele modificări pentru a evita indexarea paginilor în mod clar spam. Pe baza raportului instrumentului, unele pagini clare au fost accesate cu crawlere și nu au fost indexate, în timp ce a fost adăugat spam.
  3. Atacatorii vor folosi chiar și cea mai mică deschidere a sistemului dvs. și trebuie să fim vigilenți în orice moment.
  4. Ascultați întotdeauna oamenii și înțelegeți-le problemele. Dacă am verifica doar jurnalele din propriile noastre instrumente, nu am fi conștienți de această problemă și nici nu am fi capabili să ajutăm la remedierea site-ului lor.
  5. Țineți-vă software-ul la zi. Mereu.

La Jetpack, muncim din greu pentru a ne asigura că site-urile dvs. sunt protejate de aceste tipuri de vulnerabilități. Pentru a fi cu un pas înaintea oricăror noi amenințări, consultați Jetpack Scan, care include scanarea de securitate și eliminarea automată a programelor malware.

Și un pont de pălărie lui Erin Casali pentru că a evidențiat această problemă și a ajutat la anchetă.