Groot zwevendekommagetal laat PHP bevriezen

php

Artikelgereedschap

  • Tip ons
  • Printen
  • Reacties (7)
2x Aanbevolen

Gepubliceerd: Vrijdag 7 januari 2011
Auteur: Uhro van der Pluijm

De ontwikkelaars van de scripttaal PHP hebben een bug in de software gefikst die servers laat crashen als er een groot zwevendekommagetal wordt omgezet. Deze bug is uit te buiten door kwaadwillenden.

Ontwikkelaars van de scriptsoftware PHP hebben een bug gerepareerd die servers waarop de software is geïnstalleerd kan laten bevriezen . Deze bug treedt op als iemand een getal als 2.2250738585072011e-308 (ook in niet-wetenschappelijke notatie) om wil zetten naar een zwevendekommagetal. Dat is de digitale versie van de wetenschappelijke notatie van getallen.

Infinite loop

Door die opdracht uit te voeren komt de PHP-software in een infinite loop terecht. Het cpu-gebruik loopt daardoor op naar 100% en de computer waarop de opdracht wordt uitgevoerd bevriest. Dat geldt echter alleen als die computer een x86 processor heeft en een 32-bits versie van PHP 5.2 of 5.3 draait.

Meerdere gebruikers van PHP merken op dat deze bug is uit te buiten door kwaadwillenden. Die kunnen een ongepatchte server laten crashen door het grote getal mee te sturen als parameter in een GET-request. Met dat commando vraagt een webbrowser pagina's van de webserver op.

Nieuwe versie

De bug werd maandag 3 januari voor het eerst gemeld. Woensdag kwam er al een snelle patch uit voor de module in de software die de bug veroorzaakte. Inmiddels hebben de ontwikkelaars van PHP nieuwe versies van de software vrijgegeven waarin het probleem helemaal is opgelost.

Ook het volledig opnieuw compileren van PHP met enkele aangepaste instellingen voor zwevendekommagetallen lost het probleem op, zo melden de ontwikkelaars van de software.

Script om te testen

PHP heeft een script online gezet waarmee serverbeheerders na kunnen gaan of hun systemen vatbaar zijn voor de bug. Is dat zo, dan raadt PHP hen met klem aan om zo snel mogelijk de nieuwste versie van de software te installeren.

Ook Zend Technologies brengt een patch uit voor het commerciële ZendServer. Een applicatieserver met een geoptimaliseerde versie van PHP. De module in PHP die last heeft van de bug is namelijk oorspronkelijk gemaakt door Zend. Hun versie van de software is dus ook vatbaar voor het probleem.

Relevante whitepapers

Alle whitepapers >>

Nieuwsbrief

Ontvang dagelijks een overzicht van het laatste ICT-Nieuws in uw mailbox

Whitepapers

  • Maximaliseer het voordeel van SaaS

    Cloud-applicaties hebben grote invloed op het gebruik van de IT-architectuur en niet ieder project levert de verwachte voordelen op.

    Downloaden
  • Flexibele IT noodzaak voor bankenOnderzoeksrapport over de beperkte flexibiliteit van veel IT-systemen in de bancaire wereld. Lees meer!
  • Kostenbesparing voor long tail appsOplossing voor kostenkwesties in VDI. Technologie geschikt voor long tail apps.
» Meer whitepapers

Peiling

Loading Poll

Video: Review: HTC One X-smartphone met vijf...

Review: HTC One X-smartphone met vijf cores (video)