3min Security

Exploitdetails van ernstige Cisco IOS XE-kwetsbaarheid nu openbaar

Exploitdetails van ernstige Cisco IOS XE-kwetsbaarheid nu openbaar

Technische details over een ernstige kwetsbaarheid in Cisco IOS XE WLC voor het uploaden van bestanden, aangeduid als CVE-2025-20188, zijn openbaar gemaakt. Dit brengt een werkende exploit dichterbij, maar ook het voorkomen ervan.

De publicatie van onderzoekers van Horizon3 bevat geen kant-en-klaar RCE-exploitscript. Dat meldt BleepingComputer. Het biedt wel voldoende informatie voor een bekwame aanvaller, of zelfs een taalmodel, om de ontbrekende onderdelen aan te vullen.

Gezien het directe risico op misbruik raadt Cisco getroffen gebruikers aan actie ondernemen om hun systemen te beveiligen.

De Cisco IOS XE WLC-kwetsbaarheid

Cisco maakte de kritieke kwetsbaarheid in IOS XE-software voor Wireless LAN Controllers bekend op 7 mei 2025. Deze stelt een aanvaller in staat om apparaten over te nemen.

Volgens de leverancier wordt dit veroorzaakt door een hardcoded JSON Web Token (JWT). Daarmee kan een ongeauthenticeerde, externe aanvaller bestanden uploaden, padmanipulatie uitvoeren en willekeurige commando’s uitvoeren met rootrechten.

In het beveiligingsbulletin werd vermeld dat CVE-2025-20188 alleen gevaarlijk is wanneer de functie ‘Out-of-Band AP Image Download’ is ingeschakeld op het apparaat. In dat geval lopen de volgende modellen risico:

  • Catalyst 9800-CL Wireless Controllers for Cloud.
  • Catalyst 9800 Embedded Wireless Controller voor Catalyst 9300-, 9400- en 9500-serie switches.
  • Catalyst 9800 Series Wireless Controllers.
  • Embedded Wireless Controller op Catalyst AP’s.

Horizon3’s aanvalsanalyse

De analyse van Horizon3 toont aan dat de kwetsbaarheid bestaat door een hardcoded JWT fallback-secret (‘notfound’). Die wordt door backend Lua-scripts gebruikt bij upload-endpoints, gecombineerd met onvoldoende padvalidatie.

De backend gebruikt OpenResty (Lua + Nginx)-scripts om JWT-tokens te valideren. En om bestanduploads af te handelen. Als het bestand ‘/tmp/nginx_jwt_key’ ontbreekt, gebruikt het script ‘notfound’ als geheime sleutel om JWT’s te verifiëren.

Hierdoor kunnen aanvallers geldige tokens genereren. En wel zonder geheime informatie te kennen, door simpelweg ‘HS256’ en ‘notfound’ te gebruiken.

Het voorbeeld van Horizon3 stuurt een HTTP POST-verzoek met een bestandsupload naar het ‘/ap_spec_rec/upload/’-endpoint via poort 8443. Het gebruikt padmanipulatie in de bestandsnaam om een onschuldig bestand (foo.txt) buiten de bedoelde map te plaatsen.

Om de bestandsuploadkwetsbaarheid te escaleren naar remote code execution, kan een aanvaller configuratiebestanden overschrijven die door backendservices worden geladen, web shells plaatsen of bewaakte bestanden misbruiken om ongeautoriseerde acties uit te voeren.

Het voorbeeld van Horizon3 misbruikt de ‘pvp.sh’-service die specifieke mappen bewaakt, overschrijft de configuratiebestanden waarop deze vertrouwt, en triggert een herlaadactie om commando’s van de aanvaller uit te voeren.

Gezien het verhoogde risico op misbruik wordt gebruikers geadviseerd zo snel mogelijk te upgraden naar een gepatchte versie (17.12.04 of nieuwer).

Als tijdelijke oplossing kunnen beheerders de functie Out-of-Band AP Image Download uitschakelen om de kwetsbare dienst te deactiveren.