Mass Assignment
Auch bekannt als:Massenzuweisung · Autobinding
Mass Assignment: Ungefilterte Übernahme von Anfragefeldern in ein Objekt, wodurch geschützte Attribute setzbar werden. Die Schwachstelle ist eine AutorisierungsAuthorizationEntscheidung, welche Aktionen eine authentifizierte Identität ausführen darf.-Lücke im Schreibpfad einer API.
Funktionsweise und Einordnung
Viele Frameworks binden eingehende JSON- oder Formularfelder automatisch an Modellattribute. Bequem wird das zum Risiko, sobald die Menge der bindbaren Felder nicht ausdrücklich begrenzt ist: Der Angreifer ergänzt seinen Request um Felder, die im Formular gar nicht vorkommen — role, is_admin, verified, balance, owner_id — und das Framework übernimmt sie klaglos. Der Angriff braucht keine Umgehung der Authentifizierung, sondern nutzt eine legitime Sitzung mit einem erweiterten Request-Body.
Bedeutung in der Praxis
Die Behebung liegt in einer expliziten Allowlist bindbarer Felder pro Endpunkt, getrennten Datenobjekten für Eingabe und Persistenz und serverseitiger Prüfung sicherheitsrelevanter Attribute unabhängig vom Request. In Tests lohnt es, den Response-Body eines Lesezugriffs als Feldliste für Schreibversuche zu verwenden — Felder, die eine API ausgibt, akzeptiert sie oft auch. Der Befund tritt selten allein auf und sollte gemeinsam mit BOLABroken Object Level AuthorizationFehlende Prüfung, ob der Aufrufer auf das konkret angeforderte Objekt zugreifen darf. geprüft werden.
Verwandte Begriffe
- AuthorizationAuthorizationEntscheidung, welche Aktionen eine authentifizierte Identität ausführen darf.: Entscheidung, welche Aktionen eine authentifizierte Identität ausführen darf.
- Input ValidationInput ValidationPrüfung von Eingabedaten auf Format, Länge, Typ, Wertebereich und Zulässigkeit.: Prüfung von Eingabedaten auf Format, Länge, Typ, Wertebereich und Zulässigkeit.
- API SecurityAPI SecuritySchützt APIs vor Missbrauch, unautorisierten Zugriffen und datenbezogenen Angriffen.: Schützt APIs vor Missbrauch, unautorisierten Zugriffen und datenbezogenen Angriffen.
- Insecure Direct Object ReferenceInsecure Direct Object ReferenceZugriffskontrollfehler, bei dem Objektkennungen unbefugten Zugriff ermöglichen.: Zugriffskontrollfehler, bei dem Objektkennungen unbefugten Zugriff ermöglichen.