Cos’è Xmlrpc.php in WordPress e perché dovresti disabilitarlo

WordPress ha sempre avuto funzionalità integrate che ti consentono di interagire in remoto con il tuo sito. Affrontalo, a volte è necessario accedere al tuo sito web e il computer non sarà da nessuna parte nelle vicinanze. Per molto tempo, la soluzione era un file denominato xmlrpc.PHP. Ma negli ultimi anni, il file è diventato più di un parassita che una soluzione.

Di seguito ci immergiamo in ciò che xmlrpc.php in realtà è e perché è stato creato. Abbiamo anche panoramica dei problemi di sicurezza comuni che provoca e come correggerli sul proprio sito WordPress.

Porta il tuo sito WordPress al livello successivo e ottieni una soluzione di hosting WordPress sicura con Hostinger oggi stesso!

Inizia qui

Che cosa è Xmlrpc.php?

XML-RPC è una funzionalità di WordPress che consente la trasmissione dei dati, con HTTP che funge da meccanismo di trasporto e XML come meccanismo di codifica. Poiché WordPress non è un sistema auto-chiuso e occasionalmente ha bisogno di comunicare con altri sistemi, questo è stato cercato per gestire quel lavoro.

Ad esempio, supponiamo che volessi pubblicare sul tuo sito dal tuo dispositivo mobile poiché il tuo computer non era da nessuna parte nelle vicinanze. È possibile utilizzare la funzione di accesso remoto abilitata da xmlrpc.php per fare proprio questo.

Le caratteristiche principali che xmlrpc.php abilitato sono stati consentendo di connettersi al sito tramite smartphone, implementando trackback e pingbacks da altri siti, e alcune funzioni associate con il plugin Jetpack.

Perché era Xmlrpc.php creato e come è stato usato?

L’implementazione di XML-RPC risale ai primi giorni di WordPress prima ancora che diventasse WordPress.

Nei primi giorni di Internet, quando le connessioni erano incredibilmente lente, il processo di scrittura e pubblicazione sul web era molto più difficile e dispendioso in termini di tempo. Invece di scrivere all’interno del browser stesso, la maggior parte delle persone avrebbe scritto offline, quindi copiato e incollato il loro contenuto sul web. Tuttavia, questo processo era tutt’altro che ideale.

La soluzione (al momento), era quello di creare un client di blogging offline, dove si poteva comporre il contenuto, quindi connettersi al tuo blog per pubblicarlo. Questa connessione è stata effettuata tramite XML-RPC. Con il framework di base di XML-RPC, le prime app utilizzavano questa stessa connessione per consentire alle persone di accedere ai loro siti WordPress da altri dispositivi.

XML-RPC Al giorno d’oggi

Nel 2008, con la versione 2.6 di WordPress, c’era un’opzione per abilitare o disabilitare XML-RPC. Tuttavia, con il rilascio dell’app WordPress per iPhone, il supporto XML-RPC è stato abilitato di default e non c’era alcuna opzione per disattivare l’impostazione. Questo è rimasto vero fino ai giorni nostri.

Tuttavia, la funzionalità di questo file è notevolmente diminuita nel tempo e la dimensione complessiva del file è diminuita da 83kb a 3kb, quindi non svolge un ruolo così grande come un tempo.

Il futuro di XML-RPC

Con la nuova API di WordPress, possiamo aspettarci che XML-RPC venga eliminato completamente. Oggi, questa nuova API è ancora in fase di prova e può essere abilitata solo attraverso l’uso di un plugin.

Tuttavia, puoi aspettarti che l’API venga codificata direttamente nel core di WordPress in futuro, il che eliminerà principalmente la necessità di xmlrpc.file php del tutto.

La nuova API non è perfetta, ma fornisce una soluzione più robusta e sicura al problema di xmlrpc.php indirizzato.

Perché dovresti disabilitare Xmlrpc.php

I maggiori problemi con XML-RPC sono i problemi di sicurezza che sorgono. I problemi non riguardano direttamente XML-RPC, ma il modo in cui il file può essere utilizzato per abilitare un attacco di forza bruta sul tuo sito.

Certo, puoi proteggerti con password incredibilmente potenti e plugin di sicurezza di WordPress. Ma la migliore modalità di protezione è semplicemente disabilitarla.

Ci sono due punti deboli principali di XML-RPC che sono stati sfruttati in passato.

Il primo è l’utilizzo di attacchi di forza bruta per ottenere l’ingresso al tuo sito. Un utente malintenzionato tenterà di accedere al tuo sito utilizzando xmlrpc.php utilizzando varie combinazioni di nome utente e password. Possono effettivamente utilizzare un singolo comando per testare centinaia di password diverse. Ciò consente loro di bypassare gli strumenti di sicurezza che in genere rilevano e bloccano gli attacchi di forza bruta.

Il secondo stava prendendo i siti offline attraverso un attacco DDoS. Gli hacker userebbero la funzione pingback in WordPress per inviare pingback a migliaia di siti istantaneamente. Questa funzione in xmlrpc.php offre agli hacker una fornitura quasi infinita di indirizzi IP per distribuire un attacco DDoS.

Per verificare se XML-RPC è in esecuzione sul tuo sito, puoi eseguirlo tramite uno strumento chiamato XML-RPC Validator. Esegui il tuo sito attraverso lo strumento e, se ricevi un messaggio di errore, significa che non hai abilitato XML-RPC.

Se ricevi un messaggio di successo, puoi interrompere xmlrpc.php con uno dei due approcci di seguito.

Metodo 1: disabilitazione di Xmlrpc.php con plugin

Disabilitare XML-RPC sul tuo sito WordPress non potrebbe essere più facile.

È sufficiente accedere ai plugin ” Aggiungi nuova sezione all’interno della dashboard di WordPress. Cerca Disable XML-RPC e installa il plugin che assomiglia all’immagine qui sotto:

Attiva il plugin e sei a posto. Questo plugin inserirà automaticamente il codice necessario per disattivare XML-RPC.

Tuttavia, tieni presente che alcuni plugin esistenti possono utilizzare parti di XML-RPC, quindi disabilitarlo completamente potrebbe causare un conflitto di plugin o alcuni elementi del tuo sito non funzionano più.

Se si desidera disattivare solo alcuni elementi di XML-RPC, ma consentire comunque a determinati plugin e funzionalità di funzionare, utilizzare invece i seguenti plugin:

  • Fermare l’attacco XML-RPC. Questo plugin interromperà tutti gli attacchi XML-RPC, ma continuerà a consentire a plugin come Jetpack e altri strumenti e plugin automatici di mantenere l’accesso a xmlrpc.file php.
  • Controlla la pubblicazione XML-RPC. Ciò consente di mantenere il controllo e l’utilizzo dell’opzione di pubblicazione remota offerta da xmlrpc.PHP.

Metodo 2: disabilitazione di Xmlrpc.php Manualmente

Se non vuoi utilizzare un plugin e preferisci farlo manualmente, segui questo approccio. Si fermerà tutto xmlrpc in arrivo.richieste php prima che venga passato su WordPress.

Apri il tuo .file htaccess. Potrebbe essere necessario attivare il ‘mostra file nascosti’ all’interno di file manager o il client FTP per individuare questo file.

All’interno del vostro .file htaccess, incolla il seguente codice:

# Block WordPress xmlrpc.php requests<Files xmlrpc.php>order deny,allowdeny from allallow from xxx.xxx.xxx.xxx</Files>

Nota: Cambiare xxx. xxx. xxx. xxx all’indirizzo IP che si desidera consentire l’accesso xmlrpc.php o rimuovere completamente questa linea.

Pensieri di chiusura

Nel complesso, XML-RPC è stata una soluzione solida ad alcuni dei problemi che si sono verificati a causa della pubblicazione remota sul tuo sito WordPress. Tuttavia, con questa funzione sono venuti alcuni buchi di sicurezza che hanno finito per essere piuttosto dannosi per alcuni proprietari di siti WordPress.

Per garantire che il tuo sito rimanga sicuro è una buona idea disabilitare xmlrpc.php interamente. A meno che tu non richieda alcune delle funzioni necessarie per la pubblicazione remota e il plugin Jetpack. Quindi, è necessario utilizzare i plugin di soluzione alternativa che consentono queste funzionalità, pur applicando le patch ai buchi di sicurezza.

Nel tempo, possiamo aspettarci che le funzionalità di XML-RPC si integrino nella nuova API di WordPress, che manterrà l’accesso remoto e simili, senza sacrificare la sicurezza. Ma, nel frattempo, è una buona idea proteggersi dai potenziali buchi di sicurezza XML-RPC.

Lascia un commento

Il tuo indirizzo email non sarà pubblicato.