Skip to content
Atacuri de tip XML-RPC pe WordPress: dezactivare și alternative sigure

Atacuri de tip XML-RPC pe WordPress: dezactivare și alternative sigure

Fișierul xmlrpc.php din WordPress este o sursă constantă de probleme de securitate, exploatat atât pentru atacuri brute force amplificate, cât și pentru inițierea de atacuri DDoS prin site-uri WordPress compromise. Deși XML-RPC a fost util în trecut pentru aplicații mobile și publicare de la distanță, în 2026 REST API WordPress oferă alternative mai sigure pentru toate cazurile de utilizare legitime.

XML-RPC permite atacatorilor să testeze mii de combinații de parole printr-o singură cerere HTTP, utilizând metoda system.multicall care execută multiple comenzi simultan. Aceasta face atacurile brute force prin XML-RPC de zeci de ori mai eficiente față de atacurile directe pe wp-login.php.

Atacuri de tip XML-RPC pe WordPress: dezactivare și alternative sigure

Activat implicit în toate instalările WordPress, xmlrpc.php oferă o interfață de programare pentru aplicații externe. Problema este că această interfață poate fi exploatată în multiple moduri dacă nu este restricționată sau dezactivată.

Scanările automate ale internetului identifică constant site-uri WordPress cu xmlrpc.php activ și neprotejat, adăugându-le în liste de ținte pentru atacuri automatizate.

Tipuri de atacuri prin XML-RPC

Brute force amplificat prin system.multicall

Metoda system.multicall permite executarea a sute de apeluri XML-RPC într-o singură cerere HTTP. Un atacator poate testa 500 de parole printr-o singură conexiune, ocolind limitele de rată implementate pentru wp-login.php. Aceasta face inutile măsurile de protecție brute force care nu acoperă și xmlrpc.php.

Utilizarea WordPress ca proxy DDoS

Site-urile WordPress cu XML-RPC activ pot fi folosite ca amplificatoare în atacuri DDoS. Atacatorul trimite cereri către xmlrpc.php cu URL-uri țintă, iar WordPress-ul generează cereri multiple către acele URL-uri, amplificând traficul de atac.

Pingback-uri malițioase

Funcția de pingback din XML-RPC poate fi folosită pentru a verifica dacă un server este activ sau pentru a efectua cereri HTTP către servere interne din rețeaua găzduitorului, o tehnică de tip SSRF (Server-Side Request Forgery).

Cum verificați dacă XML-RPC este activ

Verificați rapid starea XML-RPC cu o cerere simplă:

curl -s https://site-ul-vostru.ro/xmlrpc.php

Dacă primiți răspunsul XML-RPC server accepts POST requests only, XML-RPC este activ. Un răspuns 403 sau 404 indică că este dezactivat sau blocat.

Metode de dezactivare a XML-RPC

Există mai multe abordări pentru dezactivarea sau restricționarea XML-RPC, fiecare cu avantaje și dezavantaje.

Blocarea în .htaccess (recomandat)

# Blocheaza accesul la xmlrpc.php
<Files xmlrpc.php>
    Order Deny,Allow
    Deny from all
</Files>

Această metodă blochează cererile la nivel de server web, înainte ca WordPress să le proceseze, reducând consumul de resurse.

Dezactivarea prin functions.php

// Dezactiveaza XML-RPC complet
add_filter( 'xmlrpc_enabled', '__return_false' );

// Dezactiveaza doar pingback-urile
add_filter( 'xmlrpc_methods', function( $methods ) {
    unset( $methods['pingback.ping'] );
    return $methods;
});

Blocarea în nginx

location = /xmlrpc.php {
    deny all;
    return 403;
}

Când NU dezactivați XML-RPC

Există cazuri legitime în care XML-RPC este necesar. Aplicațiile mobile WordPress (iOS, Android) pentru publicare de conținut folosesc XML-RPC. Servicii de publicare de la distanță ca Windows Live Writer sau MarsEdit depind de XML-RPC. Jetpack de la Automattic necesitează XML-RPC pentru unele funcționalități.

În aceste cazuri, restricționați accesul la XML-RPC doar de la adresele IP cunoscute în loc să îl dezactivați complet.

Alternative moderne: REST API WordPress

WordPress REST API, disponibil din versiunea 4.7, oferă funcționalitate similară XML-RPC dar cu autentificare modernă, rate limiting și o suprafață de atac mai mică. Aplicațiile noi ar trebui să folosească REST API în loc de XML-RPC.

Dacă dezactivați XML-RPC, verificați că niciun plugin activ nu depinde de el. Pluginuri ca Jetpack pot necesita reconfigurare.

Concluzie

XML-RPC este un vector de atac activ în 2026 care merită atenție imediată dacă nu ați luat deja măsuri. Dezactivarea sau restricționarea accesului prin .htaccess sau nginx este o intervenție rapidă cu impact semnificativ asupra securității site-ului dumneavoastră WordPress.

Verificați starea XML-RPC cu instrumentele noastre gratuite de scanare securitate sau solicitați un audit complet de securitate WordPress pentru o evaluare detaliată a configurației site-ului dumneavoastră.

Despre autor

Dorel Tănase este specialist în optimizarea site-urilor pentru motoarele de căutare. Lucrează în online din 1997 și în SEO din 2007, iar activitatea se desfășoară prin GO SEO MARKETING S.R.L. din Alba Iulia. Se ocupă de audit tehnic, arhitectura site-urilor, conținut și construirea legăturilor.

Sus