WordPress propone da sempre ai propri utenti delle funzionalità che permettono il trasferimento di dati da un dispositivo all’altro. Per diverso tempo, la soluzione è stata l’utilizzo di un preciso file chiamato xmlrpc.php. Negli ultimi anni, però, questo sistema si è rivelato spinoso.
Nell’ambiente WordPress, XML-RCP è stato ideato per poter standardizzare la comunicazione tra sistemi differenti, ovvero che le applicazioni al di fuori di questo CMS potessero interagire con esso.
Vediamo, quindi, le caratteristiche di xmlrpc.php, il perché è stato creato e i problemi e i rischi più comuni per la sicurezza che questo file causa, scoprendo anche come poterli correggere su WordPress.
Indice dei contenuti:
Le principali caratteristiche di xmlrpc.php
XML-RPC è una funzionalità di WordPress che ti permette di trasmettere dei dati. In questo caso, HTTP svolge la funzione di trasporto, mentre XML quella di codifica.
Considerando che WordPress necessita di poter comunicare con altre piattaforme, il file xmlrpc.php è stato appositamente pensato per poter gestire al meglio questo tipo di lavoro.
Perché è stato ideato xmlrpc.php e come si utilizza
XML-RPC ha una storia abbastanza datata, che risale ancor prima dell’avvento di WordPress. In quel periodo, le connessioni a Internet erano particolarmente lente, con il processo di scrittura e pubblicazione che richiedeva più tempo e lavoro. Infatti, invece si utilizzare un editor online, chi gestiva un sito preferiva creare i testi direttamente offline, copiando e incollando successivamente i contenuti in Rete.
La soluzione, quindi, fu la creazione di un client di blog offline, dove gli utenti avevano la possibilità di poter creare contenuti, collegandosi al proprio blog per poterlo pubblicare. Tale connessione è stata resa possibile proprio da XML-RPC. Le prime applicazioni, quindi, si avvalevano di questo collegamento per far accedere gli utenti ai propri siti WordPress da dispositivi differenti dai PC personali.
Qual è l’attuale situazione di XML-RPC e come si prospetta il suo futuro
A partire dal 2008, WordPress consente di poter attivare o disattivare XML-RPC. Bisogna sottolineare che la funzionalità di questo file è notevolmente scemata nel corso degli anni, il suo ruolo, come è evidente, non è più così determinante come lo era in passato.
Con le API di WordPress, è facile aspettarsi che XML-RPC venga definitivamente soppiantato.
I motivi per cui dovresti disabilitare xmlrpc.php per garantire una maggiore sicurezza sul tuo sito WordPress
Le problematiche maggiori legate a XML-RPC riguardano la sicurezza. Non significa che il file sia pericoloso, ma piuttosto i rischi derivano dal come esso venga utilizzato per attivare un attacco di forza bruta sul tuo sito.
Sicuramente, delle password sicure e forti possono assicurarti più sicurezza, così come alcuni plugin di WordPress. Ma la modalità di protezione più efficace è la disattivazione di questo file.
I punti deboli più evidenti di XML-RPC sono due e sono stati ampiamente sfruttati negli anni precedenti. Il primo riguarda gli attacchi di forza bruta che permettono l’accesso alla tua piattaforma online. Un hacker, infatti, potrebbe tentare di inserirsi nel tuo sistema attraverso il file xmlrpc.php. Grazie a questo stratagemma, sarà semplice aggirare i sistemi di sicurezza che, di solito, dovrebbero intercettare tali attacchi e bloccarli.
Il secondo punto debole riguarda la funzione pingback di WordPress, che permette agli hacker di accedere a infiniti indirizzi IP sui quali distribuire un attacco DDoS.
Se vuoi verificare l’attività del file XML-RPC, puoi eseguirlo utilizzando uno strumento specifico che si chiama XML-RPC Validator. Ti basterà, in questo caso, eseguire il tuo sito web tramite questo tool e, nel caso ti venga inviato un messaggio di errore, vorrà dire che nel tuo sito WordPress il file non è abilitato. Nel caso in cui restituisse un messaggio positivo, hai la possibilità di disattivare il file xmlrpc.php tramite due differenti metodi che, di seguito, ti spiegheremo.
Disabilitare xmlrpc.php utilizzando dei plugin
Disattivare XML-RPC sul tuo sito WordPress è un’operazione molto semplice. Il primo metodo consiste nel recarti nella sezione plugin e cliccare su aggiungi nuovo, tasto presente nella dashboard del CMS. Devi, quindi, cercare la voce disattiva XML-RPC-API e installa il plugin.
Dopo aver attivato quest’ultimo, sarà inserito in modo automatico il codice necessario a poter disabilitare XML-RPC. Ricorda, però, che alcuni plugin presenti nel tuo sito potrebbero utilizzare parti del file xmlrpc.php. Ciò vuol dire che disattivarlo del tutto potrebbe causare dei conflitti o il malfunzionamento di certi elementi del tuo sito.
Quando può esserti utile attivare xmlrpc.php?
In alcuni casi, abilitare il file xmlrpc.php sul tuo sito WordPress potrebbe esserti utile. Quindi, potresti anche decidere di non disabilitarlo completamente.
I casi più frequenti sono si seguenti:
- non stai eseguendo l’API REST, ma hai bisogno di far comunicare il tuo sito WordPress e altri sistemi;
- non hai la possibilità di fare l’upgrade di WordPress alla versione più recente, quindi non hai accesso all’API REST.
- stai lavorando tramite un’applicazione esterna che non ti permette di accedere all’API REST di WordPress, mentre puoi utilizzare XML-RPC (a lungo termine, dovresti aggiornare tale applicazione o passare a una che sia compatibile con REST).
Quelli appena elencati sono i motivi principali per i quali potresti ancora mantenere attiva la funzione XML-RPC. Quest’ultima è ancora presente in WordPress in quanto compatibile con le vecchie versioni e ti sarebbe utile se ti avvali ancora di sistemi ormai obsoleti. Se, invece, vuoi mantenere aggiornato il tuo sito e desideri sfruttare le tecnologie più recenti, scegliere di disabilitare xmlrpc.php è la giusta soluzione.