Cyber Security NewsTechnologie

Bösartige JPEG-Bilder lösen PHP-Sicherheitslücken aus

Zwei kritische Speicher-Sicherheitslücken in Bildverarbeitungs-Funktionen könnten Angreifern ermöglichen, sensible Heap-Speicherinhalte preiszugeben oder Denial-of-Service-Angriffe über speziell konstruier

16. Mai 2026DhivyaLive Redaktion
Bösartige JPEG-Bilder lösen PHP-Sicherheitslücken aus

Kurzfassung

Warum das wichtig ist

Cyber Security NewsTechnologie
  • Zwei kritische Speicher-Sicherheitslücken Bildverarbeitungs-Funktionen könnten Angreifern ermöglichen, sensible Heap-Speicherinhalte preiszugeben oder Denial-of-Service-Angriffe über speziell konstruier
  • Diese Mängel, die Forscher Nikita Sveshnikov ext/standard-Erweiterung, betreffen die weit verbreiteten Funktionen getimagesize und iptcembed, die JPEG-Metadaten und IPTC-Daten verarbeiten.
  • PHP-Speicher-Sicherheitslücken Die erste Schwachstelle, mit der CVE-ID CVE-2025-14177 und einem CVSS-Score von 6.3 erfasst, ermöglicht eine Informationspreisgabe, wenn die PHP-Funktion getimagesize JPEG-APP-Segmente Mehrstück-Lese-Modus verarbeitet.

Schwachstelle geht auf einen Fehler in Funktion php_read_stream_all_chunks zurück, Datenstücke bei Lesevorgang ängt. Bei Verarbeitung, Metadaten wie EXIF- oder IPTC-Daten enthalten, weist Funktion uninitialisierten Heap-Speicher zu. Pufferzeiger wird jedoch nach jedem Lesevorgang nicht inkrementiert.

Dadurch überschreiben nachfolgende Blöcke Anfang Puffers, wodurch die letzten Bytes uninitialisiert bleiben Fragmente Prozessspeichers offengelegt werden. Angreifer können diese Schwachstelle ausnutzen, indem sie JPEG-Dateien mit großen APP1-Segmenten erstellen, die über mehrere Blöcke hinweg gelesen werden sollen, insbesondere wenn Standard-Blöckengröße von 8.192 Bytes bekannt ist.

Wenn Anwendungen diese bösartigen Bilder über php://filter oder andere Mechanismen zur mehrblöckigen Leseverarbeitung verarbeiten, wird uninitialisierte Heap-Daten, die potenziell sensible Informationen enthält, in das ückgegebene Array $info['APPn'] kopiert.

Malicious JPEG Images Could Trigger PHP Memory Safety Vulnerabilities
Malicious JPEG Images Could Trigger PHP Memory Safety Vulnerabilities

Angriffsfläche ist insbesondere bei öffentlich zugänglichen

Angriffsfläche ist insbesondere bei öffentlich zugänglichen Upload-Endpunkten, Content-Management-Systemen, Miniaturbilder generieren, Webmail-Diensten Bild-CDNs, die eine serverseitige Analyse ühren, können Schwachstelle ausnutzen, wenn sie einen anfälligen PHP-Prozess dazu veranlassen können, getimagesize auf.

Heap-Buffer-Overflow in iptcembed Die zweite Schwachstelle betrifft Funktion iptcembed, die binäre IPTC-Daten in JPEG-Bilder einbettet. Dieser klassische Heap-Buffer-Overflow entsteht durch einen „measure once, read forever"-Fehler: Funktion weist einen Ausgabepuffer basierend auf einem einzigen fstat-Ergebnis zu und liest Daten bis Ende Datei (EOF) weiter, ohne Kapazitätsprüfungen durchzuführen.

Ursache liegt darin, wie iptcembed nichtstandardkonforme Dateitypen wie FIFOs, Pipes Sockets verarbeitet. Bei diesen Dateitypen ist Feld st_size, das ückgegeben wird, gleich 0, wodurch Funktion einen zu kleinen Puffer zuweist.

Bösartige JPEG-Bilder lösen PHP-Sicherheitslücken aus
Bösartige JPEG-Bilder lösen PHP-Sicherheitslücken aus

Code kopiert Eingabedaten anschließend in Puffer

Code kopiert Eingabedaten anschließend in Puffer spoolbuf, ohne den verfügbaren Speicherplatz zu überprüfen, was Schreibzugriffen außerhalb Grenzen führt, wenn Datenstrom mehr Daten enthält, als zugewiesen wurden. Diese Schwachstelle führt zudem zu einem Race Condition Typ „Time-of-Check Time-of-Use" (TOCTOU), bei dem reguläre Dateien nach Aufruf, aber vor Abschluss Leseoperation Größe zunehmen können.

Angreifer können dies ausnutzen, indem sie große Datenmengen über speziell gestaltete JPEG-Strukturen einleiten, die Parser in Modus „alles bis Ende Datei lesen" zwingen und so eine Heap-Korruption auslösen.

Beide Schwachstellen nutzen Schwachstellen Speichermanagement Zend Engine, insbesondere Funktionen Verarbeitung getimagesize betrifft Funktion php_read_APP, die anwendungsspezifische Segmente (APP0–APP15) verarbeitet, Metadaten wie EXIF-Koordinaten, IPTC-Autoreninformationen und XMP-Daten enthalten.

Bösartige JPEG-Bilder lösen PHP-Sicherheitslücken aus
Bösartige JPEG-Bilder lösen PHP-Sicherheitslücken aus

Für CVE-2025-14177 beginnt der anfällige Codepfad,

Für CVE-2025-14177 beginnt der anfällige Codepfad, wenn getimagesize Speicher mit emalloc allokiert, was initialisierte Speicherzeiger zurückgibt. Tritt Lesen mehrerer Blöcke auf, schreibt der php_stream_read-Makro an dieselbe Zieladresse, ohne Verschiebungen für bereits gelesene Bytes anzuwenden, wodurch der letzte Block Anfang Puffers überschreibt, während Endbereich unberührt bleibt.

Pufferüberlauf in iptcembed tritt beim Verarbeiten von M_APP13- oder M_SOS (Start Scans)-Markern auf, bei denen Parser in den php_iptc_read_remaining-Modus wechselt Daten bis Dateiende kopiert. Die anfällige Funktion php_iptc_get1 vergrößert Schreibzeiger (poi) für jedes Byte, ohne die zugewiesene spoolbuf_end-Grenze zu prüfen. Forscher haben beide Schwachstellen durch praktische Exploits nachgewiesen.

Für Speicheroffenbarungs-Schwachstelle erstellten sie ein minimales JPEG mit einem großen APP1-Segment, das über mehrere 8.192-Byte-Blöcke hinweg gelesen werden soll. Anschließend führten Heap-Spraying Marker-Strings durch, um Speicher zu füllen, und lasen Datei über php://filter, um Verarbeitung in mehreren Blöcken zu erzwingen.

Bösartige JPEG-Bilder lösen PHP-Sicherheitslücken aus
Bösartige JPEG-Bilder lösen PHP-Sicherheitslücken aus

Proof-of-Concept gelang es erfolgreich, Marker-String „LEAK-MARKER-123!"

Proof-of-Concept gelang es erfolgreich, Marker-String „LEAK-MARKER-123!" aus nicht initialisiertem Heap-Speicher zu entlarven. Der iptcembed-Überlauf wurde mit einer Zwei-Terminal-Konfiguration unter Verwendung benannter Rohre (FIFO) demonstriert, bei der Terminal PHP aus Rohr liest und ein anderes eine angefertigte JPEG-Struktur gefolgt von 8 Daten einspeist.

Da FIFOs den st_size-Wert als null melden, war der zugewiesene Puffer zu klein, um den eingehenden Datenstrom aufzunehmen, AddressSanitizer Erkennen Heap-Pufferüberlaufs veranlasste.

Patches Sanierung: PHP-Entwickler adressierten CVE-2025-14177, indem sie php_read_stream_all_chunks so modifizierten, dass Pufferzeiger nach jeder Leseoperation vorangeschoben wird (buffer += read_now), um das sequenzielle Anhängen öcken sicherzustellen. Behebung wurde durch eine Regressionstest unter ext/standard/tests/image/gh20584.phpt begleitet, um zukünftige Vorkommnisse zu verhindern.

Für die IPTC-Embed-Schwachstelle fügten Entwickler Parameter

Für die IPTC-Embed-Schwachstelle fügten Entwickler Parameter spoolbuf_end zu Funktionen php_iptc_get1 und php_iptc_put1 hinzu, Grenzwertprüfungen durchzusetzen. Der aktualisierte Code gibt nun sicher EOF zurück, wenn Puffer voll ist, statt außerhalb Grenzen zu schreiben.

Organisationen sollten unverzüglich alle Hosts Container, die PHP ausführen, inventarisieren, wobei öffentlich zugängliche Upload-Endpunkte, CMS-Thumbnailer, Webmail-Systeme Bild-CDNs priorisiert werden. Updates sollten auf die neuesten gepatchten Versionen angewendet werden: 8.1.34, 8.2.30, 8.3.29, 8.4.16 oder 8.5.1 und höher.

Divya ist eine Senior Journalistin Cyber Security news und berichtet über Cyber-Angriffe, Bedrohungen, Datenschutzverletzungen, Schwachstellen und andere Ereignisse in Cybersicherheit.

Verwandter Beitrag Kritisches Linux-Kernel-Schwachstellen „ssh-keysign-pwn" gefährdet SSH-Schlüssel Shadow-Passwörter Offenbare Schwachstellen OpenClaw gefährden 245.000 öffentliche KI-Agenten-Server gegenüber Angriffen Android 16-VPN-Umgehungslauf ermöglicht bösartigen Apps, die echte IP-Adresse Nutzer offenzulegen Neueste Beiträge Cybersecurity-Nachrichten Eine kürzlich enthüllte Linux-Kernel-Schwachstelle weckt ernste Bedenken in Sicherheitsgemeinschaft, da… Google Project Zero veröffentlicht eine Zero-Click-Exploit-Kette für Pixel 10-Geräte Eine kürzlich enthüllte Zero-Click-Exploit-Kette, Google Pixel 10-Geräte zielt, hat neue Bedenken ausgelöst… Ein kürzlich offengelegter Fehler Android 16 wirft ernste Datenschutzbedenken auf, nachdem Forscher… Gunra-Ransomware erweitert ihre RaaS-Operationen nach Wechsel ist schnell einem ernsthaften globalen Problem geworden, das… Eine Kette aus vier kritischen Schwachstellen wurde OpenClaw entdeckt, einer der am schnellsten wachsenden Open-Source-Plattformen… Shai-Hulud-Wurm stiehlt npm-, GitHub-, AWS- Kubernetes-Schlüssel ährliche neue Malware namens Shai-Hulud hat sich zu einer der… entwickelt

Quellenprofil

Quelle und redaktionelle Angaben

Quelle
Cyber Security News
Originaltitel
Malicious JPEG Images Could Trigger PHP Memory Safety Vulnerabilities
Canonical
https://cybersecuritynews.com/malicious-jpeg-images-php-memory-safety-vulnerabilities/
Quell-URL
https://cybersecuritynews.com/malicious-jpeg-images-php-memory-safety-vulnerabilities/

Aehnliche Inhalte

Verwandte Themen und interne Verlinkung

Weitere Artikel aus aehnlichen Themenfeldern, damit Leser direkt im selben Kontext weiterlesen koennen.