Vad är Xmlrpc.php i WordPress och varför du bör inaktivera det

WordPress har alltid haft inbyggda funktioner som låter dig fjärransluta interagera med din webbplats. Inse det, ibland måste du komma åt din webbplats och din dator kommer inte att vara någonstans i närheten. Under lång tid var lösningen en fil med namnet xmlrpc.php. Men de senaste åren har filen blivit mer av ett skadedjur än en lösning.

nedan dyker vi in i vad xmlrpc.php är faktiskt och varför det skapades. Vi överblickar också de vanliga säkerhetsproblemen det orsakar och hur du lappar dem på din egen WordPress-webbplats.

ta din WordPress-webbplats till nästa nivå och få en säker WordPress-värdlösning med Hostinger idag!

Kom Igång Här

Vad Är Xmlrpc.php?

XML-RPC är en funktion i WordPress som gör att data kan överföras, med HTTP som transportmekanism och XML som kodningsmekanism. Eftersom WordPress inte är ett självhäftat system och ibland behöver kommunicera med andra system, försökte man hantera det jobbet.

låt oss till exempel säga att du ville posta till din webbplats från din mobila enhet eftersom din dator inte var i närheten. Du kan använda fjärråtkomstfunktionen aktiverad av xmlrpc.php för att göra just det.

kärnfunktionerna som xmlrpc.php aktiverat var så att du kan ansluta till din webbplats via smartphone, genomföra trackbacks och pingbacks från andra webbplatser, och vissa funktioner i samband med Jetpack plugin.

Varför Var Xmlrpc.php skapades och hur användes det?

implementeringen av XML-RPC går tillbaka till WordPress tidiga dagar innan det till och med blev WordPress.

tillbaka i början av internet, när anslutningarna var otroligt långsamma, var processen att skriva och publicera på webben mycket svårare och tidskrävande. Istället för att skriva i själva webbläsaren skulle de flesta skriva offline, sedan kopieras och klistras in innehållet på webben. Ändå var denna process långt ifrån idealisk.

lösningen (vid den tiden) var att skapa en offline bloggklient, där du kunde komponera ditt innehåll och sedan ansluta till din blogg för att publicera den. Denna anslutning gjordes via XML-RPC. Med den grundläggande ramen för XML-RPC på plats använde tidiga appar samma anslutning för att tillåta människor att logga in på sina WordPress-webbplatser från andra enheter.

XML-RPC nuförtiden

2008, med version 2.6 av WordPress, fanns det ett alternativ att aktivera eller inaktivera XML-RPC. Men med utgåvan av WordPress iPhone-appen var XML-RPC-stöd aktiverat som standard, och det fanns inget alternativ att stänga av inställningen. Detta har varit sant till idag.

funktionaliteten för den här filen har dock minskat kraftigt över tiden och filens totala storlek har minskat från 83 kB till 3 KB, så den spelar inte så stor roll som den brukade.

framtiden för XML-RPC

med det nya WordPress API kan vi förvänta oss att XML-RPC elimineras helt. Idag är detta nya API fortfarande i testfasen och kan bara aktiveras med hjälp av ett plugin.

du kan dock förvänta dig att API: et kodas direkt i WordPress-kärnan i framtiden, vilket för det mesta eliminerar behovet av xmlrpc.php-fil helt och hållet.

det nya API: et är inte perfekt, men det ger en mer robust och säker lösning på problemet som xmlrpc.php adresserat.

Varför Ska Du Inaktivera Xmlrpc.php

de största problemen med XML-RPC är de säkerhetsproblem som uppstår. Problemen är inte direkt med XML-RPC, utan istället hur filen kan användas för att aktivera en brute force-attack på din webbplats.

visst kan du skydda dig med otroligt starka lösenord och WordPress-säkerhetsplugin. Men det bästa skyddet är att helt enkelt inaktivera det.

det finns två huvudsakliga svagheter i XML-RPC som har utnyttjats tidigare.

den första använder brute force attacker för att få tillträde till din webbplats. En angripare kommer att försöka komma åt din webbplats med xmlrpc.php genom att använda olika användarnamn och lösenord kombinationer. De kan effektivt använda ett enda kommando för att testa hundratals olika lösenord. Detta gör det möjligt för dem att kringgå säkerhetsverktyg som vanligtvis upptäcker och blockerar brute force-attacker.

den andra tog webbplatser offline genom en DDoS-attack. Hackare skulle använda pingback-funktionen i WordPress för att skicka pingbacks till tusentals webbplatser omedelbart. Denna funktion i xmlrpc.php ger hackare ett nästan oändligt utbud av IP-adresser för att distribuera en DDOS-attack över.

för att kontrollera om XML-RPC körs på din webbplats kan du köra den genom ett verktyg som heter XML-RPC Validator. Kör din webbplats genom verktyget, och om du får ett felmeddelande betyder det att du inte har XML-RPC aktiverat.

om du får ett framgångsmeddelande kan du stoppa xmlrpc.php med en av de två metoderna nedan.

Metod 1: Inaktivera Xmlrpc.php med Plugins

inaktivera XML-RPC på din WordPress-webbplats kunde inte vara enklare.

navigera helt enkelt till Plugins ” Lägg till nytt avsnitt från din WordPress-instrumentpanel. Sök efter inaktivera XML-RPC och installera plugin som ser ut som bilden nedan:

Aktivera plugin och du är redo. Detta plugin sätter automatiskt in den nödvändiga koden för att stänga av XML-RPC.

men kom ihåg att vissa befintliga plugins kan använda delar av XML-RPC, så att inaktivera det helt kan orsaka en plugin konflikt eller vissa delar av din webbplats inte längre fungerar.

om du bara vill stänga av vissa delar av XML-RPC, men ändå låta vissa plugins och funktioner fungera, använd sedan följande plugins istället:

  • stoppa XML – RPC Attack. Detta plugin stoppar alla XML-RPC-attacker, men det fortsätter att tillåta plugins som Jetpack och andra automatiska verktyg och plugins för att behålla åtkomst till xmlrpc.php-fil.
  • kontroll XML – RPC publicering. Detta gör att du kan behålla kontrollen och använda över fjärrpubliceringsalternativet som erbjuds av xmlrpc.php.

Metod 2: Inaktivera Xmlrpc.php manuellt

om du inte vill använda ett plugin och föredrar att göra det manuellt, följ sedan detta tillvägagångssätt. Det kommer att stoppa alla inkommande xmlrpc.php-förfrågningar innan det skickas vidare till WordPress.

öppna upp din .htaccess-fil. Du kan behöva aktivera ’Visa dolda filer’ i filhanteraren eller din FTP-klient för att hitta den här filen.

inuti .htaccess-fil, klistra in följande kod:

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

Obs: ändra xxx. xxx.xxx.xxx till IP-adress du vill tillåta åtkomst xmlrpc.php eller ta bort den här raden helt.

avslutande tankar

sammantaget var XML-RPC en solid lösning på några av de problem som uppstod på grund av fjärrpublicering till din WordPress-webbplats. Men med den här funktionen kom några säkerhetshål som slutade vara ganska skadliga för vissa WordPress-webbplatsägare.

för att säkerställa att din webbplats förblir säker är det bra att inaktivera xmlrpc.php helt och hållet. Om du inte behöver några av de funktioner som behövs för fjärrpublicering och Jetpack-plugin. Sedan bör du använda workaround-plugins som tillåter dessa funktioner, medan du fortfarande patchar säkerhetshålen.

med tiden kan vi förvänta oss att XML-RPC-funktionerna integreras i det nya WordPress API, vilket kommer att hålla fjärråtkomst och liknande utan att offra säkerheten. Men under tiden är det bra att skydda dig mot de potentiella XML-RPC-säkerhetshålen.

Lämna ett svar

Din e-postadress kommer inte publiceras.