Înapoi la Noutăți
Amenințări

PHP2Shell: milioane de tentative de exploatare, încă nicio compromitere confirmată. Actualizați înainte să se schimbe asta

Două vulnerabilități critice din motorul PHP sunt atacate în masă, cu payload-uri de botnet Mirai. Nicio compromitere confirmată încă, dar ASLR a fost ocolit, iar zeci de milioane de servere sunt expuse.

PHP2Shell: milioane de tentative de exploatare, încă nicio compromitere confirmată. Actualizați înainte să se schimbe asta

PHP2Shell: milioane de tentative de exploatare, încă nicio compromitere confirmată. Actualizați înainte să se schimbe asta

Două vulnerabilități critice din motorul PHP, numite împreună PHP2Shell, au declanșat unul dintre cele mai rapide valuri de tentative de exploatare la scară globală din acest an. Atacatorii încearcă deja să transforme serverele vulnerabile în noduri ale unui botnet derivat din Mirai. Vestea bună: niciunul dintre senzorii importanți care urmăresc campania nu a confirmat până acum o compromitere reușită. Vestea proastă: a fost demonstrată o metodă de a ocoli principalul obstacol al atacatorilor, iar numărul serverelor expuse este uriaș.

Ce s-a întâmplat

CVE-2026-109618 și CVE-2026-109619 (CVSS 9.2) pot fi înlănțuite pentru execuție de cod de la distanță, fără autentificare, prin cereri HTTP special construite. Remedierile au fost incluse în PHP 8.5.12, 8.4.27, 8.3.36 și 8.2.35. Codul vulnerabil există încă din PHP 5.4, iar pentru că problema se află chiar în motorul PHP, un site WordPress, Drupal sau Joomla cu un cod de aplicație impecabil rămâne expus.

În prima oră de la publicare, rețelele de tip edge înregistrau zeci de mii de tentative. În două ore erau sute de mii, iar pe 22 octombrie se ajunsese la milioane. Activitatea observată se împarte în trei categorii:

  • Recrutare pentru botnet. Mai multe surse de atac încearcă să descarce un loader care instalează Potassium, o variantă extinsă de Mirai identificată pentru prima dată în martie 2026. Aceasta își criptează configurația cu ChaCha20, are un canal de reverse shell pe lângă comenzile DDoS (24 de tipuri de flood prin ICMP, TCP, UDP și OpenVPN) și include o opțiune, deocamdată inactivă, de a-și rezolva serverul de comandă și control prin Ethereum Name Service. Odată activată, aceasta ar îngreuna destructurarea infrastructurii.
  • Unelte țintite. Un server al atacatorilor, lăsat expus, conținea un exploit „one-click” pentru PHP 8.4.26 sub Apache mod_php, plus scripturi care verifică dacă site-urile îndeplinesc condițiile exploit-ului și enumeră utilizatori și plugin-uri WordPress. Restul trusei de unelte (extragerea cheilor API din JavaScript-ul din browser, scanarea rutelor API neautentificate, proxy-uri rotative, rezolvarea automată a CAPTCHA) indică un actor motivat financiar, interesat de ținte crypto și Web3. Au fost sondate circa 123 de servere și niciunul nu a fost compromis.
  • Zgomot oportunist. Restul înseamnă în mare parte scanare, amprentare și încercări necoordonate de a confirma execuția de comenzi, de a citi secrete din variabilele de mediu, de a planta web shell-uri prin fișierele de sesiune de pe server și de a descărca payload-uri de etapa a doua.

De ce contează

Motivul pentru care nimeni nu are încă o reușită confirmată este ASLR: ocolirea fiabilă a randomizării memoriei pe un server configurat pentru producție este dificilă. Bariera aceasta a slăbit. Specialiști în dezvoltarea de exploit-uri au demonstrat o tehnică ce înlănțuie cele două vulnerabilități, folosește o scurgere de memorie pentru a ocoli ASLR și obține execuție de cod pe sisteme x86-64 care rulează PHP cu setările de producție recomandate. Exploit-ul nu este public, dar arată că partea grea poate fi rezolvată, iar experiența spune că actorii capabili vor urma.

Expunerea este uriașă. Estimările bazate pe scanarea internetului indică zeci de milioane de servicii PHP vulnerabile. Doar aproximativ un sfert dintre serverele care își afișează versiunea PHP rulează o ramură care mai primește actualizări. Sute de mii afișează încă versiuni 7.x și 5.x ajunse la sfârșitul suportului. Ca în cazul Log4Shell, ne putem aștepta la o „coadă lungă”: stivele PHP integrate în produse sau administrate de furnizori vor rămâne vulnerabile mult după ce aplicațiile proprii au fost actualizate. Mai multe site-uri guvernamentale, de școli și de spitale din Asia, Europa și America de Nord au fost deja scoase offline preventiv.

Un atac reușit rulează cod cu permisiunile aplicației web, adică, de regulă, acces la credențialele bazei de date, la cheile API și un punct de plecare pentru a pătrunde mai adânc în rețea. Nu e nevoie de drepturi de root pentru pagube reale.

Ce trebuie făcut

  1. Actualizați acum. Treceți la PHP 8.5.12, 8.4.27, 8.3.36, 8.2.35 sau mai nou. Pe 7.4, 8.0 sau 8.1, migrați la o ramură suportată sau aplicați remedierea portată de distribuția voastră. Nu așteptați un titlu cu „exploatare confirmată”.
  2. Inventariați fiecare instalare PHP, inclusiv echipamente, imagini de la furnizori, containere și servere de test uitate. Cereți furnizorilor, în scris, termenele de actualizare.
  3. Întăriți configurația până la actualizare. Uneltele observate depind de session.upload_progress.enabled=1, session.use_strict_mode=0 și display_errors=1. Dezactivarea upload progress, activarea modului strict pentru sesiuni și oprirea afișării erorilor în producție elimină condiții de care acestea depind. E o măsură suplimentară, nu un înlocuitor pentru actualizare.
  4. Căutați urme. Verificați fișierele neașteptate din directoarele de sesiuni PHP, fișierele PHP noi din directoarele web, conexiunile de ieșire ale serverelor web către adrese necunoscute și descărcările de binare ELF făcute de utilizatorul serverului web.
  5. Blocați infrastructura cunoscută la perimetru și în DNS: serverul C2 134.199.154[.]64 (TCP 50792), domeniul thunder.godofthunder[.]st, gazda loader-ului 92.118.112[.]100 și serverul de exploatare 206.188.197[.]105. Probabil se vor schimba.
  6. Schimbați secretele (parole de baze de date, chei API, token-uri cloud) pe orice server PHP expus la internet și neactualizat, mai ales dacă vedeți semne de sondare.

Identificarea fiecărei versiuni PHP învechite într-o infrastructură extinsă este exact ce face scanarea de vulnerabilități. Scanările echipei noastre identifică versiunile motorului și ale framework-urilor pe fiecare server expus și le semnalează pe cele afectate de CVE-uri critice cunoscute, precum PHP2Shell, astfel încât lista de actualizări să se bazeze pe dovezi, nu pe memorie.


Subiectul a fost relatat inițial de The Hacker News; acest articol este rezumatul și analiza noastră independentă.

DISTRIBUIE