Proof-of-Concept-exploit vrijgegeven voor OpenEdge-kwetsbaarheid in Progress-software

Er zijn technische details en een proof-of-concept (PoC)-exploit beschikbaar gesteld voor een onlangs onthulde kritieke beveiligingsfout in Progress Software OpenEdge Authentication Gateway en AdminServer, die mogelijk zou kunnen worden misbruikt om authenticatiebeveiligingen te omzeilen.

Bijgehouden als CVE-2024-1403, heeft de kwetsbaarheid een maximale ernstbeoordeling van 10,0 op het CVSS-scoresysteem. Het heeft invloed op OpenEdge-versies 11.7.18 en eerder, 12.2.13 en eerder, en 12.8.0.

“Wanneer de OpenEdge Authentication Gateway (OEAG) is geconfigureerd met een OpenEdge-domein dat gebruikmaakt van de lokale authenticatieprovider van het besturingssysteem om logins met gebruikers-ID en wachtwoord toe te staan ​​op besturingssystemen die worden ondersteund door actieve releases van OpenEdge, kan een kwetsbaarheid in de authenticatieroutines leiden tot ongeoorloofde toegang bij inlogpogingen”, aldus het bedrijf in een advies dat eind vorige maand werd uitgebracht.

“Op dezelfde manier, wanneer een AdminServer-verbinding tot stand wordt gebracht door OpenEdge Explorer (OEE) en OpenEdge Management (OEM), maakt deze ook gebruik van de lokale authenticatieprovider van het besturingssysteem op ondersteunde platforms om logins met gebruikers-ID’s en wachtwoorden te verlenen die ook kunnen leiden tot ongeautoriseerde login-toegang. “

Progress Software zegt dat de kwetsbaarheid het authenticatiesucces van een lokaal OpenEdge-domein ten onrechte retourneert als onverwachte soorten gebruikersnamen en wachtwoorden niet op de juiste manier worden afgehandeld, wat leidt tot ongeoorloofde toegang zonder de juiste authenticatie.

De fout is verholpen in versies OpenEdge LTS Update 11.7.19, 12.2.14 en 12.8.1.

Horizon3.ai, dat de kwetsbare AdminServer-service heeft reverse-engineered, heeft sindsdien een PoC voor CVE-2024-1403 uitgebracht, waarin staat dat het probleem zijn oorsprong vindt in een functie genaamd connect() die wordt aangeroepen wanneer een externe verbinding tot stand wordt gebracht.

Deze functie roept op zijn beurt een andere functie aan met de naam autorizeUser() die valideert dat de opgegeven inloggegevens aan bepaalde criteria voldoen, en geeft de controle door aan een ander deel van de code dat de gebruiker rechtstreeks authenticeert als de opgegeven gebruikersnaam overeenkomt met “NT AUTHORITYSYSTEM”.

“Een dieper aanvallersoppervlak lijkt een gebruiker in staat te stellen nieuwe applicaties te implementeren via externe WAR-bestandsreferenties, maar de complexiteit is dramatisch toegenomen om dit aanvalsoppervlak te bereiken vanwege het gebruik van interne service message brokers en aangepaste berichten”, zegt beveiligingsonderzoeker Zach. zei Hanley.

“Wij geloven dat er bij voldoende onderzoeksinspanning waarschijnlijk opnieuw een mogelijkheid bestaat om code op afstand uit te voeren via ingebouwde functionaliteit.”

Thijs Van der Does