Zum Inhalt springen
← Zurück zum Cyberlagebild
Zuletzt aktualisiert 25.08.2026 03:40

PII disclosure with GraphQL native user relations

CVSS –1 Quelle

Beschreibung

Die GraphQL-Schemata von Craft werden pro Benutzergruppe festgelegt, und die "Benutzer"-Abfrage auf oberster Ebene setzt diesen Bereich korrekt durch. Das native Element→User Relations – `author`, `authors`, `uploader`, `draftCreator`, `revisionCreator` – wird jedoch direkt vom Quellelement ohne Benutzergruppenumfangsfilter aufgelöst. Ein token (oder das öffentliche schema), das auf die schreibgeschützte benutzergruppe a ausgerichtet ist, kann daher den benutzernamen, die e-mail und den vollständigen namen eines content-autors oder uploaders lesen - einschließlich des site-administrators. ## Wurzelursache - `src/helpers/Gql.php` `canQueryUsers()` prüft nur, dass *einige* `usergroups.*:read` scope existiert - nicht *welche* Gruppe. - Die Benutzergruppenfilterung wird **nur ** in den Benutzerauflösungsfeldern der obersten Ebene (`src/gql/resolvers/elements/User.php`) und benutzerdefinierten Benutzerfeldern (`src/gql/fields/Users.php`) angewendet. - Die nativen User Relations werden in `src/gql/ElementQueryConditionBuilder.php` (L 292) als "special eager-load nodes" behandelt und erhalten niemals `getEagerLoadingGqlConditions()` (was nur auf benutzerdefinierte Inhaltsfelder angewendet wird, L 456). Sie lösen sich direkt aus `$source->author` in `src/gql/base/ObjectType.php` (L 72), ohne Umfangseinschränkung. Ein GraphQL-Token, das für einen engen Zweck gedacht ist - z. B. ein Headless-Frontend oder eine Partnerintegration, die Blog-Inhalte und eine Benutzergruppe lesen soll - kann die E-Mail-Adressen, Benutzernamen und vollständigen Namen jedes Inhaltsautors und Uploaders auf der gesamten Website lesen. ID des Berichts: 1543

HerstellerPixel & Tonic
ProduktCraft CMS
ProduktfamilieKeine Angaben
Betroffene Versionen< 5.11
Behobene Versionen5.11

Quellen & weiterführende Informationen

Hier werden ausschließlich tatsächlich zu dieser Schwachstelle gespeicherte Quellenbelege angezeigt.

Was ist zur Behebung zu tun?

Auf eine behobene Version aktualisieren: 5.11.

PrioritätGrün
EinordnungPlanbar behandeln und überwachen.

Empfohlene Schritte

  • Betroffene Systeme identifizieren: Pixel & Tonic Craft CMS.
  • Exposition prüfen: Internet-Erreichbarkeit, Admin-Oberflächen, VPN, Mail- oder Webdienste.
  • Update/Rollout auf behobene Version vorbereiten und priorisiert einspielen.
  • Nacharbeiten dokumentieren: betroffene Assets, Maßnahme, Zeitpunkt, Restrestrisiko.

Übergangsmaßnahmen

  • Zugriff auf betroffene Dienste auf vertrauenswürdige Netze einschränken.
  • WAF/IDS/EDR-Regeln und Hersteller-IOCs aktivieren, sofern verfügbar.
  • Nicht benötigte Funktionen, Plugins oder Dienste temporär deaktivieren.
  • Administrative Zugänge besonders absichern: MFA, Passwortrotation, Session-Invalidierung.