Schwachstellen
Prototype Pollution
Auch bekannt als: Object.prototype-Pollution, __proto__-Injection
Definition
JavaScript-Schwachstelle, bei der nicht vertrauenswürdiger Input Object.prototype verändert, jedem Objekt Eigenschaften aufzwingt und so Verhalten ändert oder bis zu RCE führt.
Beispiele
- POST {"__proto__":{"isAdmin":true}} an einen JSON-Merge-Endpoint und überall Admin-Rechte erhalten.
- Prototyp vergiften, um Template-Render-Optionen zu ändern und RCE auszulösen.
Verwandte Begriffe
Unsichere Deserialisierung
Schwachstelle, bei der eine Anwendung nicht vertrauenswürdige Daten deserialisiert und Angreifer beliebige Objekte erzeugen — häufig mit Remote-Code-Execution.
Mass Assignment
Schwachstelle, bei der eine Anwendung vom Client übergebene Felder blind auf interne Objekteigenschaften abbildet, sodass Angreifer Felder setzen können, die ihnen nicht gehören sollten.
Input Validation
Input Validation — definition coming soon.
Defekte Zugriffskontrolle
Schwachstellenklasse, in der Autorisierungsregeln fehlen oder falsch durchgesetzt werden, sodass Benutzer Aktionen oder Daten außerhalb ihrer Rechte erreichen.
Supply-Chain-Angriff
Angriff, der einen vertrauenswürdigen Software-, Hardware- oder Dienstleister kompromittiert, um dessen nachgelagerte Kunden zu erreichen.