CVE-2026-100717: Kritisk CRLF-fejl i Froxlor administrationspanel
Froxlor (CVE-2026-100717) lader en lavprivilegeret kunde kapre serverens webkonfiguration. Opdatér til 2.3.12 nu.
Hvad er det?
Froxlor er et selvhostet administrationspanel, som mange webhoteller og it-afdelinger bruger til at oprette og styre domæner, underdomæner og mailkonti på egne servere. Sårbarheden er en CRLF-injektion (CWE-93), hvor et angreb indsætter usynlige linjeskift-tegn i data for at snyde et system til at tolke tekst som kommandoer i stedet for almindeligt indhold. Froxlors validering tjekker kun dele af en webadresse for disse tegn, men overser den del, der ligger før snabel-a’et (såkaldt userinfo). En kunde med ret til at oprette underdomæner kan derfor snige linjeskift ind i denne del af en omdirigerings-adresse. Værdien består valideringen og bliver skrevet direkte ind i den nginx- eller Apache-konfiguration, som Froxlor genererer. Da Froxlor genstarter webserveren som root, får den indsatte tekst fuld effekt på hele serveren.
Hvem rammer det?
Det rammer alle, der kører Froxlor version 2.3.10 eller ældre, typisk hostingudbydere, it-afdelinger og webbureauer, der administrerer flere kunders domæner på samme server. Sårbarheden kræver kun, at en kunde har rettighed til at oprette underdomæner, en meget almindelig standardrettighed. Der kræves ikke administratoradgang eller adgang til serverindstillinger.
Hvad kan ske?
En kunde med et almindeligt konto kan indsætte vilkårlige konfigurationslinjer i den webserver, som Froxlor styrer. Fordi konfigurationen genindlæses som root, kan angrebet omdirigere trafik for andre kunders domæner, læse følsomme filer på serveren eller ændre, hvordan hele serveren svarer på forespørgsler. I praksis betyder det, at en enkelt lavprivilegeret bruger kan overtage kontrollen med en delt server, der huser flere virksomheders hjemmesider og mail.
Hvor alvorligt er det?
CVSS-score er 9,9 ud af 10, hvilket er kritisk. Angrebet kræver et lavprivilegeret login, men ingen administratoradgang og ingen handling fra en anden bruger. Kompleksiteten er lav, så et angreb kan udføres af en teknisk kyndig kunde uden særlige forudsætninger. Der findes en offentligt beskrevet fremgangsmåde med et konkret eksempel på den skadelige adresse, men vi kender ikke til dokumenteret udnyttelse i drift på offentliggørelsestidspunktet.
Hvad gør jeg nu?
Handl i denne rækkefølge:
- Opdatér Froxlor til version 2.3.12 eller nyere, hvor fejlen er rettet.
- Gennemgå hvilke kunder der har rettighed til at oprette underdomæner, og fjern rettigheden midlertidigt, hvis I ikke kan opdatere med det samme.
- Kontrollér nginx- og Apache-konfigurationsfilerne for uventede eller ukendte linjer, der kan stamme fra tidligere misbrug.
- Gennemgå logfiler for underdomæneoprettelser med usædvanlige tegn i URL-felter, især omkring userinfo-delen af adresser.
- Genstart webserveren efter opdatering, så en eventuel allerede indsat konfiguration bliver overskrevet af den rensede version.
- Kontakt en ekstern sikkerhedsrådgiver, hvis I finder tegn på misbrug, eller hvis I hoster mange kunder og har brug for hjælp til at verificere konfigurationen efter opdatering.
Opdatér inden for 48 timer
Vi anbefaler at opdatere til Froxlor 2.3.12 så hurtigt som muligt, da sårbarheden kan udnyttes af enhver kunde med ret til at oprette underdomæner, hvilket er en almindelig standardrettighed. Det er ikke forsvarligt at vente til en planlagt vedligeholdelsesrunde, fordi angrebet kræver hverken administratoradgang eller brugerinteraktion. Har I ikke mulighed for at opdatere med det samme, bør I midlertidigt fjerne kunders ret til at oprette underdomæner og overvåge konfigurationsfilerne tæt.
Tidslinje
Konkrete eksempler
Delt hostingserver hos et dansk webbureau
Et dansk webbureau bruger Froxlor til at give kunder selvbetjent adgang til at oprette underdomæner på en fælles server. En kunde opretter et underdomæne med en omdirigerings-adresse, der indeholder skjulte linjeskift-tegn i adressens brugerdel. Froxlor skriver adressen direkte ind i webserverens konfiguration og genstarter serveren som root, hvorved kundens indsatte kommandoer får effekt for alle andre kunders hjemmesider på samme server.
Ofte stillede spørgsmål
Er vi ramt af denne sårbarhed?
I er ramt, hvis I kører Froxlor i version 2.3.10 eller ældre til at administrere webserverkonfigurationen, og mindst én bruger har rettighed til at oprette underdomæner. Tjek jeres installerede version i Froxlors administrationsside.
Hvordan tjekker vi, om vi allerede er blevet ramt?
Gennemgå de genererede nginx- eller Apache-konfigurationsfiler for underdomæner og se efter uventede linjer eller kommandoer, der ikke stammer fra jeres egen opsætning. Se også i logfiler for underdomæneoprettelser med usædvanlige tegn i URL-feltet.
Kan vi vente til weekenden med at opdatere?
Det frarådes. Sårbarheden kræver kun et almindeligt kundelogin og ingen brugerinteraktion fra andre, så den kan udnyttes med det samme af enhver, der har rettighed til at oprette underdomæner.
Skal vi anmelde hændelsen, hvis vi finder tegn på misbrug?
Ja. Hvis I finder beviser på, at nogen har udnyttet sårbarheden til at ændre serverkonfiguration eller læse data, bør I vurdere anmeldelsespligt efter databeskyttelsesreglerne og overveje at kontakte CFCS eller en ekstern sikkerhedsrådgiver.
Er det nok at fjerne kundens rettighed til at oprette underdomæner?
Det reducerer risikoen midlertidigt, men lukker ikke selve fejlen. Kun opdatering til version 2.3.12 retter den underliggende valideringsfejl.
Påvirker sårbarheden også mailservere administreret via Froxlor?
Selve fejlen ligger i genereringen af web-server-konfiguration, men da webserveren og andre tjenester ofte deler samme root-adgang og server, kan et vellykket angreb potentielt påvirke hele serverens drift, herunder mail.
CVSS-detaljer
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:L/I:H/A:H
CWE-svaghedstyper
Original NVD-beskrivelse (engelsk)
froxlor is a server administration panel. In versions 2.3.10 and earlier, Validate::validateUrl rejects carriage return and line feed characters only in the path, query and fragment components returned by parse_url, and never inspects the userinfo (user:pass@) components. This is an incomplete fix for GHSA-c3p2. An authenticated low-privilege customer with subdomain-create rights (no admin or change_serversettings privilege required) can supply a subdomain redirect URL that carries a CR/LF payload in the userinfo portion (e.g. http://user%0areturn 200 “pwned”;%0a@evil.com/). The value passes validation, survives IDNA encoding, and is written verbatim into the generated nginx or Apache vhost configuration, allowing the attacker to break out of the emitted directive and inject arbitrary web-server configuration lines. froxlor regenerates and reloads the web-server configuration as root, so the injected directives take effect server-wide and can hijack responses or read local files. The issue is fixed in version 2.3.12.
Referencer & kilder
Eksterne kilder
Brug for hjælp med jeres sikkerhed?
Vi hjælper SMV’er med at omsætte trusler som denne til konkrete handlingsplaner.