SITE-URI

Atacurile wp2shell vizează site-uri WordPress: cum verifici și protejezi site-ul

Atacurile wp2shell exploatează două vulnerabilități critice din WordPress Core. Verifică versiunea instalată, conturile de administrator, pluginurile și fișierele suspecte.

Acțiune urgentă: actualizează WordPress la versiunea 6.8.6, 6.9.5, 7.0.2 sau la o versiune ulterioară disponibilă pentru ramura utilizată. După actualizare, verifică dacă site-ul a fost deja compromis.

Ce este wp2shell?

wp2shell este numele atribuit unui lanț de vulnerabilități descoperit în WordPress Core. Problemele de securitate sunt urmărite prin identificatorii CVE-2026-63030 și CVE-2026-60137.

Combinate, vulnerabilitățile pot permite unui atacator neautentificat să execute cod pe anumite versiuni WordPress. Atacul nu depinde de instalarea unui plugin vulnerabil, deoarece problemele sunt prezente în nucleul WordPress.

După publicarea unui cod demonstrativ, cercetătorii au observat scanări automate și încercări de exploatare îndreptate către numeroase site-uri WordPress.

Ce versiuni WordPress sunt afectate?

Conform informațiilor tehnice publicate, versiunile sunt împărțite astfel:

  • WordPress 6.8.0–6.8.5: afectate de vulnerabilitatea SQL injection; problema este corectată în versiunea 6.8.6.
  • WordPress 6.9.0–6.9.4: expuse întregului lanț de atac; problema este corectată în versiunea 6.9.5.
  • WordPress 7.0.0–7.0.1: expuse întregului lanț de atac; problema este corectată în versiunea 7.0.2.

O versiune mai nouă decât cele menționate trebuie preferată dacă este disponibilă și compatibilă cu site-ul.

Important: faptul că site-ul este actualizat acum nu demonstrează că acesta nu a fost compromis înainte de instalarea actualizării.

1. Verifică versiunea WordPress

În panoul WordPress intră la Dashboard → Updates. Versiunea instalată este afișată și în partea de jos a paginilor din administrare.

Dacă ai acces la WP-CLI, poți folosi:

wp core version

Dacă apare una dintre versiunile vulnerabile, efectuează imediat o copie de siguranță și instalează actualizarea de securitate.

2. Actualizează WordPress Core

Actualizarea poate fi instalată din Dashboard → Updates. Înainte de actualizare, salvează baza de date și fișierele site-ului într-o locație separată.

Prin WP-CLI poți utiliza:

wp core update

După actualizare, verifică din nou versiunea:

wp core version

Nu amâna instalarea actualizării doar pentru că site-ul folosește un firewall. Regulile WAF reduc riscul, dar nu înlocuiesc actualizarea WordPress.

3. Verifică administratorii WordPress

Atacatorii au fost observați creând conturi noi cu rol de administrator. Intră la Users → All Users și filtrează lista după rolul Administrator.

Prin WP-CLI poți afișa administratorii astfel:

wp user list --role=administrator

Verifică atent:

  • conturile pe care nu le recunoști;
  • adresele de email modificate;
  • administratori creați recent;
  • nume asemănătoare cu cele ale conturilor legitime;
  • conturi care nu mai sunt folosite.

Nu șterge imediat un cont suspect înainte să păstrezi informațiile necesare investigării. Notează ID-ul, adresa de email și data înregistrării, apoi elimină accesul neautorizat.

4. Caută pluginuri necunoscute

În campaniile observate au fost încărcate pluginuri false și fișiere PHP folosite pentru controlul site-urilor compromise.

Intră la Plugins → Installed Plugins și verifică orice extensie pe care nu ai instalat-o. Acordă atenție pluginurilor apărute recent sau celor care încearcă să pară instrumente de securitate.

Un nume menționat în rapoartele de securitate este CMSmap. Prezența unui plugin cu acest nume trebuie investigată imediat, dar nu presupune că toate fișierele malițioase vor folosi aceeași denumire.

Prin WP-CLI poți afișa pluginurile instalate:

wp plugin list

Compară lista cu pluginurile pe care știi că le folosește site-ul.

5. Verifică integritatea fișierelor WordPress

Dacă ai WP-CLI, verifică fișierele WordPress Core:

wp core verify-checksums

Comanda compară fișierele nucleului cu versiunile oficiale. Fișierele modificate sau necunoscute trebuie analizate.

Verifică în special:

  • fișiere PHP noi din rădăcina site-ului;
  • fișiere necunoscute din wp-admin și wp-includes;
  • fișiere PHP din directorul wp-content/uploads;
  • pluginuri adăugate recent;
  • modificări suspecte în wp-config.php;
  • cod necunoscut introdus în fișierele temei active.

Directorul uploads conține în mod normal imagini și documente. Prezența unor fișiere PHP în acest director trebuie verificată cu atenție.

6. Verifică jurnalele de acces

Caută în jurnalele serverului cereri către endpointul REST batch:

/wp-json/batch/v1
?rest_route=/batch/v1

Nu orice accesare a acestor adrese reprezintă automat un atac, dar cererile numeroase, provenite de la IP-uri necunoscute, trebuie investigate.

Verifică și:

  • cereri POST neobișnuite;
  • autentificări în administrare de la IP-uri necunoscute;
  • încărcări de fișiere efectuate în afara activității normale;
  • modificări produse imediat după cererile către API;
  • crearea unor utilizatori administratori.

7. Schimbă parolele și cheile de securitate

Dacă site-ul a rulat o versiune vulnerabilă după apariția exploatărilor publice, schimbă parolele pentru:

  • administratorii WordPress;
  • contul cPanel;
  • FTP și SFTP;
  • SSH;
  • baza de date;
  • conturile de email asociate site-ului.

Regenerează cheile de securitate WordPress. Cu WP-CLI poți folosi:

wp config shuffle-salts

Această operațiune invalidează sesiunile existente și obligă utilizatorii să se autentifice din nou.

8. Ce poți face dacă actualizarea nu este posibilă imediat?

Cea mai sigură rezolvare rămâne actualizarea WordPress. Ca măsură temporară, un firewall pentru aplicații web poate bloca accesul neautentificat către:

/wp-json/batch/v1
rest_route=/batch/v1

Ambele variante trebuie luate în considerare. Blocarea numai a adresei care începe cu /wp-json poate lăsa disponibilă ruta transmisă prin parametrul rest_route.

Blocarea API-ului REST poate afecta editorul, pluginurile, aplicațiile mobile și integrările externe. Măsura trebuie testată și folosită numai temporar.

9. Ce faci dacă găsești semne de compromitere?

Dacă descoperi administratori necunoscuți, pluginuri suspecte, web shell-uri sau fișiere modificate, simpla ștergere a unui fișier nu este suficientă.

  1. Restricționează temporar accesul public la site.
  2. Păstrează o copie a fișierelor și jurnalelor pentru analiză.
  3. Schimbă toate parolele și cheile de acces.
  4. Înlocuiește WordPress Core cu o copie oficială curată.
  5. Reinstalează pluginurile și temele din surse oficiale.
  6. Verifică baza de date și conturile de utilizator.
  7. Actualizează toate componentele.
  8. Monitorizează site-ul după repunerea online.

Pentru un magazin, un site cu date personale sau o compromitere confirmată, este recomandată analiza unui specialist în securitate.

Actualizarea automată este suficientă?

Actualizările automate au redus numărul site-urilor expuse, dar nu trebuie să presupui că instalarea s-a realizat cu succes. Verifică manual versiunea activă.

De asemenea, actualizarea nu elimină automat conturile, pluginurile sau fișierele malițioase instalate înainte de remediere. Site-urile care au fost vulnerabile trebuie verificate chiar dacă acum rulează o versiune sigură.

Concluzie

wp2shell este o problemă critică deoarece afectează WordPress Core și poate fi exploatată fără un cont autentificat pe versiunile vulnerabile. Administratorii trebuie să actualizeze imediat WordPress și să caute indicii care arată că site-ul a fost accesat înainte de instalarea corecției.

Surse: The Hacker News, wp2shell, Wiz Research și Cloudflare.