← Të gjithë artikujt

Dobësia në Brotli mund të mundësojë code execution në WordPress

Dobësia në Brotli mund të mundësojë code execution në WordPress

Dobësia në Brotli e gjurmuar si CVE-2026-111497 mund t’i lejojë një sulmuesi pa autentikim të ekzekutojë kod përmes WordPress kur përputhen disa kushte të serverit dhe faqes. Google e publikoi dobësinë më 22 tetor 2026, një ditë pasi projekti Brotli nxori publikimet e korrigjuara. Ajo ka një rezultat CVSS v4.0 prej 9,2 nga 10, një vlerësim standard të rrezikshmërisë që e klasifikon si kritike. Dobësia quhet jozyrtarisht edhe HTTP2Shell, Node2Shell dhe Brotli2Shell, megjithëse nuk përfshin protokollin HTTP/2.

Brotli është një format kompresimi dhe bibliotekë software-i që zvogëlon madhësinë e përmbajtjes web gjatë transferimit. Zakonisht ofrohet nga një platformë hosting-u, sistem operativ, container image, web server ose komponent tjetër i serverit, ndaj pronari i një faqeje WordPress mund të mos e shohë kurrë emrin e tij në dashboard. Dobësia nuk ndodhet në WordPress Core, në ndonjë plugin apo theme. Përditësimi i këtyre komponentëve nuk do ta zëvendësojë bibliotekën e prekur Brotli.

CVE-2026-111497 është një out-of-bounds write, që do të thotë se të dhënat e kompresuara me qëllim keqdashës mund ta bëjnë Brotli të shkruajë përtej zonës së memories që i është caktuar. Ky korruptim mund të rrëzojë një proces, të zbulojë informacione të ruajtura në memorie ose të lejojë remote code execution, që do të thotë se një sulmues ekzekuton komanda pa qenë fizikisht i pranishëm. Megjithatë, vetëm gjetja e Brotli në një server nuk vërteton se një faqe mund të shfrytëzohet. Të dhënat e kompresuara të kontrolluara nga sulmuesi duhet të arrijnë te një decoder i cenueshëm përmes një faqeje ose një shërbimi tjetër të ekspozuar.

Publikimet e para të korrigjuara upstream janë Brotli 1.0.10 për versionet 1.0.3 deri në 1.0.9, 1.1.1 për versionin 1.1.0 dhe 1.2.1 për versionin 1.2.0. Ofruesit e Linux dhe hosting-ut mund të bëjnë backport të një korrigjimi, që do të thotë se e shtojnë riparimin e sigurisë në një paketë më të vjetër numerikisht. Debian 13, për shembull, e korrigjoi problemin në libbrotli1 1.1.0-2+deb13u1, megjithëse emri i paketës ende fillon me 1.1.0. Prandaj, administratorët duhet ta krahasojnë revision-in e plotë të paketës me njoftimin e sigurisë të ofruesit, në vend që të mbështeten te tre numrat e parë të versionit.

Proof of concept publik për WordPress përdor XML-RPC, një ndërfaqe WordPress përmes së cilës sisteme të tjera mund të thërrasin funksione të faqes. Një kërkesë pa autentikim thërret pingback.ping te xmlrpc.php dhe jep një adresë web të kontrolluar nga sulmuesi. WordPress e merr atë adresë për të verifikuar se ajo lidhet me një postim të vërtetë. Më pas, serveri i sulmuesit përgjigjet me të dhëna të përgatitura posaçërisht dhe të shënuara si të kompresuara me Brotli. Nëse decoder, build-i i PHP-së dhe organizimi i memories përputhen me payload-in, sulmuesi mund të ekzekutojë kod me lejet që i janë caktuar procesit PHP të faqes.

Kjo rrugë ka disa parakushte. xmlrpc.php duhet të jetë i arritshëm, pingback.ping duhet të jetë i regjistruar, postimi duhet të pranojë ping, serveri duhet të lejohet të bëjë kërkesën dalëse dhe HTTP client i faqes, software-i që merr përmbajtje web, duhet të përdorë decoder-in e prekur. Exploit-i i publikuar gjithashtu duhet të përputhet ngushtë me build-in e PHP-së, runtime environment dhe memory layout. XML-RPC është vetëm trigger-i i zgjedhur nga kjo demonstratë, jo një kërkesë e qenësishme e dobësisë në Brotli. Software të tjera mund ta ekspozojnë të njëjtin decoder, ndërsa plugin-et dhe theme-et mund të krijojnë rrugë shtesë në WordPress.

Wordfence Threat Intelligence riprodhoi code execution pa autentikim në container të izoluar, të cilët janë mjedise software-i të paketuara, duke përdorur WordPress 7.1.3 në Debian 13.7, Apache 2.4.69, PHP 8.3.36 që funksiononte brenda Apache si mod_php dhe paketën e cenueshme Debian libbrotli1 1.1.0-2+b7. Randomizimi standard i memories i sistemit operativ ishte aktivizuar. Pasi vetëm Brotli u përditësua në paketën e korrigjuar të Debian, e njëjta sekuencë nuk ekzekutoi kod dhe serveri vazhdoi të funksiononte normalisht.

Payload-i identik nuk ekzekutoi kod kundër PHP 8.3.35. Në një mjedis të cenueshëm WordPress, ai rrëzoi në vend të kësaj PHP worker. Wordfence thotë se kjo tregon që versioni i PHP-së, i vetëm, nuk e përcakton rezultatin. Build-i dhe runtime-i i saktë mund të përcaktojnë nëse një payload ekzekuton kod, shkakton një rrëzim apo nuk ka asnjë efekt. Sulmuesit mund të identifikojnë nga distanca WordPress, PHP, web server, disponueshmërinë e XML-RPC dhe disa sjellje të kërkesave dalëse, gjë që mund t’i ndihmojë të zgjedhin payload-e për server image që ripërdoren gjerësisht. Kërkesat e zakonshme web normalisht nuk zbulojnë build-in e saktë të kompiluar ose memory layout që nevojitet për ta përshtatur këtë payload me çfarëdo serveri, dhe Wordfence nuk demonstroi një përshtatje të tillë nga distanca.

Ka prova për shënjestrim aktiv, por rezultatet e dokumentuara publikisht mbeten të kufizuara. Agjencia e SHBA-së për Sigurinë Kibernetike dhe të Infrastrukturës e shtoi CVE-2026-111497 në katalogun e saj Known Exploited Vulnerabilities më 27 tetor 2026, pa identifikuar aplikacionin e prekur, viktimën, rrugën apo rezultatin. ELLIO regjistroi një përpjekje të drejtuar ndaj një build-i zyrtar të Node.js, por ajo nuk arriti të siguronte akses në komanda në 50 përsëritje kundër një objektivi të cenueshëm që përputhej. Previdian vazhdoi të shihte përpjekje deri më 2 nëntor, ndërsa theksoi se telemetria e tij nuk mund të tregonte nëse objektivat ishin të cenueshëm apo nëse sulmet patën sukses. Check Point raportoi skanime të automatizuara dhe payload-e të dyshimta, por asnjë komprometim të konfirmuar. Imperva dhe ELLIO arritën veçmas code execution kundër build-eve të cenueshme të Node.js në laboratorë të kontrolluar.

Këto teste tregojnë se shfrytëzimi është i mundur jashtë WordPress, por nuk dokumentojnë një komprometim në production. Deri më 2 nëntor 2026, Wordfence nuk gjeti asnjë raport publik të verifikueshëm në mënyrë të pavarur për një komprometim të suksesshëm në production ose një komprometim përmes rrugës WordPress XML-RPC. Informacioni i kufizuar në hyrjen publike të CISA-s do të thotë se kjo mungesë nuk është provë që shfrytëzimi nuk ka pasur kurrë sukses.

Versioni i WordPress që shfaqet te Tools dhe Site Health nuk mund të tregojë nëse serveri është i mbrojtur. Klientët e managed hosting duhet të pyesin nëse çdo decoder Brotli i përdorur nga faqja e tyre përmban korrigjimin për CVE-2026-111497 dhe nëse të gjitha shërbimet e prekura janë rinisur ose vendosur sërish. Funksioni XML-RPC system.listMethods pa autentikim mund të tregojë nëse pingback.ping është i regjistruar, por ky kontroll i sigurt vërteton vetëm se metoda ekziston, jo se shfrytëzimi është i mundur. Çaktivizimi i pingback-eve të ardhshme te Settings dhe Discussion mund të mos i ndryshojë postimet e vjetra, të cilat mund të ruajnë konfigurimet e mëparshme.

Opsioni Disable XML-RPC authentication i Wordfence nuk i çaktivizon pingback-et pa autentikim. Edhe filter-i me emër të ngjashëm xmlrpc_enabled i WordPress zbatohet vetëm për metodat që kërkojnë autentikim dhe nuk e çaktivizon pingback.ping. Ndryshimi i sjelljes së XML-RPC ose pingback mund të prishë integrime të ligjshme dhe bllokon vetëm rrugën e demonstruar në WordPress. Ai nuk e riparon Brotli.

Administratorët që i menaxhojnë vetë sistemet duhet të instalojnë përditësimin e sistemit operativ ose të platformës së tyre, të verifikojnë revision-in e plotë të paketës dhe të rinisin Apache, PHP-FPM, i cili e ekzekuton PHP-në si shërbim më vete, ose çdo proces tjetër që kishte ngarkuar bibliotekën e vjetër.

Disponueshëm edhe në: EnglishDeutschItaliano