WordPress včera vydal bezpečnostní verzi 7.0.4, která uzavírá vzdálené spuštění kódu (RCE) s hodnocením 8,8 z 10 na stupnici CVSS. Zranitelnost popsaná jako CVE-2026-65640 nepotřebuje otevřený přístup zvenčí, ale stačí k ní účet na úrovni autora a jeden útočníkem připravený „obrázek”.
Proč je verze 7.0.4 důležitá právě teď
Bezpečnostní vydání jádra je vždy výjimečná událost, ale tato má navíc háček: díra míří na zpracování médií, tedy na funkci, kterou používá každý web při běžném nahrávání obrázků. Analýza firmy Patchstack upozorňuje, že zranitelnost „stojí za pochopení, ne jen za jedno kliknutí na aktualizovat” – právě proto, že útočník nemusí prolomit heslo správce, stačí mu málo privilegovaný účet autora. Navíc jde o jednu z mála nedávných chyb, která zasahuje WordPress jádro napříč verzemi od 4.7 až po 7.0, takže se týká i webů, které se drží zpátky na starších větvích kvůli kompatibilitě s pluginy.
Co se přesně stalo
WordPress 7.0.4 vyšel jako čistě bezpečnostní release a sám projekt ho označuje jako nutnou okamžitou aktualizaci. Celou záležitost nahlásil tým pwn.ai, který zranitelnost zodpovědně objevil a umožnil opravu ještě před tím, než by ji někdo zneužil v praxi. Kromě nejnovější řady 7.0 se oprava dostala i do starších větví:
- Backport do všech podporovaných větví až po 4.7
- Zahrnutí do 7.1 RC3, který měl vyjít včera odpoledne
- Automatické aktualizace na pozadí se postarají o weby, které je mají povolené
Za vydáním stojí mimo jiné John Blackbourn jako vedoucí, s výrazným přispěním Dennise Snella a Jeremyho Felta. Odkaz na bezpečnostní advisory je CVE-2026-65640 / GHSA-8vr3-7mxf-gx8w.
Jak je zranitelnost technicky postavená
Základní příčina je kombinace dvou nástrojů, které WordPress běžně používá pro zpracování médií. Když nahrajete obrázek do knihovny médií, WordPress ho předá rozšíření Imagick (rozhraní pro ImageMagick), které ho přeškáluje a zpracuje. Problém je, že ImageMagick rozumí mnohem víc než jen formátům JPEG a PNG:
- Otevírá také PostScript, EPS a PDF
- Pro jejich vykreslení si zavolá nástroj Ghostscript
- A Ghostscript má dlouhou historii bezpečnostních problémů – stejná rodina chyb, jaké zavinily notoricky známé díry „ImageTragick”
Klíčová chyba spočívá v tom, že ImageMagick rozhoduje o typu souboru podle obsahu, zatímco WordPress se spoléhal jen na příponu. Soubor pojmenovaný dovolena.png, který ale uvnitř nese skutečně PostScript, prošel kontrolami nahrávání, byl předán Imagicku, ten poznal PostScript a spustil Ghostscript – a tím celý soubor vykonal jako PostScriptový program.
Kudy se útok vlastně dostane
V jádře WordPressu za celý proces zodpovídá metoda WP_Image_Editor_Imagick::load(). Ta předávala soubor ImageMagicku čistě podle přípony, aniž by kdy zkontrolovala obsah. Volání readImage() nebo readImageBlob() si ale „čte” magické bajty a jméno souboru ignoruje:
- Obsah začínající
%!,\x04%!,\xC5\xD0\xD3\xC6či\xFFWPC - Tenhle podpis vybere ImageMagickův kodek PS/EPS/WPG
- Což spustí Ghostscript, který soubor vykoná jako PostScript
Důležité je, že běžná cesta nahrávání souboru přes funkci wp_check_filetype_and_ext() útok zachytí. Ale ne každá cesta k nahrání tímto kontrolním bodem prochází. Podle bezpečnostní firmy Patchstack existují nejméně dvě, které zapisují přes wp_upload_bits() bez kontroly obsahu:
- XML-RPC rozhraní – svoje
wp.uploadFile - Extrakce obalu (cover art) u nahraných MP3 souborů
V obou případech se payload dostane na disk a až tam dorazí ke zranitelnému kódu.
Koho se to týká a jak vážné to je
Tohle není anonymní útok bez přihlášení. Ke zneužití je potřeba účet s oprávněním nahrávat média, tedy na úrovni autora (Author) a výš. To zní jako uklidnění, ale jen do chvíle, než se zamyslíte, kdo na vašem webu takový účet má:
- Multi-autorské weby a redakce s mnoha přispěvateli
- Členské weby, kde se lidé sami registrují
- Weby klientů se správci a editory z agentury i zákaznické firmy
- Jakékoli weby s otevřenou nebo volně spravovanou registrací
Patchstack to vystihuje jasně: na takovém webu není autor nahrávající nastražený „obrázek” teoretická hrozba, ale naprosto reálná. Naopak pokud web spravuje jen úzký okruh důvěryhodných editorů, je vaše riziko výrazně menší.
Co oprava dělá a co dělat vy
Oprava, konkrétně commit 7daaa50, mění chování metody load(): ta teď zkontroluje obsah souboru ještě před tím, než sestaví objekt Imagick, takže se k dekodéru PostScriptové rodiny nikdy nedostane. Už nestačí oklamat systém jménem souboru.
Nejdůležitější krok pro vás je jednoduchý a nezbytný:
- Aktualizujte WordPress na 7.0.4 – v administraci přes Dashboard → Aktualizace a tlačítko Aktualizovat nyní, nebo stáhněte z WordPress.org
- Zkontrolujte, že datum verze odpovídá – někteří poskytovatelé zpracovávají médií bez Ghostscriptu, ale nehádejte a aktualizujte tak jako tak
- Ověřte velikost rizika – kdo má na webu účty na úrovni autora? Pokud někdo zbytečně, zamezte mu nahrávání
- Sledujte advisory – CVE-2026-65640 / GHSA-8vr3-7mxf-gx8w obsahuje podrobnosti, ať máte po ruce důkaz pro audit i klienty
- Povolte automatické aktualizace na pozadí, aby příští bezpečnostní release váš web nezasáhl „nepřipravený”
Proč tahle díra stojí za pozornost
Na první pohled má vysoký CVSS skóre 8,8, ale vyžaduje přihlášeného autora i specifickou konfiguraci (Imagick + Ghostscript). Přesto nejde o akademickou kuriozitu: cesty přes XML-RPC a MP3 cover art ukazují, že se útočníkovi nabízí víc možností, než by se zdálo, a redakční weby mají pověstně mnoho uživatelů s právem nahrávat. Verze 7.0.4 je dobrá připomínka, že i „obyčejná“ údržbová aktualizace může uzavírat hlubší bezpečnostní díry – a že rychlá aktualizace jádra je levnější než řešení kompromitovaného webu.
Zdroje
Zdroj: WordPress.org – WordPress 7.0.4 Release (12. 8. 2026)
Zdroj: SecurityWeek – WordPress 7.0.4 Patches Remote Code Execution Vulnerability (13. 8. 2026)
Zdroj: Patchstack – When a PNG Isn’t a PNG: WordPress Patches an Author-Level Imagick RCE (12. 8. 2026)
Potřebujete s WordPress webem pomoct? Kontakt najdete přes formulář na stránce Kontakt.