Just Host kennisbank

Service beyond the dot

Wat is xmlrpc.php en hoe zet je XML-RPC uit?

Gepubliceerd: door Reageer,
Laatst bewerkt op: 23 juli 2022
Geplaatst in: ,

Wat is XML-RPC?

WordPress heeft XML-RPC ontwikkeld om communicatie tussen WordPress en verschillende toepassingen mogelijk te maken. Al sinds de eerste ontwikkelingen van WordPress was XML-RPC onderdeel van het CMS. In het verleden stond XML-RPC standaard uitgeschakeld maar sinds WordPress versie 3.5 is XML-RPC standaard ingeschakeld. Dat was handig, want voor het gebruiken van de mobiele WordPress app moest XML-RPC actief staan. Maar XML-RPC werd niet alleen gebruikt voor de mobiele app. Het maakte ook de communicatie tussen WordPress en andere blogplatforms mogelijk en zorgt ook dat pingbacks en trackbacks goed konden worden verwerkt.

REST API heeft XML-RPC vervangen

Sinds de REST API werd geïntegreerd in WordPress is het xmlrpc.php bestand niet langer nodig om bovenstaande functies te kunnen gebruiken. De REST API heeft die rol overgenomen en kan meer dan wat voorheen XML-RPC kon. Daarmee is XML-RPC en bestand xmlrpc.php overbodig geworden. Aangezien XML-RPC ook nadelen heeft is het goed die functie uit te schakelen. Verderop in dit artikel vind je informatie over deze nadelen en hoe je de functie uitschakelt als je deze niet nodig hebt.

Waarom zit xmlrpc.php dan nog in WordPress?

Als REST API de functies van XML-RPC heeft overgenomen, waarom zit bestand xmlrpc.php dan nog in WordPress? Dat heeft te maken met het blijven ondersteunen van verouderde WordPress onderdelen: niet iedereen wil of kan het advies opvolgen dat je je WordPress website doorlopend bij zou moeten werken naar de laatste versies. Om de WordPress websites die verouderd zijn te blijven ondersteunen zit XML-RPC nog geïntegreerd in de basissoftware van WordPress.

Wat zijn de nadelen van XML-RPC?

DDoS aanvallen via XML-RPC Pingbacks

Bestand xmlrpc.php maakte pingbacks en trackbacks mogelijk. Dat zijn meldingen die verschijnen in de reacties op je blogartikelen wanneer een andere blog of website naar je bericht linkt. Tegenwoordig verzorgt de REST API deze communicatie. Als XML-RPC nog ingeschakeld is op je website, dan zouden kwaadwillenden een DDoS aanval kunnen uitvoeren op je website door het xmlrpc.php bestand te misbruiken door in korte tijd grote aantallen pingbacks naar je website te sturen. Daardoor kan je hostingserver overbelast raken, en kan je website down gaan.

Brute force aanvallen

Elke keer dat xmlrpc.php een connectieverzoek doet, worden je gebruikersnaam en wachtwoord meegestuurd, ter controle. Dat is een groot beveiligingsrisico en daarom is de REST API daar ook voor in de plaats gekomen: de REST API stuurt geen gebruikersnaam en wachtwoord mee maar werkt met een verificatiesleutel. Doordat xmlrpc.php logingegevens meestuurt bij elk verzoek, kunnen hackers dit gebruiken om toegang te krijgen tot je WordPress site. Een aanvaller kan een enorm aantal verzoeken naar je site sturen, steeds met een andere login/wachtwoord, in de hoop op een goed moment de juiste logingegevens te pakken te hebben en toegang tot je site te krijgen. Vanaf dat moment is het dan mogelijk om content of code toe te voegen of te verwijderen, wat inhoudt dat je WordPress site is gehackt.

Vanwege de bovenstaande risico’s is het beter om xmlrpc.php uit te schakelen als je een up-to-date versie van WordPress met de REST API gebruikt. Door het uitschakelen van XML-RPC wordt je website dus minder kwetsbaar.

Draait xmlrpc.php op jouw WordPress website?

Weet je niet of XML-RPC op jouw website actief is? Dan kun je testen of je WordPress website bestand xmlrpc.php gebruikt. Je kunt dat bestand niet verwijderen uit je WordPress installatie, maar je kunt wel voorkomen dat dit bestand wordt gebruikt.

Gebruik de WordPress XML-RPC Validation Service om te kijken of xmlrpc.php ingeschakeld is.

Op deze webpagina zie je het volgende:

wordpress xml-rpc validation service

Voer de URL van je website in en bij Username en Password gebruik je de logingegevens die je ook gebruikt als je op je WordPress website inlogt.

Als XML-RPC is uitgeschakeld dan zie je zoiets als dit:

wordpress xml-rpc validatie failed

Zie je dat XML-RPC wel kan worden gebruikt? Ga dan naar de aanwijzingen hieronder waarin we uitleggen hoe je de functie kunt uitschakelen.

Hoe schakel je XML-RPC uit?

Op steeds meer servers wordt XML-RPC door ons uitgeschakeld om websites beter te beschermen tegen aanvallen op xmlrpc.php. Dat doen we gefaseerd om eventuele problemen op verouderde sites te kunnen monitoren en de websitebeheerders op weg te helpen als er na een XML-RPC blokkade iets niet meer werkt. Mocht de functie nog wel actief zijn op jouw server dan schakel je die als volgt uit.

Wil je je website beter beveiligen door meer te doen dan alleen het uitschakelen van XML-RPC? Bekijk dan eens de handleiding Wordfence, waarin de XML-RPC blokkade is inbegrepen.

XML-RPC uitschakelen met een plugin

Wie geen technische achtergrond heeft kan deze methode het makkelijkst gebruiken: Installeer de plugin Disable XML-RPC-API. Je hoeft deze gratis plugin alleen te installeren en te activeren, er zijn verder geen instellingen nodig.

XML-RPC uitschakelen zonder plugin

Ben je vertrouwd met het aanpassen van code in je thema en gebruik je een child thema? Dan kun je de volgende code toevoegen in het functions.php bestand van je child thema:

add_filter( 'xmlrpc_enabled', '__return_false' );

XML-RPC uitschakelen via .htaccess bestand

Heb je geen child thema of wil je niet wijzigen in je themabestanden? Dan kun je XML-RPC ook blokkeren via je .htaccess bestand. Voeg het volgende toe aan je .htaccess bestand:

<Files xmlrpc.php>
Order Allow,Deny
Deny from all
</Files>

Gebruik je WordPress versie 4.x of lager?

In dat geval heb je nog geen REST API functie en als je gebruik maakt van de XML-RPC functie dan kun je die niet uitschakelen. We adviseren je in dat geval om er toch voor te zorgen dat je WordPress website kan worden bijgewerkt naar een nieuwere versie waardoor je de genoemde beveiligingsrisico’s kunt wegnemen.

Vragen over XML-RPC?

Heb je hier vragen over of heb je hulp nodig bij het uitschakelen van de XML-RPC functie? Neem contact op met Just Host support.

Was dit artikel nuttig?

Gerelateerde berichten

Lees Interacties

Geef een reactie

Het e-mailadres wordt niet gepubliceerd. Vereiste velden zijn gemarkeerd met *