WordPress 5.2, dat eerder deze maand werd uitgerold, verbetert de veiligheid van automatische updates aanzienlijk. In deze blogpost gaan we daar wat dieper op in.
Veiligheid van automatische updates
WordPress 5.2 zet de eerste stap naar volledig beveiligde updates met offline, digitale handtekeningen Scott Arciszewski van Paragon Initiative Enterprises legde in een blogpost uit hoe dit precies in zijn werk gaat:
Wanneer je WordPress site een automatische update installeert, zal deze vanaf versie 5.2 eerst controleren of er een x-content-signature header bestaat.
Als deze niet verstrekt wordt door de update server, zal je WordPress site een query uitvoeren voor een filenamehere.sig bestand.
Ongeacht de manier waarop ze worden afgeleverd, de digitale handtekeningen worden berekend met behulp van Ed25519 van de SHA384 hash van het bestand. De handtekening is base64-gecodeerd voor een veilige verzending.
Digitale handtekeningen
WordPress 5.2 bevat een zogeheten signing key die verloopt op 1 april 2021. De verificatiesleutel wordt gebruikt om de geheime sleutel te verifiëren. Deze waarde bepaald de validiteit van de handtekening.
Omdat de feature nog in de experimentele fase zit, maakt WordPress 5.2 updates mogelijk in het geval dat er sprake is van een ‘soft error’ of ongeldige handtekening. Dit is gedaan voor het voorkomen van meer ernstige foutmeldingen waarbij de gebruiker van het update proces wordt buitengesloten, tot een handmatige update wordt uitgevoerd. Het team gebruikt de gerapporteerde foutmeldingen om het handtekening-controleproces te verbeteren.
De digitale handtekeningen worden vooralsnog alleen ondersteund voor core updates. Ondersteuning voor thema’s en plugins zal in een latere update volgen. Het is ook aannemelijk dat het team aparte keys zal maken voor core updates, plugins, thema’s en vertalingen, voor een meer nauwkeurige controle.
Belangrijke mijlpaal
Het toepassen van digitale handtekeningen op WordPress core updates is een belangrijke mijlpaal, omdat het voorkomt dat gebruikers onbewust updates van malafide websites downloaden. Om een voorbeeld te noemen: als de server met de core update bestanden gecompromitteerd zou worden, zou een onrechtmatige update in theorie naar miljoenen websites gestuurd kunnen worden. Toen WordFence in 2016 een kwetsbaarheid ontdekte in api.wordpress.org, legden zij al uit hoe een dergelijk scenario zich zou kunnen ontvouwen.
De aanhouder wint
Arciszewski is zes jaar lang bezig geweest om het WordPress core team te overtuigen om digitaal getekende updates te implementeren. Vier maanden geleden kreeg hij dan eindelijk groen licht om zijn plan te realiseren. Dankzij de inspanningen van Arciszewski en het core team, zijn miljoenen WordPress websites straks een stuk veiliger!