PHP: Denial-of-Service-Attacke möglich

In PHP wurden kürzlich zwei Schwachstellen entdeckt, die es einem entfernten Angreifer erlauben Denial-of-Service-Attacken durchzuführen. Der erste Programmierfehler befindet sich in der »zend_ts_hash_graceful_destroy()«-Funktion (»zend_ts_hash.c«-Datei). Hier kann ein Angreifer dafür sorgen, dass ein Speicherbereich fälschlicherweise zweimal freigegeben wird, was zu einem Absturz führen kann. Dabei handelt es sich um den Speicher für »ht->mx_reader«. Im fehlerhaften Code finden sich folgende Anweisungen:

tsrm_mutex_free(ht->mx_reader);
tsrm_mutex_free(ht->mx_reader); 

was offensichtlich falsch ist. Statt »ht->mx_reader« sollte im zweiten Aufruf eigentlich »ht->mx_writer« freigegeben werden. Betroffen hiervon sind die Versionen 5.5.20 und 5.6.x bis 5.6.4.

Eine weitere Schwachstelle im PHP-Speichermanagement tritt in der »apprentice_load()«-Funktion (»libmagic/apprentice.c«-Datei) auf. Auch hier kann ein Angreifer für eine falsche Speicherfreigabe sorgen und so eine Denial-of-Service-Attacke durchführen. Betroffen hiervon sind die Versionen 5.6.4 und älter.

Nach oben