Sari la conținut

Cum cauți cod malițios în fișierele WordPress (wp-config, .htaccess, uploads)

4 min de citit

Cum cauți cod malițios în fișierele WordPress (wp-config, .htaccess, uploads) – cum cauți cod malițios în WordPress

Primești reclamații că site-ul trimite spam, vezi redirecturi ciudate spre pagini de pariuri sau Google îți marchează domeniul ca „periculos” — toate sunt semne clasice de infectare. Ca să înțelegi cum cauți cod malițios în WordPress, pornești de la o realitate simplă: atacatorii ascund codul în câteva locuri predictibile. Cel mai des sunt wp-config.php, fișierul .htaccess și folderul wp-content/uploads. Cu puțină răbdare și metodă, poți depista majoritatea injectărilor chiar și fără un plugin plătit sau cunoștințe avansate.

De ce ajung fișierele să fie infectate

Aproape întotdeauna, poarta de intrare este un plugin sau o temă „nulled” (piratată), o componentă veche cu vulnerabilități cunoscute ori o parolă slabă de administrator sau FTP. Odată intrat, atacatorul nu se mulțumește cu un singur fișier: lasă un „backdoor”, adică un script ascuns care îi permite să revină chiar și după ce ștergi restul.

De aceea, curățarea unui singur fișier vizibil rareori rezolvă complet problema. Trebuie să cauți tiparul din spatele infecției, nu doar simptomul de la suprafață.

Unde se ascunde codul: wp-config, .htaccess și uploads

wp-config.php e ținta preferată pentru că se încarcă la fiecare cerere către site. Deschide-l și inspectează cu atenție începutul și sfârșitul fișierului: codul injectat apare des chiar înainte de tagul sau imediat după linia „That's all, stop editing".

.htaccess controlează regulile serverului Apache sau LiteSpeed. Aici pot apărea directive RewriteRule care trimit vizitatorii de pe mobil către alt domeniu, care blochează accesul scanerelor de securitate sau care permit execuția fișierelor PHP acolo unde n-ar trebui.

wp-content/uploads ar trebui să conțină doar imagini și documente. Orice fișier cu extensia .php ascuns aici este suspect din start — WordPress nu plasează niciodată scripturi executabile printre pozele tale.

Cum cauți cod malițios în WordPress: funcții și tipare suspecte

Codul rău intenționat se ascunde de regulă prin ofuscare — text codificat care maschează comenzile reale, ca să nu sară în ochi. Câteva funcții PHP devin semnale de alarmă mai ales când apar combinate între ele:

  • eval() — execută un text ca și cod; aproape niciodată legitim într-o temă.
  • base64_decode(), gzinflate(), str_rot13() — folosite pentru a ascunde payload-ul real.
  • preg_replace cu modificatorul /e — permite execuția de cod arbitrar.
  • system(), shell_exec(), assert() — rulează comenzi direct pe server.
  • Șiruri foarte lungi și fără sens de litere și cifre, deseori pe o singură linie.

Găsirea unei singure funcții nu înseamnă automat infecție, dar o construcție de tip eval(base64_decode(...)) este aproape sigur un backdoor.

Diagramă checklist cu pașii prin care cauți cod malițios în WordPress: wp-config, .htaccess și uploads.Cum Cauți Cod Malițios În WordPressVerifică wp-config.phpScanează .htaccessCaută .php în uploadsFuncții eval/base64Compară cu core-ul oficialFișiere modificate recent
Checklist: cum cauți cod malițios în WordPress.

Instrumente și comenzi care te ajută

Dacă ai acces SSH, o singură căutare recursivă îți scoate rapid la iveală tiparele riscante din toate fișierele:

grep -rEn "eval\(|base64_decode|gzinflate|shell_exec" wp-content/

Fără SSH, folosești managerul de fișiere din cPanel și sortezi fișierele după data modificării. Cele modificate „ieri", când tu n-ai publicat nimic, merită verificate primele. Un truc foarte solid este să compari instalarea ta cu una curată: descarci arhiva oficială de pe wordpress.org și verifici dacă fișierele din core (wp-admin și wp-includes) diferă în vreun fel de original.

Un plugin de integritate a fișierelor, precum Wordfence, semnalează automat orice fișier din core care a fost modificat — cea mai rapidă cale de a găsi injectările bine ascunse.

Ce faci după ce ai găsit ceva suspect

Nu șterge la întâmplare. Fă mai întâi o copie de siguranță completă — fișiere plus bază de date — ca să poți reveni dacă strici ceva pe parcurs. Apoi curăță metodic: înlocuiește core-ul cu versiunea oficială, reinstalează temele și pluginurile din surse curate și caută în baza de date opțiuni injectate suspect.

Verifică și tabelul de utilizatori pentru conturi de administrator pe care nu le recunoști — un backdoor lasă deseori și un cont-fantomă pentru acces ulterior. La final, schimbă toate parolele și regenerează cheile de securitate (salts) din wp-config.php.

Dacă infecția revine după curățare sau nu ești sigur că ai prins tot, un serviciu specializat de devirusare WordPress îți garantează o curățare completă. Iar dacă vrei doar să vezi cât de expus ești în acest moment, un audit gratuit îți arată punctele slabe înainte să devină o problemă reală.

Concluzie

Căutarea codului malițios nu e magie: știi unde să te uiți (wp-config, .htaccess și uploads), recunoști funcțiile de ofuscare și compari mereu cu o versiune curată de referință. Transformă backup-urile regulate și actualizările la zi într-un obicei, iar problemele le vei prinde devreme — atunci când sunt încă ușor de rezolvat.

Citește și: Cryptominer pe WordPress: semnele că site-ul tău minează criptomonede pentru altcineva.