Er zijn beveiligingslekken ontdekt in de industriële oplossing voor externe toegang Ewon Cosy+. Deze kunnen worden misbruikt om root-rechten voor apparaten te verkrijgen en vervolgaanvallen uit te voeren.
De verhoogde toegang kan vervolgens worden ingezet om versleutelde firmwarebestanden en versleutelde gegevens, zoals wachtwoorden in configuratiebestanden, te decoderen en zelfs om correct ondertekende X.509 VPN-certificaten te verkrijgen, zodat externe apparaten hun VPN-sessies kunnen overnemen.
“Hierdoor kunnen aanvallers VPN-sessies kapen, wat leidt tot aanzienlijke veiligheidsrisico’s voor gebruikers van Cosy+ en de aangrenzende industriële infrastructuur”, aldus Moritz Abrell, beveiligingsonderzoeker bij SySS GmbH, in een nieuwe analyse.
De bevindingen werden afgelopen weekend gepresenteerd op de DEF CON 32-conferentie.
De architectuur van Ewon Cosy+ omvat het gebruik van een VPN-verbinding die via OpenVPN naar een door de leverancier beheerd platform genaamd Talk2m wordt geleid. Technici kunnen op afstand verbinding maken met de industriële gateway via een VPN-relay die via OpenVPN plaatsvindt.
Het Duitse pentestbedrijf zei dat het een kwetsbaarheid in de command injection van het besturingssysteem en een filteromzeiling had kunnen ontdekken waarmee een reverse shell kon worden verkregen door een speciaal vervaardigde OpenVPN-configuratie te uploaden.
Een aanvaller zou vervolgens misbruik kunnen maken van een persistente cross-site scripting (XSS)-kwetsbaarheid en het feit dat het apparaat de Base64-gecodeerde inloggegevens van de huidige websessie opslaat in een onbeschermde cookie met de naam ‘referenties’ om zo beheerdersrechten te verkrijgen en uiteindelijk de sessie te rooten.

“Een niet-geverifieerde aanvaller kan root-toegang tot de Cosy+ krijgen door de gevonden kwetsbaarheden te combineren en bijvoorbeeld te wachten tot een beheerder inlogt op het apparaat”, aldus Abrell.
De aanvalsketen kan dan verder worden uitgebreid om persistentie in te stellen, firmware-specifieke encryptiesleutels te openen en het firmware-updatebestand te decoderen. Bovendien kan een hard-coded sleutel die is opgeslagen in het binaire bestand voor wachtwoordencryptie worden gebruikt om de geheimen te extraheren.

“De communicatie tussen de Cosy+ en de Talk2m API verloopt via HTTPS en is beveiligd via wederzijdse TLS (mTLS) authenticatie,” legt Abrell uit. “Als een Cosy+ apparaat is toegewezen aan een Talk2m account, genereert het apparaat een certificate signing request (CSR) met het serienummer als common name (CN) en stuurt het naar de Talk2m API.”
Dit certificaat, dat toegankelijk is via de Talk2m API door het apparaat, wordt gebruikt voor OpenVPN-authenticatie. SySS ontdekte echter dat het uitsluitend vertrouwen op het serienummer van het apparaat door een bedreigingsactor kon worden misbruikt om hun eigen CSR te registreren met een serienummer als een doelapparaat en met succes een VPN-sessie te starten.
“De originele VPN-sessie wordt overschreven en het originele apparaat is dus niet meer toegankelijk”, aldus Abrell. “Als Talk2m-gebruikers verbinding maken met het apparaat via de VPN-clientsoftware Ecatcher, worden ze doorgestuurd naar de aanvaller.”
“Hierdoor kunnen aanvallers verdere aanvallen uitvoeren op de gebruikte client, bijvoorbeeld door toegang te krijgen tot netwerkservices zoals RDP of SMB van de slachtofferclient. Het feit dat de tunnelverbinding zelf niet beperkt is, is gunstig voor deze aanval.”
“Omdat de netwerkcommunicatie naar de aanvaller wordt doorgestuurd, kunnen het originele netwerk en de originele systemen worden nagebootst om de gebruikersinvoer van het slachtoffer, zoals de geüploade PLC-programma’s en dergelijke, te onderscheppen.”
De ontwikkeling vindt plaats nadat Microsoft meerdere fouten in OpenVPN heeft ontdekt die aan elkaar gekoppeld kunnen worden om remote code execution (RCE) en local privilege escalation (LPE) mogelijk te maken.