CVE-2026-55203: Alvorlig fejl i HAProxy forklaret
Fejl i HAProxy kan lade ondsindede backend-servere forvirre din webserver og snige falske svar igennem til dine brugere.
Hvad er det?
HAProxy er et meget udbredt stykke software, der fordeler webtrafik mellem servere (en såkaldt load balancer og reverse proxy). En fejl i versioner op til og med 3.4.0 gør, at et tal i software-koden kan ‘løbe over’ (integer overflow — når et tal bliver større end computeren kan håndtere og nulstilles til 0). Det sker specifikt i håndteringen af FastCGI-protokollen, som bruges til at sende forespørgsler videre til f.eks. PHP-applikationer. Resultatet er, at HAProxy mister overblikket over, hvilke datapakker der hører til hvilke svar, og det kan udnyttes af en ondsindet backend-server til at manipulere trafikken.
Hvem rammer det?
Fejlen rammer dig, hvis din virksomhed bruger HAProxy som mellemmand (proxy eller load balancer) foran webapplikationer der kører via FastCGI — typisk PHP-baserede systemer som WordPress, Drupal eller hjemmeudviklede løsninger. Det er særligt relevant hvis:
- Du hoster din egen webshop eller hjemmeside på egne servere eller i en sky-infrastruktur.
- Din IT-leverandør bruger HAProxy i din infrastruktur.
- Du bruger en hostingløsning, hvor HAProxy indgår som en del af arkitekturen.
Har du ingen FastCGI-backends bag HAProxy, er du ikke i umiddelbar risiko.
Hvad kan ske?
En angriber, der kontrollerer eller har kompromitteret en FastCGI-backend-server (altså en server bag HAProxy), kan udnytte fejlen til at:
- Response smuggling: Indsmugle falske HTTP-svar, så dine brugere modtager manipuleret indhold — f.eks. fejlagtige betalingssider eller phishing-sider der ser legitime ud.
- Fejlrouting: Få forespørgsler fra én bruger til at ende med en anden brugers svar, hvilket kan lede til utilsigtet datalæk.
- Hukommelseskorruption: I værste fald kan fejlen medføre ustabilitet eller åbne for yderligere angreb mod selve HAProxy-processen.
Angrebet kræver adgang til backend-laget, men kræver hverken login eller brugerinteraktion, og det kan udføres over netværket.
Hvor alvorligt er det?
CVE’en er vurderet til 7.5 (Alvorlig) på CVSS-skalaen (en international standard for sårbarhedssværhedsgrad fra 0–10). Kompleksiteten er høj, hvilket betyder at angrebet kræver specifikke betingelser, men til gengæld kræves der hverken login eller brugerhandling. Integriteten (dvs. korrektheden af data og svar) er vurderet som højt truet, mens fortrolighed og tilgængelighed er lavere risici. Samlet set er det en sårbarhed, der bør tages alvorligt — særligt fordi den kan misbruges til at manipulere, hvad dine kunder og medarbejdere ser i browseren.
Hvad gør jeg nu?
Følg disse trin for at håndtere sårbarheden:
- Find ud af om du bruger HAProxy: Spørg din IT-ansvarlige eller leverandør om HAProxy indgår i din infrastruktur, og hvilken version der kører.
- Opdatér HAProxy: Rettelsen er tilgængelig via commit 5985276 i HAProxy’s kildekode. Opdatér til en version der inkluderer denne rettelse — kontakt din leverandør hvis du er usikker på, hvordan du gør.
- Vurdér dine FastCGI-backends: Tjek om de servere, der kommunikerer med HAProxy via FastCGI, er sikre og ikke kan kompromitteres af uvedkommende.
- Isolér backend-netværket: Sørg for at backend-servere (dem bag HAProxy) ikke er tilgængelige direkte fra internettet, og at netværksadgang er begrænset til kun det nødvendige.
- Overvåg trafik og logs: Hold øje med usædvanlige mønstre i HAProxy-logfiler, f.eks. uventede fejlkoder eller mærkelig routing-adfærd.
Opdatér inden for 14 dage
Vi anbefaler, at du kontakter din IT-leverandør eller driftsansvarlige allerede i dag og beder dem bekræfte, om HAProxy er i brug, og om rettelsen er planlagt. Da angrebet kræver adgang til backend-laget, er din umiddelbare risiko lavere, hvis dine servere allerede er godt isolerede — men rettelsen bør stadig gennemføres inden for 14 dage. Brug lejligheden til at få styr på, hvilke services der kommunikerer bag din proxy, så I fremover hurtigt kan reagere på lignende sårbarheder.
Tidslinje
Konkrete eksempler
Falsk betalingsside via response smuggling
En angriber, der har kompromitteret en backend-server bag HAProxy, sender bevidst misdannede FastCGI-pakker med contentLength på 65535 og en paddingLength på mindst 1. HAProxy’s tæller nulstilles og den mister overblikket over pakkestrukturen. Resultatet er, at en legitim brugers forespørgsel på ‘betal nu’-siden modtager et svar beregnet til en anden session — f.eks. en manipuleret betalingsbekræftelse eller en side der beder om at genindtaste kortoplysninger.
Datalæk mellem brugersessioner
I en webshop med mange samtidige brugere udnytter en angriber fejlen til at forskyде HAProxy’s fortolkning af svarene fra backend. Bruger A’s indkøbskurv eller ordrehistorik sendes ved en fejl til Bruger B’s browser. Det sker uden at hverken bruger A, bruger B eller webshoppen opdager det — og det udgør et brud på persondataforordningen (GDPR).
Forberedelse til dybere angreb via hukommelseskorruption
En teknisk avanceret angriber med kontrol over en FastCGI-backend sender en serie af bevidst konstruerede pakker, der gentagne gange får drl-feltet til at løbe over. Over tid kan dette destabilisere HAProxy-processen og potentielt åbne for hukommelsesrelaterede angreb, der giver angriberen mulighed for at køre vilkårlig kode på den server, der kører HAProxy.
Ofte stillede spørgsmål
Vi bruger bare en almindelig hjemmeside med WordPress — er vi i fare?
Muligvis. Mange WordPress-installationers serverkonfiguration bruger FastCGI (typisk via PHP-FPM) til at køre PHP-kode. Hvis din hosting-løsning bruger HAProxy foran din WordPress-server, bør du spørge din udbyder, om de har opdateret. De fleste professionelle hostingudbydere vil håndtere dette automatisk, men det er værd at tjekke.
Skal vi lukke vores hjemmeside ned, mens vi opdaterer?
Ikke nødvendigvis. HAProxy kan i mange tilfælde opdateres med minimal nedetid vha. en såkaldt ‘graceful reload’, der ikke afbryder aktive forbindelser. Din IT-leverandør kan rådgive om, hvordan I bedst gennemfører opdateringen i jeres specifikke opsætning uden at påvirke brugerne.
Hvad er FastCGI, og bruger vi det?
FastCGI er en kommunikationsprotokol, som webservere bruger til at sende forespørgsler videre til programmer — f.eks. PHP-scripts, der driver hjemmesider som WordPress. Bruger I PHP på jeres server, er chancen stor for at FastCGI også er i brug. Spørg jeres IT-ansvarlige, om det er tilfældet.
Er der en midlertidig løsning, hvis vi ikke kan opdatere med det samme?
Den primære løsning er at opdatere HAProxy til en version med rettelsen. En midlertidig afhjælpning kan være at sikre, at ingen uautoriserede parter kan kommunikere med jeres FastCGI-backend-servere — altså at backend-laget er strengt isoleret fra internettet og utilgængeligt for uvedkommende. Dette reducerer risikoen, men fjerner ikke sårbarheden.
Hvem er ansvarlig for at opdatere HAProxy i vores virksomhed?
Det afhænger af jeres opsætning. Bruger I en managed hosting-udbyder, bør I kontakte dem og spørge eksplicit om status på opdateringen. Driver I selv serverne med hjælp fra en IT-partner, er det jeres partner der bør handle. Har I eget IT-team, er det deres ansvar. Uanset hvad: Spørg aktivt og bed om skriftlig bekræftelse på at rettelsen er gennemført.
Ramte produkter
CVSS-detaljer
CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:C/C:L/I:H/A:N
CWE-svaghedstyper
Original NVD-beskrivelse (engelsk)
HAProxy through 3.4.0, fixed in commit 5985276, contains an integer overflow vulnerability in the fcgi_conn structure’s drl field that allows buffer misparse as new FCGI record headers. When contentLength is 65535 and paddingLength is 1 or more, the drl field wraps to 0, causing incorrect record consumption and allowing malicious FastCGI backends to desynchronize the FCGI framing parser, potentially causing request routing errors, response smuggling, or memory safety issues.
Brug for hjælp med jeres sikkerhed?
Vi hjælper SMV’er med at omsætte trusler som denne til konkrete handlingsplaner.
