2min Security

Microsoft: publieke ASP.NET-keys worden misbruikt

Microsoft: publieke ASP.NET-keys worden misbruikt

Microsoft waarschuwt dat online gevonden ASP.NET-machine keys kunnen worden misbruikt voor malware-aanvallen. Het bedrijf geeft ontwikkelaars aanbevelingen om dit soort aanvallen te voorkomen.

Volgens Microsoft gebruiken hackers ongeveer meer dan 3.000 online vindbare beschikbare ASP.NET-keys om malware-aanvallen uit te voeren. Dit gebeurt voornamelijk via zogenoemde ViewState code-injectie-aanvallen.

Deze ASP.NET-keys zijn bedoeld om ViewState te beschermen tegen manipulatie en om het vrijgeven van informatie tegen te gaan. De publieke keys die in code-documentatie en op repository-platforms staan worden soms door ontwikkelaars gebruikt voor hun eigen software.

Kwaadaardig gebruik

Helaas kunnen ook hackers deze keys gebruiken voor code-injectie-aanvallen. Dit doet men vooral om kwaadaardige View States aan te maken, die door ASP.NET Web Forms worden gebruikt voor het controleren van de status van en het bewaren van webpagina’s. Dit kan door een gemanipuleerde message authentication code (MAC) toe te voegen.

Dit stelt hen in staat uiteindelijk de kwaadaardige ViewState-data down te loaden in het werkgeheugen. Hierdoor zijn aanvallers in staat om code uit te voeren op de IIS servers andere malware uit te rollen.

Microsoft is vooral beducht over het gebruik van deze publiek gevonden ASP.NET-keys. Volgens het bedrijf maken deze het aanvalsoppervlak nu veel groter dan voorheen op het darknet beschikbare keys. Bovendien kunnen deze zonder enige aanpassing direct worden toegepast.

Stroomdiagram waarin de aanvalsketen voor ViewState-code-injectie wordt weergegeven, van de kwaadaardige ViewState-aanvaller die de schadelijke ViewState-aanval creëert tot de implementatie van het Godzilla-framework na de exploitatie.

Aanbevelingen van Microsoft

Om het gevaar van de publieke ASP.NET-keys tegen te gaan, komt Microsoft daarom met een aantal belangrijke aanbevelingen voor ontwikkelaars. In de eerste plaats moeten zij op een veilige manier keys genereren en geen online gevonden standaard-keys gebruiken. Ook moeten zij machineKey- en connectionStrings-elementen versleutelen om toegang te verhinderen tot plaintext secrets.

Andere te nemen maatregelen zijn het upgraden van apps voor ASP.NET 4.8 om de Antimalware Scan Interface (AMSI)-features te gebruiken en Windows-servers beter beschermen door maatregelen te nemen die het aanvalsoppervlak moeten verkleinen. Denk daarbij aan onder meer het toepassen van regels als Block Webshell creation for Servers.

Verder geeft Microsoft nog gedetailleerde stappen om ASP.NET-keys te verwijderen of te vervangen in het web.config configuratiebestand. Dit gebeurt door of PowerShell of de IIS manager console te gebruiken. Een laatste oplossing is natuurlijk dat ontwikkelaars key-voorbeelden uit hun publieke documentatie verwijderen om het onveilige gebruik flink af te raden.

Lees ook: Microsoft pakt met PowerShell-script Windows-kwetsbaarheid aan